A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

Lógica para Computação

Apresentações semelhantes


Apresentação em tema: "Lógica para Computação"— Transcrição da apresentação:

1 Lógica para Computação
Prof. Celso Antônio Alves Kaestner, Dr. Eng.

2 (B1  B2  …  Bn )  ( A1  A2 … Am )
Algoritmo de Wang É um algoritmo que permite verificar a validade de um seqüente do tipo B1, B2 … Bn |- A1, A2 … Am Equivale ao teorema (B1  B2  …  Bn )  ( A1  A2 … Am ) O seqüente é representado por (B1, B2 … Bn ) |-w (A1, A2 … Am) 26/03/2017 Prof. Celso A A Kaestner

3 Algoritmo de Wang São aplicadas sucessivamente as regras:
(…,X,…)|-w(…) torna-se (…)|-w(…,X,…) e (…)|-w(…,X,…) torna-se (…,X,…)|-w(…); (…,XY,…)|-w(…) torna-se (…,X,Y,…)|-w(…) e (…)|-w(…,XY,…) torna-se (…)|-w(…,X,Y,…); (…,XY,…)|-w(…) torna-se (…,X,…)|-w(…) e (…,Y,…)|-w(…); (…) |-w(…,XY,…) torna-se (…)|-w(…,X,…) e (…)|-w(…,Y,…); 26/03/2017 Prof. Celso A A Kaestner

4 Algoritmo de Wang (…)|-w(…,XY,…) torna-se
(…)|-w(…,XY,…) e (…,XY,…) |-w(…) torna-se (… XY,…) |-w (…); (…,XY,…)|-w(…) torna-se (…,(XY)(YX),…)|-w(…) e (…)|-w(…,XY,…) torna-se (…)|-w(…,(XY)(YX),…); (…,X,…)|-w (…,X,…) torna-se T (true). 26/03/2017 Prof. Celso A A Kaestner

5 Algoritmo de Wang (p  q), (q  r), r |-w p
(p  q),(q  r), r |-w p (R5 x 2) (p  q),(q  r) |-w p,r (R1) p, (q  r) |-w p, r q,(q  r) |-w p,r (R3) X q, q |-w p,r q, r |-w p,r (R3) (R7) q |-w p,r, q X (R3) X (R7) (R7) 26/03/2017 Prof. Celso A A Kaestner

6 Algoritmo de Wang Prática do uso do algoritmo de Wang utilizando o software em Lisp. 26/03/2017 Prof. Celso A A Kaestner

7 Formas Normais Forma normal conjuntiva (fnc):
Literal: variável proposicional ou sua negação; Cláusula: disjunção de literais; Uma fbf está na fnc se é uma conjunção de cláusulas; Dada uma fbf A sempre é possível se encontrar outra fbf B na fnc tal que A ≡ B. 26/03/2017 Prof. Celso A A Kaestner

8 Formas Normais Obtenção da fnc: 1. Redefinir ↔ em função de →:
(A ↔B) ≡ (A →B)  (B →A) 2. Redefinir → em função de  e  : (A → B) ≡ ( A  B) 3. Colocar os  “para dentro”, de forma a obter os literais, usando as leis de De Morgan: (AB )  (AB ) e (AB )  (A B) 26/03/2017 Prof. Celso A A Kaestner

9 Formas Normais 4. Redistribuir os conectivos  e  usando a distributividade, associatividade e comutatividade destes conectivos: A  (B  C)  (A  B)(A  C), A  (B  C)  ( A  B)  (A  C), A  (B  C)  ( A  B)  C, A  (B  C)  ( A  B)  C, A  B  B  A, A  B  B  A. 26/03/2017 Prof. Celso A A Kaestner

10 Formas Normais Exemplo: p → (q  (r p))  p (q  (r p))  p  (q  ( r  p))  p  (q  r  p)  (p  q )  (p  r)  ( p  p)  (p  q )  (p  r)  p 26/03/2017 Prof. Celso A A Kaestner

11 Formas Normais Forma normal disjuntiva (fnd): Similar e dual à fnc;
Disjunção de conjunções de literais; Obtenção similar à fnc, mudando apenas no último passo quando da ordenação dos conectivos  e . 26/03/2017 Prof. Celso A A Kaestner

12 Resolução Cláusulas de Horn: Contém no máximo um literal positivo;
Podem ser de três tipos: Regras: p1p2...pnq, equivalendo a (p1p2...pn) →q; Fatos: cláusulas unitárias com um único literal positivo: p, q ... Restrições: só contém literais negativos: p1p2...pn . 26/03/2017 Prof. Celso A A Kaestner

13 Resolução É uma regra de inferência correta;
Obtém uma cláusula resolvente a partir de duas cláusulas dadas, desde que estas tenham literais complementares: A  p B  p A  B 26/03/2017 Prof. Celso A A Kaestner

14 Resolução e refutação O método dedutivo que usa a regra de inferência resolução emprega refutação; Refutação: para provar  |- A mostra-se que   { A } |-  (contradição). 26/03/2017 Prof. Celso A A Kaestner

15 Resolução e refutação Exemplo: (p  s  r), (s  r) |- p  r 
1:(p  s  r), 2:(sr), 3:p , 4:r  (de 1 e 3) 2:(sr), 4:r , 5:(s  r)  (de 4 e 5) 2:(sr), 4:r , 6: s  (de 2 e 6) 4:r , 7: r  (de 7 e 4)  QED. 26/03/2017 Prof. Celso A A Kaestner

16 Resolução e refutação A linguagem PROLOG se fundamenta no princípio de resolução e em refutação, e será estudada mais adiante. Prática do uso do algoritmo de resolução / refutação utilizando o software em Lisp. 26/03/2017 Prof. Celso A A Kaestner


Carregar ppt "Lógica para Computação"

Apresentações semelhantes


Anúncios Google