Sei sulla pagina 1di 41

INF2217 – Lógica e Especificação

Lógica Sentencial

Marco A. Casanova

17/03/2011 (c) MAC - PUC-Rio 1


Referências

• Capítulo 1 de [CGF]

17/03/2011 (c) MAC - PUC-Rio 2


Introdução

• Lógica Sentencial (ou Cálculo Proposicional)


– captura a estrutura elementar do discurso matemático
• significado dos conectivos lógicos
(“não”, “e”, “ou”, “então”,...)

– formalizada através da ...


• definição da linguagem (sintaxe e semântica)
• caracterização dos princípios lógicos
que governam os conectivos

17/03/2011 (c) MAC - PUC-Rio 3


Linguagens Proposicionais - Sintaxe

• Alfabeto proposicional:
– símbolos lógicos:
• pontuação: (,)
• conectivos: ¬ (negação)
 (conjunção)
 (disjunção)
 (implicação) também se usa “→”
 (bicondicional) também se usa “”

– símbolos não-lógicos:
• conjunto enumerável de símbolos proposicionais
diferentes dos símbolos lógicos

17/03/2011 (c) MAC - PUC-Rio 4


Linguagens Proposicionais - Sintaxe

• Fórmulas (proposicionais) sobre um alfabeto A:


– menor conjunto de cadeias de A tal que:
• todo símbolo proposicional de A é uma fórmula de A
• se P e Q são fórmulas de A então
(¬P)
(P  Q)
(P  Q)
(P  Q)
(P  Q)
também são fórmulas de A

17/03/2011 (c) MAC - PUC-Rio 5


Linguagens Proposicionais - Sintaxe

• Linguagem proposicional sobre um alfabeto A:


– conjunto de fórmulas proposicionais sobre A

• Exemplos de fórmulas:

((¬A)  B) ou abreviadamente ¬A  B
((A  B)  ((¬C)  D)) ou abreviadamente A  B  ¬C  D
(A  (B  C)) ou abreviadamente A  B  C

17/03/2011 (c) MAC - PUC-Rio 6


Linguagens Proposicionais - Sintaxe

• Exemplo:
– Afirmação:
“Suponhamos que Sócrates está em tal situação que ele
estaria disposto a visitar Platão, só se Platão estivesse
disposto a visitá-lo; e que Platão está em tal situação que
ele não estaria disposto a visitar Sócrates, se Sócrates
estivesse disposto a visitá-lo, mas estaria disposto a visitar
Sócrates, se Sócrates não estivesse disposto a visitá-lo”
– Pergunta:
“Sócrates está disposto a visitar Platão ou não?”

17/03/2011 (c) MAC - PUC-Rio 7


Linguagens Proposicionais - Sintaxe

• Exemplo (cont.):
– alfabeto:
A = “Sócrates está disposto a visitar Platão”
B = “Platão está disposto a visitar Sócrates”

– formalização da afirmação:
“Sócrates está disposto a visitar Platão, se Platão está disposto a visitar Sócrates”
(B → A)
“Platão não está disposto a visitar Sócrates, se Sócrates está disposto a visitar Platão”
(A → ¬B)
“Platão está disposto a visitar Sócrates, se Sócrates não está disposto a visitar Platão”
(¬A → B)
Sócrates: (B → A)
Platão: (A → ¬B) ^ (¬A → B)

17/03/2011 (c) MAC - PUC-Rio 8


Linguagens Proposicionais - Sintaxe

• Exemplo (cont.):

– formalização da afirmação:
Situação de Sócrates: (B → A)
Situação de Platão: (A → ¬B) ^ (¬A → B)
Afirmação (como fórmula): (B → A) ^ (A → ¬B) ^ (¬A → B)

– formalização da pergunta:
Qual fórmula é sempre verdadeira, independentemente do significado de A e B?
((B → A) ^ (A → ¬B) ^ (¬A → B)) → A
ou
((B → A) ^ (A → ¬B) ^ (¬A → B)) → ¬A

17/03/2011 (c) MAC - PUC-Rio 9


Linguagens Proposicionais - Sintaxe

• Exemplo (cont.):

– formalização da afirmação:
Situação de Sócrates: (B → A)
Situação de Platão: (A → ¬B) ^ (¬A → B)
Afirmação (como teoria): { (B → A) , (A → ¬B) ^ (¬A → B) }

– formalização da pergunta:
Qual fórmula é conseqüência lógica da teoria?
{ (B → A) , (A → ¬B) ^ (¬A → B) } |= A
ou
{ (B → A) , (A → ¬B) ^ (¬A → B) } |= ¬A

