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

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

Lógica de Predicados Resolução. Cláusulas e literais complementares Cláusula em lógica de predicados é uma disjunção de literais Usando a notação de conjuntos:

Apresentações semelhantes


Apresentação em tema: "Lógica de Predicados Resolução. Cláusulas e literais complementares Cláusula em lógica de predicados é uma disjunção de literais Usando a notação de conjuntos:"— Transcrição da apresentação:

1 Lógica de Predicados Resolução

2 Cláusulas e literais complementares Cláusula em lógica de predicados é uma disjunção de literais Usando a notação de conjuntos: C1={p(x),  q(f(w)),a}, C2={y,  q(k,z)}, C3={z} Dois literais são complementares em lógica de predicados quando, UNIFICADOS, um é a negação do outro

3 Resolvente em L. Proposicional Supondo 2 cláusulas C1={A1,..., An} e C2={B1,..., Bn}, com literais complementares A, um conjunto de literais em C1, tal que -A, um conjunto de literais complementares a A, estão em C2 Resolvente de C1 e C2: Res(C1,C2)=(C1-A)U(C2- -A) Res(C1,C2) pode ser {} Resolvente vazio ou trivial

4 Em Lógica de 1ª. Ordem Resolução não é uma simples extensão da Resolução da Lógica Proposicional O processo é mais longo e cuidadoso: Transformar a(s) fórmula(s) para a forma normal Prenex Skolemizá-la(s) Transformá-las para CNF Transformá-las para a forma clausal Unificá-las durante a resolução Por outro lado, ao usar a unificação, a resolução torna-se bem mais rápida do que os métodos de Gilmore e Davis-Putnam!

5 Resolvente em LPO Supondo 2 cláusulas C1={A1,..., An} e C2={B1,..., Bn} Ai e Bj unificáveis O, o unificador mais geral de Ai e Bj AiO=  BjO ou vice-versa Resolvente de C1 e C2: Res(C1,C2)=(C1O-AiO)U(C2O-BjO) Res(C1,C2) pode ser {} Resolvente vazio ou trivial

6 Do ponto de vista lógico C1O é uma instância de C1 e C2O de C2 C1O e C2O são conseqüências lógicas de C1UC2 Por outro lado, AiO e BjO não poderão ser satisfeitos simultaneamente então não estamos perdendo nada se os retirarmos, pois C1O e C2O teriam de ser satisfeitas simultaneamente Também o Res(C1,C2) é conseqüência lógica de C1UC2

7 Exemplo de resolvente C1=[p(f(x),y,x),  q(a,y,w1)] C2=[  p(z,g(z),w)] C3=[q(x,g(f(a)),c)] e C4=[  q(a,g(f(w)),w1)] Os átomos p(f(x),y,x) e  p(z,g(z),w) de C1 e C2 são unificáveis e complementares quando unificados O1={z  f(w),y  g(f(w)),x  w} Res(C1,C2) = (C1O1- p(f(x),y,x)O1) U (C2O2-  p(z,g(z),w)O1) Res(C1,C2) = {  q(a,g(f(w)),w1)} que é uma nova cláusula Res(C3,C4) = ???

8 Exemplo de resolvente C3=[q(x,g(f(a)),c)] e C4=[  q(a,g(f(w)),w1)] O2={x  a,w  a,w1  c} Res(C3,C4) = (C3O2- q(x,g(f(a)),c)O2) U (C4O2-  q(a,g(f(w)),w1)O2) Res(C1,C2) = {}

9 Sistema com Resolução Alfabeto da Lógica de Predicados Conjunto de cláusulas da Lógica de Predicados A regra de resolução da Lógica de Predicados

10 Regra de Resolução Supondo 2 cláusulas C1={A1,..., An} e C2={B1,..., Bn}, a Regra de Resolução aplicada a C1 e C2 é: Deduzir Res(C1,C2) Para verificar satisfabilidade Empregar várias vezes até obter a cláusula vazia Expansão por resolução

11 Dados os C1, C2 e C3 1. {p(f(x),y,x),  q(a,y,w1)} 2. {  p(z,g(z),w)} 3. {q(x,g(f(a)),c)} 4. {  q(a,g(f(w)),w1)} Res(1,2),O1={z  f(w),y  g(f(w)),x  w} 5. {} Expansão fechada – contém a cláusula vazia

