Sunteți pe pagina 1din 19

INF2217 – Lógica e Especificação

Lógica Sentencial

Marco A. Casanova

6/8/2008 (c) MAC / KKB - PUC-Rio 1

Referências

• Capítulo 1 de [CGF]

6/8/2008 (c) MAC / KKB - PUC-Rio 2

1
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

6/8/2008 (c) MAC / KKB - PUC-Rio 3

Linguagens Proposicionais - Sintaxe

• Alfabeto proposicional:
– símbolos lógicos:
• pontuação: (,)
• conectivos: ¬ (negação)
^ (conjunção)
v (disjunção)
→ (implicação) também se usa “⇒”
↔ (bicondicional) também se usa “⇔” ou “≡”

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

6/8/2008 (c) MAC / KKB - PUC-Rio 4

2
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 v Q)
também são fórmulas de A

6/8/2008 (c) MAC / KKB - 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) v D)) ou abreviadamente A ^ B → ¬C v D
(A → (B → C)) ou abreviadamente A → B → C

6/8/2008 (c) MAC / KKB - PUC-Rio 6

3
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?”

6/8/2008 (c) MAC / KKB - 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)

6/8/2008 (c) MAC / KKB - PUC-Rio 8

4
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

6/8/2008 (c) MAC / KKB - 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

6/8/2008 (c) MAC / KKB - PUC-Rio 10

5
Linguagens Proposicionais - Sintaxe

• Exemplo:

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

6/8/2008 (c) MAC / KKB - 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}

6/8/2008 (c) MAC / KKB - PUC-Rio 12

6
Linguagens Proposicionais - Semântica

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

6/8/2008 (c) MAC / KKB - PUC-Rio 13

Linguagens Proposicionais - Semântica

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

6/8/2008 (c) MAC / KKB - PUC-Rio 14

7
Linguagens Proposicionais - Semântica

6/8/2008 (c) MAC / KKB - PUC-Rio 15

Linguagens Proposicionais - Semântica

• Tautologias:

6/8/2008 (c) MAC / KKB - PUC-Rio 16

8
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

6/8/2008 (c) MAC / KKB - 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)

6/8/2008 (c) MAC / KKB - PUC-Rio 18

9
Método da Tabela-Verdade

• Exemplo:

6/8/2008 (c) MAC / KKB - 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
• nós são conjuntos de fórmulas proposicionais
• raiz contém as fórmulas em P
• representa a decomposição das fórmulas em fórmulas mais simples
• os filhos de um nó são gerados por
regras que refletem a tabela-verdade dos conectivos

– 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

6/8/2008 (c) MAC / KKB - PUC-Rio 20

10
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
6/8/2008 (c) MAC / KKB - 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.

6/8/2008 (c) MAC / KKB - PUC-Rio 22

11
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

6/8/2008 (c) MAC / KKB - 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.

6/8/2008 (c) MAC / KKB - PUC-Rio 24

12
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

6/8/2008 (c) MAC / KKB - 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.

6/8/2008 (c) MAC / KKB - PUC-Rio 26

13
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.

A: John is English
B: John likes tea
C: John's father is English
D: John's father is Scottish

6/8/2008 (c) MAC / KKB - 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

6/8/2008 (c) MAC / KKB - PUC-Rio 28

14
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)

6/8/2008 (c) MAC / KKB - 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 } }

6/8/2008 (c) MAC / KKB - PUC-Rio 30

15
Método da Resolução

• Notação clausal:

–p denota o literal complementar de p

–! denota a cláusula vazia

6/8/2008 (c) MAC / KKB - 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} }

6/8/2008 (c) MAC / KKB - PUC-Rio 32

16
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?

6/8/2008 (c) MAC / KKB - 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 }

6/8/2008 (c) MAC / KKB - PUC-Rio 34

17
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

6/8/2008 (c) MAC / KKB - 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

6/8/2008 (c) MAC / KKB - PUC-Rio 36

18
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

6/8/2008 (c) MAC / KKB - PUC-Rio 37

19

S-ar putea să vă placă și