17/03/2011 (c) MAC - PUC-Rio 10


Linguagens Proposicionais - Sintaxe

• Exemplo:

– (ver exemplo dos sofistas na pg 18 de [CGF])

17/03/2011 (c) MAC - PUC-Rio 11


Linguagens Proposicionais - Semântica

• Atribuição de valores-verdade:
– seja A um alfabeto com conj. de símbolos proposicionais P
– atribuição de valores-verdades para A:
v: P -> {F,V}

17/03/2011 (c) MAC - PUC-Rio 12


Linguagens Proposicionais - Semântica

• Função de avaliação induzida por v:

17/03/2011 (c) MAC - PUC-Rio 13


Linguagens Proposicionais - Semântica

• Função de avaliação induzida por v:

17/03/2011 (c) MAC - PUC-Rio 14


Linguagens Proposicionais - Semântica

17/03/2011 (c) MAC - PUC-Rio 15


Linguagens Proposicionais - Semântica

• Tautologias:

17/03/2011 (c) MAC - PUC-Rio 16


Método da Tabela-Verdade

• Método da tabela-verdade:
– método sistemático para decidir implicação lógica
– observação básica:
• em um conjunto finito de fórmulas,
ocorre um número finito de símbolos proposicionais

• há um número finito de atribuições de valores verdade distintas


para estes símbolos proposicionais

17/03/2011 (c) MAC - PUC-Rio 17


Método da Tabela-Verdade

• Exemplo:
– decidir se P |= Q através do método da tabela-verdade, onde
P é a fórmula A → (B →C) e Q é a fórmula (A → B) → (A → C)

17/03/2011 (c) MAC - PUC-Rio 18


Método da Tabela-Verdade

• Exemplo:

17/03/2011 (c) MAC - PUC-Rio 19


Método dos Tableaux Analíticos
http://everything2.com/index.pl?node=propositional%20calculus

• Tableau para um conjunto de fórmulas P:


– Árvore construída da seguinte forma:
• nós são conjuntos de fórmulas proposicionais
• raiz contém as fórmulas em P
• os filhos de um nó são gerados por regras que refletem
a tabela-verdade dos conectivos
– Regras decompõem fórmulas em fórmulas mais simples

– Ramo está fechado quando contém uma fórmula e


a sua negação; ramo está aberto em caso contrário
– Ramo está completo quando contém apenas fórmulas
que não podem ser decompostas

17/03/2011 (c) MAC - PUC-Rio 20


Método dos Tableaux Analíticos

[A ^ B] [A → B] ¬¬A
| ____|____ |
A | | A
B ¬A B

¬[A ^ B] ¬[A → B]
____|____ |
| | A
¬A ¬B ¬B

[A v B] [A ↔ B]
____|____ ____|____
| | | |
A B A ¬A
B ¬B

¬[A v B] ¬[A ↔ B]
| ____|____
¬A | |
¬B A ¬A
¬B B

17/03/2011 (c) MAC - PUC-Rio 21


Método dos Tableaux Analíticos
http://everything2.com/index.pl?node=propositional%20calculus

• Teorema (consistência):
Se existe um tableau para P  {¬Q} tal que todos os seus
ramos estão fechados,
então P |= Q

• Teorema (completude):
Se P |= Q então todo tableau completo para P  {¬Q}
possui todos os seus ramos fechados.

17/03/2011 (c) MAC - PUC-Rio 22


Método dos Tableaux Analíticos

• Exemplo (Sócrates x Platão): (B → A) , (A → ¬B) ^ (¬A → B) |= A


1. (B → A)
2. (A → ¬B)
3. (¬A → B)
4. ¬A

5. ¬B . de 1 6. A . de 1
x . de 4, 6

7. ¬A . de 2 8. ¬B . de 2

9. ¬¬A . de 3 10. B . de 3 12. ¬¬A . de 3 13. B . de 3


11. A . de 9 x . de 5, 10 14. A . de 9 x . de 5, 10
x . de 4, 11 x . de 4, 14

17/03/2011 (c) MAC - PUC-Rio 23


Método dos Tableaux Analíticos

• Exercício (Sócrates x Platão): (B → A) , (A → ¬B) ^ (¬A → B) |= A

– Construa um segundo tableau para o mesmo problema.

17/03/2011 (c) MAC - PUC-Rio 24


Método dos Tableaux Analíticos