12 Exercício de forma clausal Achar a a forma clausal associada a: H=(  x)p(x)^ (  x)(  z) ((  x)q(x))  (  y)(r(x,y,z)) Relembrando: Prenex Skolem CNF Clausal

13 Exercício de forma clausal - Prenex H=(  x)p(x)^ (  x)(  z) ((  x)q(x))  (  y)(r(x,y,z)) Relembrando o algoritmo Prenex: Leis de eliminação P  Q e P  Q Leis da negação  (  H),  ((  z)(H)) e  ((  z)(H)) Leis de De Morgan Renomeação de variáveis Regras Prenex

14 Exercício de forma clausal – Prenex (cont.) H=(  x)p(x)^ (  x)(  z) ((  x)q(x))  (  y)(r(x,y,z)) H=(  x)p(x)^ (  x)(  z) (  (  x)q(x)) v (  y)(r(x,y,z)) (eliminação P  Q) H=(  x)p(x)^ (  x)(  z) ((  x)  q(x)) v (  y)(r(x,y,z)) (negação  (  z)) H=(  y1)p(y1)^ (  x)(  z) ((  y2)  q(y2)) v (  y)(r(x,y,z)) (Renomeação de variáveis)

15 Exercício de forma clausal – Prenex (cont.) H=(  y1)p(y1)^ (  x)(  z) ((  y2)  q(y2)) v (  y)(r(x,y,z)) H=(  y1)(  x)(  z) (p(y1)^ ((  y2)  q(y2) v (  y) r(x,y,z))) Regra Prenex R1 H=(  y1)(  x)(  z) (p(y1)^ (  y2)(  y) (  q(y2) v r(x,y,z))) R6 Hp=(  y1)(  x)(  z)(  y2)(  y) (p(y1)^ (  q(y2) v r(x,y,z))) R7

16 Exercício de forma clausal – Skolem (cont.) Hp=(  y1)(  x)(  z)(  y2)(  y) (p(y1)^ (  q(y2) v r(x,y,z))) Hs=(  y1)(  x)(  z) (p(y1)^ (  q(f(y1,x,z)) v r(x,g(y1,x,z),z)) Hc= {[p(y1)], [  q(f(y1,x,z)),r(x,g(y1,x,z),z)]}

17 Prova por resolução Dadas uma fórmula H e  Hc, a forma clausal associada a  H Uma Prova de H por resolução é uma expansão fechada sobre  Hc H é um teorema do sistema de resolução

18 Exemplo de Prova por resolução Toda pessoa é sábia ou tucana. Zé não é tucano. Zé é sábio? O que quero provar??

19 Exemplo de Prova por resolução Toda pessoa é sábia ou tucana. Zé não é tucano. Zé é sábio? (  x)(p(x)v q(x))^  p(a)  q(a) Por refutação:  ((  x)(p(x)v q(x))^  p(a)  q(a))  (  ((  x)(p(x)v q(x))^  p(a)) v q(a)) (  x)(p(x)v q(x))^  p(a)) v q(a)) (  x)(p(x)v q(x))^  p(a)) ^  q(a)) {[p(x),q(x)], [  p(a)], [  q(a)]}

20 Exemplo de Prova por resolução (cont.) Agora, é só fazer a expansão por resolução! 1. [p(x),q(x)] 2. [  p(a)] 3. [  q(a)] 4. [q(a)]Res(1,2), O1={x  a} 5. {}Res(3,4), O2={x  a}

21 Conseqüência lógica na resolução Dada uma fórmula H e um conjunto de hipóteses  ={H1,H2,...Hn}, então H é conseqüência lógica de  por resolução se existe uma prova por resolução de (H1^H2^...^Hn)  H

22 Notação de Conseqüência Lógica por Resolução Dada uma fórmula H, se H é conseqüência lógica de um conjunto de hipóteses  ={H1,H2,...Hn} por resolução, diz-se que:  ├ H ou {H1,H2,...Hn} ├ H

23 Exemplo 2 de Prova por resolução Os oficiais da alfândega revistam quem entra no país e não é VIP. Alguns traficantes entraram no país e foram revistados por outros traficantes. Nenhum traficante é VIP. Alguns oficiais são traficantes?

24 Exemplo 2 de Prova por resolução (cont.) Analogamente, e(x) = x entrou no país o(x) = x é oficial t(x) = x é traficante v(x) = x é VIP r(x,y) = x revistou y

