Post on 19-Apr-2015
Lógica de Predicados
Tableaux semânticos
Sistema de Tableaux Semânticos
Alfabeto da Lógica de Predicados Conjunto de fórmulas da Lógica de
Predicados Conjunto de regras de dedução (ou
regras de inferência)
R1=H^G R2=HvG R3=HG H
G H G H G
R4=HG R5=H R6=(H^G)
HH^G H^G H G
R7=(HvG) R8=(HG) R9=(HG)H HG G H^G
H^G
Regras para quantificadores
R10=(x)H R11= (x)H (x)H (x)H
R12=(x)H R13= (x)HH(t) H(t)
onde t é novo, onde t é qualquerque não apareceuna prova ainda
R10 e 12 devem ter preferência! Por quê???
Características do Método de Tableau Semântico
Baseado em árvores Ramos são decomposições de H em
subfórmulas ou seja, possibilidades de
interpretações da fórmula Cada ramo representa uma ou mais
interpretações Adequado para implementação!
Idéia Básica de Tableaux Semânticos Concebido por E. Beth (1954) e
Jaako Hintikka (1955) Cada interpretação representa um
mundo possível Interpretação – caminho da raiz da
árvore a uma folha “Semântica dos Mundos Possíveis” Buscam admissões de
interpretações
Características do Método de Tableau Semântico (cont.)
Sistema de refutação Prova por negação ou absurdo Para provar H supõe-se
inicialmente, por absurdo, H As deduções desta fórmula levam a
um fato contraditório (ou absurdo) Então H é verdade!!
Construção de um Tableau
Tableau semântico para o conjunto de fórmulas {(AvB),(A^ B)}
1. AvB 2.A^ B
3. A B R2, 1. 4. A A R1, 2. 5. B B R1, 2.
Construção do mesmo Tableau mais curto
Tableau semântico para o conjunto de fórmulas {(AvB),(A^ B)}
1. AvB 2.A^ B 3. A R1, 2. 4. B R1, 2.
5. A B R2, 1.
Heurística para aplicação de regras para tableau Advindas do sistema de tableau
analítico “First Order Logic”, R. Smullyan
(1970)
Adiar a bifurcação Aplicar primeiro as regras que não
bifurquem Árvore menor => menos
interpretações a serem analisadas
Ramo aberto e fechado
Ramo fechado – contém uma fórmula B e sua negação B, ou o símbolo de verdade false
Tableau fechado – não contém ramos abertos
Prova e Teorema em Tableaux Semânticos
Uma prova de H usando tableaux semânticos é ... Um tableau fechado associado a... H! Neste caso, H é um teorema do
sistema de tableaux semânticos
Exemplo de Prova em Tableaux Semânticos
Como provar H=((PQ)^(PQ)^(P))??
Gerar um tableau fechado para H: (((PQ)^(PQ)^(P)))
1. (((PQ)^(PQ)^(P))) 2. (PQ)^(PQ)^(P) R5, 1. 3. PQ R1, 2. 4. PQ R1, 2. 5. P R1, 2. 6. P R5, 5.
7. PQ R3, 3.fechado 8. P^Q P^Q R9, 4. 9. P P R1, 8. 10. Q Q R1, 8.
fechado fechado
1. ((PQ)vP)) 2. (PQ) 3. P 4. P
5. P^Q P^Q 6. P P 7. Q Q
aberto fechado
Conseqüência Lógica em Tableaux Semânticos Dada uma fórmula H e um conjunto de hipóteses
={H1,H2,...Hn}, então H é conseqüência lógica em
tableaux semânticos de se existe uma prova, usando
tableaux semânticos de (H1^H2^...^Hn) H
Notação de Conseqüência Lógica em Tableaux Semânticos
Dada uma fórmula H, se H é conseqüência lógica de um conjunto de hipóteses ={H1,H2,...Hn} em tableaux semânticos, diz-se que: ├ H ou {H1,H2,...Hn}├ H
Exemplo de Conseqüência Lógica em Tableaux Semânticos
Guga é determinado Guga é inteligente Se Guga é determinado, ele não é um
perdedor Guga é um atleta se é amante do tênis Guga é amante do tênis se é inteligente
“Guga não é um perdedor” é conseqüência lógica das afirmações acima??
Solução
Provar H=(P^Q^((P^R)P1)^(Q1R)^(QQ1)) P1
Mostrando que H é absurdo (P^Q^((P^R)P1)^(Q1R)^(QQ1))
P1) gera um tableau fechado?
Exercícios de Formalização
A proposta de auxílio está no correio. Se os árbitros a receberem até sexta-feira, eles a analisarão. Portanto, eles a analisarão porque se a proposta estiver no correio, eles a receberão até sexta-feira. (C, S, A)
Solução A proposta de auxílio está no correio. Se
os árbitros a receberem até sexta-feira, eles a analisarão. Portanto, eles a analisarão porque se a proposta estiver no correio, eles a receberão até sexta-feira.
C: A proposta de auxílio está no correio.S: Os árbitros recebem a proposta até Sexta-feira.A: Os árbitros analisarão a proposta.
{C, SA, CS} |-- A
Exercício
Hoje é Sábado ou Domingo. Se hoje é Sábado então é um fim de semana. Se hoje é Domingo então é um fim de semana. Portanto, hoje é um fim de semana.
Exercício Se hoje é Quinta-feira, então
amanhã será sexta-feira. Se amanhã for sexta-feira, então depois de amanhã será sábado. Conseqüentemente, se hoje for quinta-feira, então depois de amanhã será sábado.
Exemplo 1:Construção de um Tableau
H=(x)(y)p(x,y) p(a,a) é tautologia? Tableau sobre H:
0. ((x)(y)p(x,y) p(a,a)) 1. (x)(y)p(x,y) R8,0 2. p(a,a) R8,0 3. (y)p(a,y) R13,1 com t=a 4. p(a,a) R13,3 com t=a fechado
Exemplo 2:Construção de um Tableau
H=(x)p(x) (y)p(y) é tautologia? Tableau sobre H:
0. ((x)p(x) (y)p(y)) 1. (x)p(x) R8,0 2. (y)p(y) R8,0 3. (y)p(y) R11,2 4. p(a) R13,3 com t=a 4. p(a) R13,1 com t=a fechado
Exemplo 3:Construção de um Tableau
W= (x)(Bom(x) Alegria) (x) (Bom(x) Alegria)
Tableau sobre W???
0. ((x)(Bom(x) Alegria) (x) (Bom(x) Alegria))
1. (x)(Bom(x) Alegria) R8,0 2. (x) (Bom(x) Alegria)) R8,0 3. (x)(Bom(x) Alegria) R5,1 4. (x)(Bom(x) Alegria) R11,2 5. (x)Bom(x) R8,4 6. Alegria R8,4 7. Bom(a) R13, t=a
8. (x)Bom(x) Alegria R3,3 9. Bom(a) fechado R13,8, t=a fechado
Exercícios
J=((x)p(x)^(x)q(x)) (x)(p(x)^q(x))
P=(x)(p(x)^q(x)) (x)p(x)^ (x)q(x))
Q=(x)(p(x) (y)(p(y))
Exemplo de prova M=(x)(y)p(x,y) p(a,a) 0. ((x)(y)p(x,y) p(a,a)) 1. (x)(y)p(x,y) R8,0 2. p(a,a)) R8,0 3. (y)p(t1,y) R12,1, t1 novo, t1=a 4. p(t1,t2) R12,1, t2 novo, t2=a e t1 Fechado???
Se R12 fosse usada com t1 e t2=a (errado!), o tableau seria fechado
Exemplo 2 de prova
H=(x)p(x)^q(x) (x)p(x) é tautologia?
Fazer o Tableau sobre H
Exemplo 2 de prova (cont.)
H=(x)p(x)^q(x) (x)p(x) 0. ((x)p(x)^q(x) (x)p(x)) 1. (x)p(x)^q(x) R8,0 2. (y)p(x) R8,0 3. p(t) R12,2, t novo 4. p(t)^q(t) R13,1, t qualquer 4. p(t) R1,4 5. q(t) R1,4 6. Fechado - Que alegria
Mais exercícios... Fumo!! E1=(x)(p(x) q(x)) E2=(x)p((x) (x)q(x)) E1 E2??
G1=(x)(p(x) q(x)) G2=(x)p((x) (x)q(x)) G1 G2?? G2 G1??
Conseqüência Lógica em Tableaux Semânticos
Dada uma fórmula H e um conjunto de hipóteses
={H1,H2,...Hn}, então H é conseqüência lógica em
tableaux semânticos de se existe uma prova, usando tableaux
semânticos de (H1^H2^...^Hn) H Porém em Lógica de 1ª. Ordem, isto é
raro...
Notação de Conseqüência Lógica em Tableaux Semânticos
Dada uma fórmula H, se H é conseqüência lógica de um conjunto de hipóteses ={H1,H2,...Hn} em tableaux semânticos, diz-se que: ├ H ou {H1,H2,...Hn}├ H ├{H1,H2,...Hn,H}
Queremos provar, por negação ao absurdo, que U H é insatisfatível U├ Falso
Exercício de Cons. Lógica {(x)(Homem(x) Mortal(x)),
Homem(Sócrates)} ├ Mortal(Sócrates)? Prova por tableaux de H =(x)(Homem(x) Mortal(x))^
Homem(Sócrates)) Mortal(Sócrates) H= ((x)(Homem(x) Mortal(x))^
Homem(Sócrates)) Mortal(Sócrates))
Exercício de Cons. Lógica (cont.)
H= ((x)(Homem(x) Mortal(x))^ Homem(Sócrates)) Mortal(Sócrates))
Por R8, queremos um tableau fechado que começa SEMPRE com as premissas e negação dõ conseqüente
1. (x)(Homem(x) Mortal(x))^ Homem(Sócrates)) R3,0
2. (x)(Homem(x) Mortal(x)) R1,1 3. Homem(Sócrates) R1,1 4. Mortal(Sócrates) R3,0
Portanto se eu gerar o conseqüente (Mortal(Sócrates)) diretamente, eu já tenho uma contradição!
Podem (e devem) usadas outras contradições
Exercício de Cons. Lógica (cont.)
1. (x)(Homem(x) Mortal(x))^ Homem(Sócrates))
2. (x)(Homem(x) Mortal(x)) 3. Homem(Sócrates) 4. Mortal(Sócrates) 5. Homem(Sócrates) Mortal(Sócrates)
6. Homem(Sócrates) Mortal(Sócrates) Fechado Fechado
E para a implementação??
Tem um probleminha...
0. ((x)(Bom(x) Alegria) (x) (Bom(x) Alegria)) 1. (x)(Bom(x) Alegria) R8,0 2. (x) (Bom(x) Alegria)) R8,0 3. (x)(Bom(x) Alegria) R5,1 4. (x)(Bom(x) Alegria) R11,2 5. (x)Bom(x) R8,4 6. Alegria R8,4 7. Bom(a) R13, t=a
8. (x)Bom(x) Alegria R3,3 9. Bom(a1) fechado R13,8, t=a
10. Bom(a2) .... E nunca fazer x=a
Solução Tableaux semânticos podem ser
usados, mas Podem não ser decidíveis (por quê?) ocupam muita memória, para gerar
as instanciações possíveis Aguardem os próximos capítulos...
Unificação!!