1 / 16

Lógica para Computação

Lógica para Computação. Prof. Celso Antônio Alves Kaestner, Dr. Eng. kaestner@dainf.cefetpr.br. Algoritmo de Wang. É u m algoritmo que permite verificar a validade de um seqüente do tipo B 1 , B 2 … B n |- A 1 , A 2 … A m Equivale ao teorema

yaholo
Télécharger la présentation

Lógica para Computação

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


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

  2. 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) 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,…); 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). 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) Prof. Celso A A Kaestner

  6. Algoritmo de Wang • Prática do uso do algoritmo de Wang utilizando o software em Lisp. 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. 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) Prof. Celso A AKaestner

  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. Prof. Celso A AKaestner

  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 Prof. Celso A AKaestner

  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 . Prof. Celso A AKaestner

  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 . Prof. Celso A AKaestner

  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 Prof. Celso A AKaestner

  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). Prof. Celso A AKaestner

  15. Resolução e refutação Exemplo: (p s  r), (s  r) |- p  r (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. Prof. Celso A AKaestner

  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. Prof. Celso A AKaestner

More Related