25 Exemplo 2 de Prova por resolução (cont.) Os oficiais da alfândega revistam quem entra no país e não é VIP. (  x)(e(x)^  v(x)  (  y)(r(x,y)^o(y))) Alguns traficantes entraram no país e foram revistados por outros traficantes. (  x)(e(x)^ t(x) ^ (  y)(r(x,y)  t(y))) Nenhum traficante é VIP. (  x)(t(x)   v(x)) Alguns oficiais são traficantes? (  x)(o(x) ^ t(x))

26 Exemplo 2 de Prova por resolução (cont.) Separadamente tratando as cláusulas (  x)(e(x)^  v(x)  (  y)(r(x,y)^o(y))) =(  x)  (e(x)^  v(x)) v (  y)(r(x,y)^o(y))) =(  x)  e(x) v v(x) v (r(x,f(x))^o(f(x))), distribuindo: =(  x) (  e(x) v v(x) v r(x,f(x)) ^ (  e(x) v v(x) o(f(x)) (  x)(e(x)^ t(x) ^ (  y)(r(x,y)  t(y))) = (  x) (e(x)^ t(x) ^ (  y)(  r(x,y) v t(y))) = (  y) (e(a)^ t(a) ^ (  r(a,y) v t(y))) (  x)(t(x)   v(x)) = (  x)(  t(x) v  v(x)) Negando o conseqüente  (  x)(o(x) ^ t(x)) = (  x)  (o(x) ^ t(x)) = (  x)(  o(x) v  t(x))

27 Exemplo 2 de Prova por resolução (cont.) (  x)(  e(x)v v(x)v r(x,f(x))^(  e(x)v v(x)v o(f(x)) [  e(x),v(x),r(x,f(x)],[  e(x),v(x),o(f(x))] (  y)(e(a)^ t(a) ^ (  r(a,y) v t(y))) [e(a)],[t(a)],[  r(a,y),t(y)] (  x)(  t(x) v  v(x)) = [  t(x),  v(x)] Conseqüente:(  x)(  o(x)v  t(x)) = [  o(x),  t(x)]

28 Exemplo 2 de Prova por resolução (cont.) 1.[  e(x),v(x),r(x,f(x))] 2.[  e(x),v(x),o(f(x))] 3.[e(a)] 4.[t(a)] 5.[  r(a,y),t(y)] 6.[  t(x),  v(x)] 7.[  o(x),  t(x)] 8.[  v(a)] Res(4,6),O1={x  a} 9.[v(a),o(f(a))] Res(2,3),O1 10.[o(f(a))] Res(8,9) 11.[v(a),r(a,f(a))] Res(1,3),O1 12.[r(a,f(a))] Res(8,11) 13.[t(f(a))] Res(5,12){y  f(a)} 14.[  o(f(a))] Res(7,13) {x  f(a)} 15.{} !!!!!

29 Exercícios Tonha gosta de quem não se valoriza. Não existe ninguém que se valorize e que Tonha goste? Aonde a vaca vai, o boi também vai. O boi está na praia. E a vaca??? Foi pro brejo???

30 Tonha v(x) = x se valoriza g(x,y) = x gosta de y a = Tonha (Antônia) (  x)(  v(x)^g(a,x))   (  y)(v(y)^g(a,y))  (  x)(  v(x)^g(a,x))   (  y)(v(y)^g(a,y))  (  (  x)(  v(x)^g(a,x)) v  (  y)(v(y)^g(a,y))) (  x)(  v(x)^g(a,x)) ^ (  y)(v(y)^g(a,y)))

31 Tonha 2 – A vingança (  x)(  v(x)^g(a,x)) ^ (  y)(v(y)^g(a,y))) Cuidado: nesses casos é interessante que a Prenex não venha dessa forma, e sim de (  y)(v(y)^g(a,y))) ^ (  x)(  v(x)^g(a,x)) Por quê???

32 Cuidado!! Para evitar a criação de funções de Skolem desnecessariamente Essas funções podem fazer com que a expansão tenha de ser aberta E pode haver expansões abertas sobre tautologias!!


Carregar ppt "Lógica de Predicados Resolução. Cláusulas e literais complementares Cláusula em lógica de predicados é uma disjunção de literais Usando a notação de conjuntos:"

Apresentações semelhantes


Anúncios Google