LogicaDePredicados

download LogicaDePredicados

of 32

Transcript of LogicaDePredicados

Lgica de PredicadosSlides da disciplina Lgica para Computao ministrada pelo Prof. Celso Antnio Alves Kaestner, Dr. Eng. ([email protected]) entre 2007 e 2008. Alteraes feitas em 2009 pelo Prof. Adolfo Neto ([email protected]) Verso original disponvel emhttp://www.dainf.ct.utfpr.edu.br/~kaestner/Logica/LogicaPredicativa.ppt

Lgica de Predicados A Lgica de Predicados (ou lgica de 1 ordem) uma extenso da lgica proposicional que aumenta sua expressividade, permitindo que se faam afirmaes sobre propriedades ou predicados inerentes a conjuntos de elementos individuais; Tipicamente as frmulas envolvem os quantificadores para todo () e existe ( ); Uma frmula tpica : x(homem(x)mortal(x)).Obs.: para representar o mesmo em Lgica Proposicional seria necessrio utilizar uma frmula para cada indivduo, por exemplo: (homem_joo mortal_joo), (homem_jos mortal_jos), etc.

16/09/09

Prof. Celso A A Kaestner

2

Mais exemplos de Frmulas com Predicados

Predicados unrios:

brasileiro(Joo) maior(3,4) matou(Joo,Maria) deu(Maria,livro,Joo)

Predicados binrios:

Predicados ternrios:

Gottlob Frege

Lgica Predicativa A linguagem (sintaxe) da Lgica Predicativa LPRED mais complexa que a da Lgica Proposicional; Para a definio de LPRED necessita-se de: Conjuntos de predicados: Ri = { ri1, ri2,... rin,...} onde o sobrescrito i indica a aridade do predicado (o seu n de argumentos); Um conjunto de constantes: C = {c1,c2, ...}; Conjuntos de funes: Fi = { fi1, fi2,... fin,...} onde o sobrescrito i tambm indica a aridade da funo; Um conjunto de variveis: V = {x1,x2, ...}.Prof. Celso A A Kaestner 5

16/09/09

Exemplos

Predicados:

R1={homem1,mortal1,brasileiro1,...} R2={maior2,matou2, ...} R3={deu3,...} ... C={maria,joo,livro,3,4,...}

Constantes:

Funes

+(3,4) pai_de(Joo) divisao(5.5,3.2) salario(Joo)

Lgica de Predicados

Para definir o que so frmulas bemformadas na Lgica de Predicados precisaremos definir dois conceitos:

Assinatura e Termos

O conjunto de frmulas bem-formadas ser relativo a uma assinatura.

Lgica Predicativa Uma assinatura de LPRED a uma tupla do tipo = [R1,R2, ..., RM,C,V,F1,F2,...,FN] onde M e N so nmeros naturais conhecidos. O conjunto dos termos de LPRED T() definido recursivamente por: Se xV ento x T(); Se cC ento c T(); Se fFj e se t1,...tj T() ento f(t1,...tj ) T().

16/09/09

Prof. Celso A A Kaestner

9

Lgica Predicativa O conjunto das frmulas bem formadas (fbf) de LPRED Fbf() definido recursivamente como sendo o menor conjunto que atenda ao seguinte: Se t1,...tj T() e se rj Rj ento rj(t1,...tj) Fbf(); Se t1, t2 T() ento t1= t2 Fbf(); Estas fbf so chamadas de frmulas atmicas; Se , Fbf() ento , , , Fbf(); Se Fbf() e se xV ento x() e x() Fbf().Prof. Celso A A Kaestner 10

16/09/09

Exemplos

Assinaturas

Termos Frmulas bem-formadas

=[R1={filho_unico},R2={pai},C={joao,jose,1,...,120},V= {x,y},F1={idade},F2={soma}]

Representao de Conhecimento

Representar frases em lngua natural como frmulas em lgica de predicados H um conjunto de regras que podem ser utilizadas na traduo

Exerccios Resolvidos

Escreva frmulas para representar as frases abaixo:

A mdia de a e b igual a c