• Exemplo: (P ↔ (Q ^ R)) , (P → (¬Q v S)) |= ((Q ^ R) → S)


1. (P ↔ (Q ^ R))
2. (P → (¬Q v S))
3. ¬((Q ^ R) → S)
4. (Q ^ R) . de 3
5. ¬S . de 3
6. Q . de 4
7. R . de 4

8. P . de 1 11. ¬P . de 1
9. (Q ^ R) . de 1 12. ¬(Q ^ R) . de 1
10. Q . de 9 x . de 4, 12
11. R . de 9

12. ¬P . de 2 13. (¬Q v S) . de 2


x . de 8, 12
14. ¬Q . de 13 15. S . de 13
x . de 6, 14 x . de 5, 15

17/03/2011 (c) MAC - PUC-Rio 25


Método dos Tableaux Analíticos

Exemplo:
1. John likes tea if he is English.
2. John is English unless his father is Scottish.
3. John's father is English, but John does not like tea.

17/03/2011 (c) MAC - PUC-Rio 26


Método dos Tableaux Analíticos

Exemplo: Formalização:

1. John likes tea if he is English. 1. [A → B]


2. John is English unless his father is Scottish. 2. [A v D]
3. John's father is English, but John does not 3. [C ^ ¬B]
like tea.

Obs: “ unless q is true, p is true ” A: John is English


é equivalente a B: John likes tea
“ if q is not true, p is true ”
é formalizado como C: John's father is English
“ ~q => p ” D: John's father is Scottish
é equivalente a
“q v p”

17/03/2011 (c) MAC - PUC-Rio 27


Método dos Tableaux Analíticos

Tableau para o exemplo:


[A → B]
[A v D]
[C ^ ¬B]
|
_____|_____
| |
A D
C C
¬B ¬B
___|___ ___|___
| | | |
¬A B ¬A B
Modelo: ¬A, ¬B, C, D
¬A: John is not English C: John's father is English
¬B: John does not like tea D: John's father is Scottish

17/03/2011 (c) MAC - PUC-Rio 28


Método da Resolução
[BL] Seção 4.1

• Forma normal conjuntiva (CNF)


– conjunção de disjunções de símbolos proposicionais,
negados ou não

• Exemplo: (P ↔ (Q ^ R))

(P → (Q ^ R)) ^ ((Q ^ R) → P)

(¬P v (Q ^ R)) ^ (¬(Q ^ R) v P)

((¬P v Q) ^ (¬P v R)) ^ ((¬Q v ¬R) v P)

(¬P v Q) ^ (¬P v R) ^ (¬Q v ¬R v P)

17/03/2011 (c) MAC - PUC-Rio 29


Método da Resolução

• Notação clausal:
– notação simplificada para uma fórmula em CNF
– forma clausal = conjunto finito de cláusulas
– cláusula = conjunto finito de literais
– literal = símbolo proposicional ou a sua negação

• Exemplo:
fórmula: (P ↔ (Q ^ R))
fórmula em CNF: (¬P v Q) ^ (¬P v R) ^ (¬Q v ¬R v P)
forma clausal: { {¬P , Q } , { ¬P , R } , {¬Q , ¬R , P } }

17/03/2011 (c) MAC - PUC-Rio 30


Método da Resolução

• Notação clausal:

–p denota o literal complementar de p

– denota a cláusula vazia

17/03/2011 (c) MAC - PUC-Rio 31


Método da Resolução

• Exemplos:
fórmula: (P ↔ (Q ^ R))
CNF: (¬P v Q) ^ (¬P v R) ^ (¬Q v ¬R v P)
forma clausal: { {¬P , Q } , { ¬P , R } , {¬Q , ¬R , P } }

fórmula: (P → (¬Q v S))


CNF: (¬P v (¬Q v S))
formal clausal: { {¬P , ¬Q , S } }

fórmula: ¬ ((Q ^ R) → S)
CNF: ((Q ^ R) ^ ¬S)
forma clausal: { {Q}, {R}, {¬S} }

17/03/2011 (c) MAC - PUC-Rio 32


Método da Resolução

• Exemplo:

Pergunta: { (P ↔ (¬Q ^ R)) , (P → (¬Q v S)) } |= ((Q ^ R) → S)

Pergunta: { (P ↔ (Q ^ R)) , (P → (¬Q v S)) , ¬((Q ^ R) → S) }


é insatisfatível?

