1 / 20

Lógica para Computação

Lógica para Computação. Prof. Celso Antônio Alves Kaestner, Dr. Eng. c elsokaestner ( at ) utfpr ( dot ) edu ( dot ) br. Lógica Predicativa.

rafiki
Download Presentation

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. celsokaestner (at) utfpr (dot) edu (dot) br

  2. Lógica Predicativa • A Lógica Predicativa (ou lógica de 1ª ordem) é uma extensão da lógica proposicional que aumenta sua expressividade, permitindo que se façam afirmações sobre propriedades – ou predicados – inerentes a conjuntos de elementos individuais; • Tipicamente as fórmulas envolvem os quantificadores “para todo” () e “existe” (); • Uma fórmula típica é: x(homem(x)→mortal(x)). • Obs.: para representar o mesmo em Lógica Proposicional seria necessário utilizar uma fórmula para cada indivíduo, por exemplo: (homem_joão→ mortal_joão), (homem_josé→ mortal_josé), etc. Prof. Celso A A Kaestner

  3. Lógica Predicativa • A linguagem (sintaxe) da Lógica Predicativa LPRED é mais complexa que a da Lógica Proposicional; • Para a definição deLPRED necessita-se de: • Um conjunto 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, ...}; • Um conjunto de funções: Fi= { fi1, fi2,... fin,...} onde o sobrescrito i também indica a aridade da função; • Um conjunto de variáveis: V = {x1,x2, ...}. Prof. Celso A A Kaestner

  4. Lógica Predicativa • A assinatura de LPRED é a uma tupla do tipo  = [R1,R2, ...RM,C,F1,F2,...FN] onde N e M são números naturais conhecidos. • O conjunto dos termos de LPRED éT() definido recursivamente por: • Se xV então x  T(); • Se cC então c  T(); • Se fFj e se t1,...tj  T() então f(t1,...tj ) T(). Prof. Celso A A Kaestner

  5. Lógica Predicativa • O conjunto das fórmulas (fbf) de LPRED éFbf() definido recursivamente como sendo o menor conjunto que atenda ao seguinte: • Se t1,...tj  T() e se rj Rj então rj(t1,...tj) Fbf(); • Se t1, t2  T() então t1= t2 Fbf(); Estas fbf são chamadas de fórmulas atômicas; • Se ,  Fbf() então , , , → Fbf(); • Se  Fbf() e se xV então x() e x() Fbf(). Prof. Celso A A Kaestner

  6. Lógica Predicativa • O conjunto das variáveis livres VLIVRES() em uma fórmula  é definido por: • Se  = rj(t1,...tj) com rj Rj e os ti  T() então todas as variáveis em  pertencem a VLIVRES(); • Se  = (t1=t2) com os ti  T() então todas as variáveis em  pertencem a VLIVRES(); • Se = então VLIVRES()= VLIVRES(); • Se = , , ou → então VLIVRES()= VLIVRES()  VLIVRES(); • Se = x() ou x() então VLIVRES()= VLIVRES() – {x}. • Exemplo: Se  = x (r(x)  q(y) → z (s(z,y))) então VLIVRES() = { y }. Prof. Celso A A Kaestner

  7. Lógica Predicativa • Uma fórmula  tal que VLIVRES() =  (sem variáveis livres) é denominada uma sentença. • Uma subfórmula de uma fórmula  é uma subseqüência dos símbolos de  que também pertence a Fbf(). • Exemplo: se  = x (r(x)  q(y) → z (s(z,y))) então r(x)  q(y) → z (s(z,y)) , r(x)  q(y), z (s(z,y)), r(x) e q(y) são subfórmulas de . Prof. Celso A A Kaestner

  8. Lógica Predicativa • Exemplos: Prof. Celso A A Kaestner

  9. Lógica Predicativa • A semântica da Lógica Predicativa é definida sobre um par A()=[A, vA()] denominado sistema algébrico da assinatura , tal que: • A é um conjunto denominado domínio (ou portador) do sistema algébrico; • vA() é uma interpretação, que mapeia os elementos dos conjuntos em  em relações sobre A (para os predicados), em funções sobre A (para as funções) e em elementos de A (para as constantes). Prof. Celso A A Kaestner

  10. Lógica Predicativa • Desta forma para uma interpretação vA() tem-se: • Se rj Rj então vA() (rj)  Aj = A  A  ... A (j vezes); • Se fFj então existe uma função vA() (fj): Aj →A; • Se c  C então vA() (c)  A; • Para um conjunto de variáveis X  V existe ainda uma função  : X → A denominada interpretação das variáveisX em A . Prof. Celso A A Kaestner

  11. Lógica Predicativa • O valor de um termo t  T () em um sistema algébrico A() e para uma interpretação de variáveis  é definido indutivamente por: • Se t = x  X então tA() [] = (x); • Se t = c  C então tA() [] = vA() (c); • Se fFj , t1,..., tj são termos e t=f(t1,..., tj) então tA() []=vA() (fj)(t1A()[],..., tjA()[]). Prof. Celso A A Kaestner

  12. Lógica Predicativa • Finalmente é possível se definir quando uma fórmula  é verdadeira para um sistema algébrico A() e uma interpretação de variáveis ; • Denota-se por A() |= []; • Se  = rj(t1,...tj) Fbf() então A() |= [] é equivalente a [t1A()[],..., tjA()[]] vA() (rj); • Se  = (t1=t2) com t1, t2  T() então A() |= [] é equivalente a t1A()[] = t2A()[]; • Se =  e Fbf() então A() |= [] se e somente se não for verdade que A() |=  []; Prof. Celso A A Kaestner

  13. Lógica Predicativa • Se  = , com ,  Fbf() então A() |= [] se e somente se A() |= [] e A() |= []; • Se  = , com ,  Fbf() então A() |= [] se e somente se A() |= [] ou A() |= []; • Se  = →, com ,  Fbf() então A() |= [] se e somente se quando A() |= [] necessariamente também ocorre A() |= []; • Se  = x() com  Fbf() então A() |= [] se e somente se existir pelo menos uma interpretação de variáveis : X → A que, restrita às variáveis de , seja tal que A() |= []; • Se  = x() com  Fbf() então A() |= [] se e somente se para todas as interpretações de variáveis : X → A , quando restritas às variáveis de , sejam tais que A() |= []. Prof. Celso A A Kaestner

  14. Lógica Predicativa • Exemplos Prof. Celso A A Kaestner

  15. Lógica Predicativa • Uma teoria  em LPREDé um conjunto de sentenças; • Um sistema algébrico A() é um modelo para uma teoria  se A() |=  para toda   ; • Se  tiver ao menos um modelo diz-se que  é satisfazível; • Se  não tiver modelos é dita insatisfazível. Prof. Celso A A Kaestner

  16. Lógica Predicativa Substituição de variáveis: • Seja  uma fórmula, x  VLIVRES() uma variável livre em  e t  T() um termo; • Neste caso a variável x pode ser substituída pelo termo t em , gerando uma nova fórmula [x:=t]; • Exemplo: se  = x(r(x) →s(x,y)), yVLIVRES() e t=f(a,z) então [y:=f(a,z)] = x(r(x) →s(x,f(a,z))). Prof. Celso A A Kaestner

  17. Lógica Predicativa • Intuitivamente uma substituição gera um “caso particular” de uma fórmula; • As substituições só podem ser feitas sobre as variáveis livres de , e de forma a não introduzir restrições na fórmula gerada que já não estivessem presentes na fórmula original; • Várias substituições podem ser feitas simultaneamente, desde que não introduzam restrições. • Exemplo: Se  = x(r(x) →s(x,y)  r(z)) y, zVLIVRES() e t1=f(a,w), t2=b então [y:=f(a,w), z:=b]=x(r(x)→s(x,f(a,z))r(b))) Prof. Celso A A Kaestner

  18. Lógica Predicativa Sistemas Dedutivos em Lógica Predicativa: • Método axiomático: ver item 4.5 pg. 128; • Dedução natural: ver item 4.4 pg. 122, e também a ferramenta JAPE; • Método dos tableaux analíticos: ver item 5.6 pg. 147. Prof. Celso A A Kaestner

  19. Lógica Predicativa Exemplo do método dos tableaux analíticos: • 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) T s(a) de 8 X (7,9) X (6,9) Prof. Celso A A Kaestner

  20. Lógica Predicativa • Método da Dedução Natural... Prof. Celso A A Kaestner

More Related