Igual(media(a,b),c) - para lgicas sem igualdade media(a,b)=c x.(Professor(x)Funcionario(x)) x.(Aluno(x)Funcionario(x)) x.(Matou(x,Maria)Matou(x,Joo)) x.( (Primo(x)Maior_que(x,2)) Impar(x) )

Todo professor funcionrio

Alguns alunos so funcionrios

Se algum matou Maria, este algum tambm matou Joo

Todo nmero primo maior do que 2 mpar

Exerccios Resolvidos

Escreva frmulas para representar as frases abaixo:

A mdia de quaisquer dois nmeros maior ou igual do que um dos dois

xy. ( Maior_igual(media(x,y),x) Maior_igual(media(x,y),y) )

No verdade que a soma de dois nmeros pares seja um nmero mpar

!(xy.[ (Par(x)Par(y))Impar(soma(x,y)) ]) x.( Par(x)

Se um nmero par, ele no mpar

(!(Impar(x)) ) )

Exerccios

Escreva frmulas para representar as frases abaixo:

O resultado da multiplicao de a por b c Alguns polticos so ladres Todo mltiplo de 4 mltiplo de 2 A mdia de quaisquer trs nmeros maior ou igual do que um dos trs Se um nmero divisvel por outro, no igual a zero, ento dizemos que ele mltiplo desse outro Se uma pessoa pai de outra que tem um filho, ento aquela pessoa av deste ltimo

LP Mondicos vs. LP Polidicos

Lgica de Predicados Mondicos: apenas predicados unrios.

Limitada A satisfazibilidade decidvel Sem limite na aridade dos predicados A satisfazibilidade indecidvel

Lgica de Predicados Polidicos

Fim da Primeira Parte

Ver exerccios resolvidos de representao de conhecimento

Lgica Predicativa

O conjunto das variveis livres VLIVRES () em uma frmula definido por:Se = rj(t1,...tj) com rj Rj e os ti T() ento todas as variveis em pertencem a VLIVRES (); Se = (t1=t2) com os ti T() ento todas as variveis em pertencem a VLIVRES (); Se = ento VLIVRES ()= VLIVRES (); Se = ou ento , , VLIVRES ()= VLIVRES () VLIVRES (); Se = x() ou x() ento VLIVRES ()= VLIVRES () {x}.

Exemplo: Se = x (r(x) q(y) z (s(z,y))) ento VLIVRES () = { y }.Prof. Celso A A Kaestner 18

16/09/09

Exemplos

Lgica Predicativa Uma frmula tal que VLIVRES () = (sem variveis livres) denominada uma sentena. Uma subfrmula de uma frmula uma subseqncia dos smbolos de que tambm pertence a Fbf(). Exemplo: se = x (r(x) q(y) z (s(z,y))) ento r(x) q(y) z (s(z,y)) , r(x) q(y), z (s(z,y)) , r(x) e q(y) so subfrmulas de .

16/09/09

Prof. Celso A A Kaestner

20

Lgica Predicativa Exemplos:

16/09/09

Prof. Celso A A Kaestner

21

Lgica Predicativa A semntica da Lgica Predicativa definida sobre um par A()=[A, vA()] denominado sistema algbrico da assinatura , tal que: A um conjunto denominado domnio (ou portador) do sistema algbrico; vA() uma interpretao, que mapeia os elementos dos conjuntos em em relaes sobre A (para os predicados), em funes sobre A (para as funes) e em elementos de A (para as constantes).

16/09/09

Prof. Celso A A Kaestner

22

Lgica Predicativa Desta forma para uma interpretao vA() tem-se: Se rj Rj ento vA() (rj) Aj = A A ... A (j vezes); Se fFj ento existe uma funo vA() (fj): Aj A; Se c C ento vA() (c) A; Para um conjunto de variveis X V existe ainda uma funo : X A denominada interpretao das variveis X em A .

16/09/09

Prof. Celso A A Kaestner

23