Pergunta: { {¬P , Q } , { ¬P , R } , { ¬Q , ¬R , P } , {¬P , ¬Q , S } , {Q}, {R}, {¬S} }


é insatisfatível?

17/03/2011 (c) MAC - PUC-Rio 33


Método da Resolução

• Resolução (binária):
– dada uma cláusula C da forma C1  { p }
e uma cláusula C’ da forma C2  { p },
infira R = C1  C2, o resolvente de C e C’ com respeito a p

• Exemplo:
– cláusulas: { ¬P , Q } e { ¬Q , ¬R , P }
– resolvente c/ respeito a Q: { ¬P , ¬R , P }

• Exemplo:
– cláusulas: { ¬P , Q } e { ¬Q , ¬R , P }
– resolvente c/ respeito a P: { Q , ¬Q, ¬R }

17/03/2011 (c) MAC - PUC-Rio 34


Método da Resolução

• Refutação de um conjunto de cláusulas P por resolução:

– seqüência finita de cláusulas C1 ,..., Cn tal que


• Cr pertence a P ou é inferida por resolução de duas cláusulas
que ocorrem antes de Cr na seqüência
• a seqüência termina na cláusula vazia

• Teorema:
– P é insatisfatível
se e somente se
existe uma refutação de P por resolução

17/03/2011 (c) MAC - PUC-Rio 35


Método da Resolução

• Exemplo (Sócrates x Platão):

Pergunta: (B → A) , (A → ¬B) ^ (¬A → B) |= A

Pergunta: { {¬B, A} , {¬A , ¬B}, {A , B}, {¬A} } é insatisfatível?

Resposta: Sim

Refutação: 1. ¬B , A ¬A A, B
2. ¬A , ¬B
3. A,B
4. ¬A B ¬B , A
5. B .4e3
6. A .5e1
7. .6e4 A ¬A

17/03/2011 (c) MAC - PUC-Rio 36


Método da Resolução

• Exemplo:
Pergunta: { {¬P , Q } , { ¬P , R } , { ¬Q , ¬R , P } , {¬P , ¬Q , S } , {Q}, {R}, {¬S} }
é insatisfatível?
¬S ¬P , ¬Q , S
Resposta: Sim
Refutação: 1. ¬P , Q ¬P , ¬Q Q
2. ¬P , R
3. ¬Q , ¬R , P
4. ¬P , ¬Q , S ¬P ¬Q , ¬R , P
5. Q
6. R
7. ¬S ¬Q , ¬R R
8. ¬P , ¬Q .7e4
9. ¬P .8e5
10. ¬Q , ¬R .9e3 ¬Q
11. ¬Q . 10 e 6
12. . 11 e 5

17/03/2011 (c) MAC - PUC-Rio 37


Um Sistema Axiomático

• Sistema Axiomático
Axiomas: tautologias
Regra de inferência: “modus ponens” (ou “MP”)
A, A → B
B

• Dedução por modus pones:


R pode ser deduzida de P e Q por modus pones sse
Q é da forma P → R

17/03/2011 (c) MAC - PUC-Rio 38


Um Sistema Axiomático

• Dedução
Uma dedução de uma fórmula Q a partir de um conjunto de
fórmulas P é uma seqüência R1,...,Rn tal que
Rn = Q

para todo i em [1,n],


Ri pertence a P, ou
Ri é uma tautologia, ou
Ri pode ser deduzida de Rj e Rk por modus pones, onde j, k < i

17/03/2011 (c) MAC - PUC-Rio 39


Um Sistema Axiomático

• Teorema
Uma fórmula Q é um teorema de conjunto de fórmulas P,
denotado P |- Q, sse existe uma dedução de Q a partir de P

• (Meta)Teorema
Uma fórmula Q é um teorema de conjunto de fórmulas P sse
Q é conseqüência lógica de P
ou seja,
P |- Q sse P |= Q

17/03/2011 (c) MAC - PUC-Rio 40


Um Sistema Axiomático

• Exercício:
– mostre que P |- A , onde P = { (B→A) , ((A→¬B) ^ (¬A→B)) }
– Solução:
1. (B → A) em P
2. ((A → ¬B) ^ (¬A → B)) em P
3. ((A → ¬B) ^ (¬A → B)) → (¬A → B) tautologia
4. (¬A → B) por MP e 2, 3
5. (B → A) → ( (¬A → B) → A ) tautologia
6. (¬A → B) → A por MP e 1, 5
7. A por MP e 4, 6

17/03/2011 (c) MAC - PUC-Rio 41

Potrebbero piacerti anche