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 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) = ???

7 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) = {}

8 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

9 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

10 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. {  q(a,g(f(w),w1)}} Expansão fechada – contém a cláusula vazia com O2={x  a, w  a, w1  c}

11 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

12 Forma Prenex – Informal Quando os quantificadores estão na frente da fórmula (  x)(  y)(r(x,y) ^ p(y)) Não existem outros quantificadores Fórmula aberta em LPO – não contém quantificadores

13 Forma Prenex – Formal Uma fórmula está na forma prenex quando é do tipo (Qx1)...(Qxn)G, onde G é aberta (às vezes chamada de matriz) (Qxi) é um quantificador universal ou existencial (Qx1)...(Qxn) às vezes é chamado de prefixo (  x)((  y)r(x,y) ^ p(y)) está na forma prenex?

14 Escopo e Prenex Não!!! Na forma prenex, o escopo dos quantificadores deve ser á fórmula inteira Toda fórmula tem um equivalente na forma prenex! Como transformá-la em Prenex então?

15 R1=(  x)A^BR2= (  x)AvB R3=(  x)A^B (  x)(A^B) (  x)(AvB) (  x)(A^B) onde x não ocorre livre em B (válido até R4) R4=(  x)AvBR5=(  x)A^(  x)B R6=(  x)Av(  x)B (  x)(AvB)(  x)(A^B) (  x)(AvB) R7=(Q1x)A^(Q2y)B R8=(Q1x)Av(Q2y)B (Q1x)(Q2y)(A^B) (Q1x)(Q2y)(AvB) onde x não ocorre livre em B e y não ocorre livre em A

16 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

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

18 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

19 Forma Skolem Resolução é feita com fórmulas prenex SEM quantificadores existenciais É preciso eliminá-los!! G está na forma de Skolem se ela é veio de uma prenex H cujos  s foram retirados pelas regras de Skolem Porém H NÃO equivale a G!! Mas, H é insatisfatível sse G também for!

20 Exemplo 1 de Skolemização I[p(x)]=T  xI é inteligente e U=alunos do CIn I[(  x)p(x)]=T   d  aluno-CIn em que I[d]=Bio; d é inteligente Se trocarmos (  x)p(x)]= p(a)?? (  x)(  y)r(y,x) com a mesma interpretação I[r(y,x)]=T  yI é professor de xI I[(  x)(  y)r(y,x)]=T  todo aluno tem ao menos um professor Se trocarmos para (  x)r(b,x), onde I[b]=Fred??

21 Exemplo 2 de Skolemização Em (  x)(  y)r(y,x) Se trocarmos para (  x)r(b,x), onde I[b]=Fred?? I[(  x)r(b,x)]=T  Fred é professor de todos os alunos do CIn  I[(  x)r(b,x)]=F Note que I[(  x)(  y)r(y,x)]=T e I[(  x)r(b,x)]=F Por quê??

22 Função de Skolem Porque o professor de cada aluno depende de cada aluno! A idéia é que b seja “um professor genérico” de x (sem ser uma variável ) y=f(x), pois y depende de x Trocamos (  x)(  y)r(y,x) para (  x)r(f(x),x) (  z)(  x)(  y)p(z,y,x) vira (  z)(  x)p(z,g(z,x),x)

23 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)]}

24 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

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

26 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)]}

27 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}

28 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

29 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

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

31 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

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

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

34 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)]

35 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.{} !!!!!

36 Exercícios Tonha gosta de quem não se valoriza. Existe algué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???

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

38 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ê???

39 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!!

40 Resolver isso por resolução W= (  x)(Bom(x)  Alegria)  (  x) (Bom(x)  Alegria) Resolução sobre  W???

41 Resolvendo o problema  ((  x)(Bom(x)  Alegria)  (  x) (Bom(x)  Alegria)) Na forma clausal: {[Bom(x),  Alegria],[Bom(a), Alegria]} Com {x  a} chegamos à cláusula vazia


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