Lgica Predicativa O valor de um termo t T () em um sistema algbrico A() e para uma interpretao de variveis definido indutivamente por: Se t = x X ento tA() [ ] = (x); Se t = c C ento tA() [ ] = vA() (c); Se fFj , t1,..., tj so termos e t=f(t1,..., tj) ento tA() [ ]= vA() (fj)(t1A()[ ],..., tjA()[ ]).

16/09/09

Prof. Celso A A Kaestner

24

Lgica Predicativa Finalmente possvel se definir quando uma frmula verdadeira para um sistema algbrico A() e uma interpretao de variveis ; Denota-se por A() |= [ ];Se = rj(t1,...tj) Fbf() ento A() |= [ ] equivalente a [t1A() [ ],..., tjA()[ ]] vA() (rj); Se = (t1=t2) com t1, t2 T() ento A() |= [ ] equivalente a t1A()[ ] = t2A()[ ]; Se = e Fbf() ento A() |= [ ] se e somente se no for verdade que A() |= [ ];

16/09/09

Prof. Celso A A Kaestner

25

Lgica Predicativa Se = com , Fbf() ento A() |= [ ] se e somente , se A() |= [ ] e A() |= [ ]; Se = com , Fbf() ento A() |= [ ] se e somente , se A() |= [ ] ou A() |= [ ]; Se = , com , Fbf() ento A() |= [ ] se e somente se quando A() |= [ ] necessariamente tambm ocorre A() |= [ ]; Se = x() com Fbf() ento A() |= [ ] se e somente se existir pelo menos uma interpretao de variveis : X A que, restrita s variveis de , seja tal que A() |= [ ]; Se = x() com Fbf() ento A() |= [ ] se e somente se para todas as interpretaes de variveis : X A , quando restritas s variveis de , sejam tais que A() |= [ ].Prof. Celso A A Kaestner 26

16/09/09

Lgica Predicativa Exemplos:

16/09/09

Prof. Celso A A Kaestner

27

Lgica Predicativa Uma teoria em LPRED um conjunto de sentenas; Um sistema algbrico A() um modelo para uma teoria se A() |= para toda ; Se tiver ao menos um modelo diz-se que satisfazvel; Se no tiver modelos dita insatisfazvel.

16/09/09

Prof. Celso A A Kaestner

28

Lgica PredicativaSubstituio de variveis: Seja uma frmula, x VLIVRES () uma varivel livre em e t T() um termo; Neste caso a varivel x pode ser substituda pelo termo t em , gerando uma nova frmula [x:=t]; Exemplo: se = x(r(x) s(x,y)), yVLIVRES () e t=f(a,z) ento [y:=f(a,z)] = x(r(x) s(x,f(a,z))).

16/09/09

Prof. Celso A A Kaestner

29

Lgica Predicativa Intuitivamente uma substituio gera um caso particular de uma frmula; As substituies s podem ser feitas sobre as variveis livres de , e de forma a no introduzir restries na frmula gerada que j no estivessem presentes na frmula original; Vrias substituies podem ser feitas simultaneamente, desde que no introduzam restries. Exemplo: Se = x(r(x) s(x,y) r(z)) y, zVLIVRES () e t1=f(a,w), t2=b ento [y:=f(a,w), z:=b]=x(r(x)s(x,f(a,z)) r(b)))

16/09/09

Prof. Celso A A Kaestner

30

Lgica PredicativaSistemas Dedutivos em Lgica Predicativa: 1. Mtodo axiomtico: ver item 4.5 pg. 128; 2. Deduo natural: ver item 4.4 pg. 122, e tambm a ferramenta JAPE; 3. Mtodo dos tableaux analticos: ver item 5.6 pg. 147.

16/09/09

Prof. Celso A A Kaestner

31

Lgica PredicativaExemplo do mtodo dos tableaux analticos:1. 2. 3. 4. 5. 6. 7. 8. 1. x(r(x) s(x)) |- x r(x) x s(x) T x(r(x) s(x)) de 1 F x r(x) x s(x) de 1 T x r(x) de 3 F x s(x) de 3 F s(a) de 5 T r(a) de 4 T r(a) s(a) de 2 F r(a) X (7,9) T s(a) X (6,9) de 8

16/09/09

Prof. Celso A A Kaestner

32