Buscar

Aulas_-_Lógica_de_Predicados

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 3, do total de 34 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 6, do total de 34 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 9, do total de 34 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Prévia do material em texto

________________________________________________________________________________________ 
 
Prof. Sérgio Gorender Lógica 
Lógica de Predicados de Primeira Ordem 
 Trata com objetos e suas propriedades. 
todo o a é um b 
A é um a 
A é um b 
 Permite expressar afirmativas sobre elementos das 
estruturas. 
 Sistema formal apropriado para a definição de 
teorias do universo de discurso da matemática. 
• Sistema formal – composto de uma linguagem 
formal e de uma abstração adequada para os 
princípios usados para decidir quando uma 
assertiva é conseqüência lógica de outras. 
• Teoria – conjunto de assertivas (proposições, 
lemas, teoremas, etc.) acerca de um universo de 
discurso. 
________________________________________________________________________________________ 
 
Prof. Sérgio Gorender Lógica 
• Formalização de uma teoria – 
 Escolher uma nova linguagem simbólica ou 
formal para exprimir a teoria, em substituição a 
uma linguagem natural. 
 Organizar as assertivas da teoria dedutivamente, 
escolhendo algumas assertivas como axiomas 
ou postulados a partir das quais as demais 
podem ser gradativamente obtidas. 
 Exprimi-se também as propriedades dos termos 
do universo de discurso através de novos 
axiomas até que o significado destes termos não 
precise mais ser usado nas deduções. 
 Explicita-se o significado dos termos ordinários 
(fora do universo de discurso) e os princípios 
usados para decidir quando uma assertiva é 
conseqüência lógica de outras. 
________________________________________________________________________________________ 
 
Prof. Sérgio Gorender Lógica 
Originou-se no “Begriffsschrift” publicado por 
Gotlob Frege em 1879. 
Outros resultado importantes para a lógica de 
primeira ordem – 
• Gödel – provou a existência de um sistema 
axiomático consistente e completo para a Lógica 
de Primeira ordem, em sua tese de doutorado – 6 
de fevereiro de 1930. 
• Herbrand – obteve uma solução para o problema 
da caracterização dos princípios lógicos de 
primeira ordem que se tornou fundamental para a 
mecanização da lógica – 11 de junho de 1930. 
• Skolem – solução alternativa para o problema da 
caracterização, de certa forma semelhante aos 
resultados de Herbrand. 
• Church e Turing – indecidibilidade do problema 
da validade (1936). Obtiveram seus resultados de 
forma independente. 
• Problema da validade – determinar se existe 
ou não um algoritmo que recebe como 
entrada qualquer fórmula de primeira ordem e 
produz como saída SIM, se a fórmula é 
sempre válida, e NÃO em caso contrário. 
________________________________________________________________________________________ 
 
Prof. Sérgio Gorender Lógica 
 Sintaxe das linguagens de primeira ordem – 
• Um alfabeto de primeira ordem contém – 
conectivos lógicos, parênteses, variáveis (para 
denotar indivíduos arbitrários do domínio de 
discurso), constantes (para denotar indivíduos 
específicos), símbolos para denotar funções ou 
relações (predicados) e quantificadores. 
• Termos são seqüências de símbolos que denotarão 
indivíduos do domínio do discurso. 
• Fórmulas simples são seqüências de símbolos que 
representam relacionamentos entre indivíduos e 
que receberão valores verdade V ou F. 
________________________________________________________________________________________ 
 
Prof. Sérgio Gorender Lógica 
• Alfabeto de primeira ordem A – 
 Símbolos lógicos – 
Pontuação: (, ) 
Conectivos: ¬, ∧, ∨, →, ≡ 
Quantificadores: ∀ (quantificador universal – 
para todo) 
∃ (quantificador existencial – 
existe) 
Variáveis: um conjunto de símbolos distinto 
dos demais- x, y, z, w, .... 
Símbolo de igualdade: = 
________________________________________________________________________________________ 
 
Prof. Sérgio Gorender Lógica 
 Símbolos não-lógicos- 
♦ Um conjunto, possivelmente vazio, de 
constantes distintas dos demais símbolos. 
 a, b, c, d, ... 
♦ Um conjunto, possivelmente vazio, de 
símbolos funcionais n-ários distintos dos 
demais símbolos, sendo n>0. 
 f, g, h, i, ... 
♦ Um conjunto, possivelmente vazio, de 
símbolos predicados n-ários distintos dos 
demais símbolos, sendo n>0. 
 P, Q, R, S, T, ... 
________________________________________________________________________________________ 
 
Prof. Sérgio Gorender Lógica 
• Conjunto dos termos de primeira ordem sobre um 
alfabeto de primeira ordem A: 
 Toda variável em A é um termo sobre A. 
 Toda constante em A é um termo sobre A. 
 Se t1,...,tn são termos sobre A e f é um símbolo 
funcional n-ário de A, então f(t1,...,tn) também é 
um termo sobre A. 
________________________________________________________________________________________ 
 
Prof. Sérgio Gorender Lógica 
• Conjunto de fórmulas sobre um alfabeto de 
primeira ordem A: 
 Se t1,...,tn são termos sobre A e P é um símbolo 
predicativo n-ário de A, então P(t1,...,tn) é uma 
fórmula sobre A, chamada de fórmula atômica. 
 Se t1 e t2 são termos sobre A e “=” é um símbolo 
de A, então (t1 = t2) é uma fórmula sobre A, 
também chamada de fórmula atômica. 
 Se P e Q são fórmulas sobre A, então (¬P), 
(P ∧ Q), (P ∨ Q), (P → Q) e (P ≡ Q) também 
são fórmulas sobre A. 
 Se P é uma fórmula sobre A e x é uma variável 
de A, então ∀x(P) e ∃x(P) também são 
fórmulas sobre A. 
________________________________________________________________________________________ 
 
Prof. Sérgio Gorender Lógica 
• Linguagem de primeira ordem L(A), sobre um 
alfabeto de primeira ordem A – conjunto de 
termos e fórmulas de primeira ordem sobre A. 
• Escopo de um quantificador – subfórmula Q da 
fórmula ∀x (Q) (válido para ∃). 
• Ocorrência ligada de uma variável x em uma 
fórmula P – x ocorre em uma subfórmula de P na 
forma ∀x (Q) (válido para ∃). 
________________________________________________________________________________________ 
 
Prof. Sérgio Gorender Lógica 
• Semântica das linguagens de primeira ordem – 
 Escolha de um mapeamento associando a cada 
símbolo não-lógico do alfabeto um elemento de 
um conjunto, uma função ou uma relação sobre 
este conjunto, dependendo do tipo do símbolo. 
 Considere – 
• A – um alfabeto de primeira ordem. 
• U – um conjunto não vazio. 
• I - função mapeando os símbolos de A sobre 
o universo U: 
 A cada constante c de A, I associa um elemento 
de U, denotado por I(c). 
 A cada símbolo funcional n-ário f de A, I 
associa uma função de Um em U, denotada por 
I(f). 
 A cada símbolo predicativo n-ário P de A, I 
associa uma relação sobre Um, denotada por 
I(P). 
 Função de avaliação para A sobre I – função v 
que associa a cada variável de A um elemento 
de U. 
 Função de avaliação para L(A) induzida por 
uma estrutura I e uma função de avaliação v 
para o alfabeto A é a função ν(v,I): L(A) → U 
∪ {F,V}. 
________________________________________________________________________________________ 
 
Prof. Sérgio Gorender Lógica 
 Avaliação dos termos – 
ν[v,I](x) = v(x), para cada variável x de A. 
ν[v,I](c) = I(c), para cada constante c de A. 
ν[v,I](f(t1,...,tn)) = I(f)(ν[v,I](t1),...,ν[v,I](tn)) 
 Avaliação das fórmulas – 
ν[v,I](t1 = t2) = V, se ν[v,I](t1) = ν[v,I](t2) 
F, em caso contrário 
ν[v,I](P(t1,...,tn)) = V, se d1,...,dn) ∈ I(P) 
F, em caso contrário 
onde di = ν[v,I](ti), para i = 1,...,n 
ν[v,I](~p) = V, se ν[v,I](p) = F 
 F, se ν[v,I](P) = V 
ν[v,I](P∧Q) = V, se ν[v,I](P) = ν[v,I](Q) = V 
F, em caso contrário 
ν[v,I](P∨Q) = F, se ν[v,I](P) = ν[v,I](Q) = F 
V, em caso contrário 
ν[v,I](P→Q) = F, se ν[v,I](P) = V e ν[v,I](Q) = F 
V, em caso contrário 
ν[v,I](P≡Q) = V, se ν[v,I](P) =ν[v,I](Q) 
F, em caso contrário 
________________________________________________________________________________________ 
 
Prof. Sérgio Gorender Lógica 
ν[v,I](∀x(P)) = V, se ν[u,I](P) = V para toda função 
de avaliação u para A diferindo de 
v apenas no valor de x 
F, em caso contrário 
ν[v,I](∃x(P)) = V, se ν[u,I](P) = V para alguma 
função de avaliação u para A 
diferindo de v apenas no valor de 
x 
F, em caso contrário. 
 
 
________________________________________________________________________________________ 
 
Prof. Sérgio Gorender Lógica 
 Exercícios 
• Seja I uma interpretação sobre o domínio U dos números racionais 
(Q)*, diferentes de zero, tal que I[a]=1, I[b]=25, I[x]=13, 
I[y]=77,I[f]=÷, I[p]=<. 
)),,((),()
)),(),(()
),(),()
))),,((),(()
)),(,(),()
),()
),()
xbafPyxyPxg
yxPyxyPxf
yxPyxyPxe
bbafPyxPyxd
bafbPyxyPxc
yxxPb
yxyPxa
→∃∀
→∃∀
→∃∀
→∃∀
→∃∀
∃
∃∀
 
 
• Seja J uma interpretação sobre os números inteiros Z, tal que: J[a]=0, 
J[x]=-1, J[y]=0, J[P]=<, J[Q]=>, J[f]=fJ, onde fJ(d) = d + 1. Determine 
as interpretações das fórmulas a seguir. 
)),(),(()
)),(),(()
)),(),(()
))(,(),()
),()
))),((),(()
),()
yxQyxPxe
yxQyxPxd
yxQyxPxc
xfxPaxPd
yxxPyc
yyfPayPyb
xyyPa
∧∃
∨∃
∨∀
∧
∀∃
∨∀
∃
 
________________________________________________________________________________________ 
 
Prof. Sérgio Gorender Lógica 
 Propriedades semântica 
• Satisfazibilidade de fórmulas: 
 Uma fórmula H é satisfazível quando existe 
pelo menos uma interpretação I tal que I[H] = V 
• Fórmula válida: 
 Uma fórmula H não é válida (não é uma 
tautologia) se existe uma interpretação J tal que 
J[H] = F. 
 Duas fórmulas H e G são iguais em uma 
interpretação I se I[H] = V ↔ I[G] = V. 
 Uma fórmula G é uma tautologia se para toda 
interpretação J, temos que J[G] = V. 
________________________________________________________________________________________ 
 
Prof. Sérgio Gorender Lógica 
 Dedução Natural. 
• Apresentado em 1934 por Gentzen, como o 
cálculo NJ para a Lógica Intuicionística, e como o 
cálculo NK para a Lógica Clássica. 
• Composto de regras de introdução e eliminação 
para cada conectivo lógico, e para os 
quantificadores. 
• Princípio da inversão – a regra de introdução é o 
inverso da regra de eliminação. 
________________________________________________________________________________________ 
 
Prof. Sérgio Gorender Lógica 
• Regras de inferência: 
 Conjunção: 
 Disjunção: 
 Implicação: 
• A introdução da implicação é conhecida 
como regra de descarte, pois descarta uma 
suposição. Uma suposição descartada não 
poderá ser novamente utilizada na prova. 
• A regra de eliminação é o Modus Ponens. 
∧−
∧
I
BA
BA 
∧−
∧
1E
A
BA ∧−∧ 2E
B
BA
∨−
∨
1I
BA
A
∨−
∨
E
C
CCBA
BA
 
][ ][ ∨−
∨
2I
BA
B
→−
→
I
BA
B
A][
→−
→
E
B
ABA 
________________________________________________________________________________________ 
 
Prof. Sérgio Gorender Lógica 
 Negação: 
• A regra de introdução pode ser vista como um 
caso especial da introdução da implicação, 
visto que ¬A é uma abreviação de A→Λ. Λ 
significa a contradição, o falso. 
• A primeira regra de eliminação da negação 
representa e lei de contradição. A segunda 
expressa o fato de que se uma proposição 
falsa procede então qualquer proposição 
procede. 
¬−
¬
Λ
I
A
A][
¬−
Λ
¬
1
 
E
AA
¬−
Λ
2
 
E
C
________________________________________________________________________________________ 
 
Prof. Sérgio Gorender Lógica 
 Quantificador Universal: 
• Na regra de introdução x é um elemento 
arbitrário qualquer. P(x) não deve depender 
de qualquer suposição na qual x ocorra. 
• Na eliminação, se P é válido para qualquer 
elemento x, então será válido para um 
elemento específico t. 
 Quantificador Existencial: 
• Na introdução, se P é válido para um 
elemento a, do domínio, então existe um x 
para o qual P(x) é verdade. 
∀−
∀
I
xPx
xP
)(.
)(
∀−
∀
E
tP
xPx
)(
)(.
∃−
∃
I
xPx
aP
)(.
 )(
∃−
∃
E
C
CxPx
tP
 )(.
)]([ 
________________________________________________________________________________________ 
 
Prof. Sérgio Gorender Lógica 
• Na eliminação supõe-se P(t), sendo t uma 
nova variável, instanciando os elementos do 
domínio de x, de forma que t representa 
sucessivamente todos os elementos deste 
domínio. Se P(t) procede, e desta suposição 
se chega a uma fórmula C, que não contém t e 
não depende de nenhuma suposição que 
contenha t, então se tem a prova de C 
independente da suposição de P(t). t não pode 
ocorrer livre em C. 
• Existe uma analogia entre o Quantificador 
Existencial e o Conectivo da Disjunção, uma 
vez que o primeiro é uma generalização do 
segundo. 
• Esta mesma analogia existe entre o 
Quantificador Universal e o Conectivo da 
Conjunção. 
________________________________________________________________________________________ 
 
Prof. Sérgio Gorender Lógica 
 Formas normais. 
 Forma Clausal – forma na qual as declarações 
devem ser escritas para aplicar a resolução. 
 Forma Normal Prenex – fórmula P na forma 
Q(M) onde Q (o prefixo de P) é uma cadeia de 
quantificadores e M (a matriz de P) é uma 
fórmula sem ocorrências de quantificadores. 
• Uma fórmula da Lógica de Predicados que 
não contém quantificadores é chamada de 
fórmula aberta. 
• Ex: ∀x∃y(p(x,y) → (q(x)∧q(y))) 
 Forma normal conjuntiva – fórmula na forma 
normal prenex na qual a matriz é uma 
conjunção de disjunções de fórmulas atômicas, 
negadas ou não. 
• Ex: ∀x∃y((~p(x,y)∨q(x))∧(~p(x,y)∨q(y))) 
 Cláusula – fórmula bem formada. Escrita na 
forma normal conjuntiva, sem instâncias do 
conectivo ∧. 
________________________________________________________________________________________ 
 
Prof. Sérgio Gorender Lógica 
 Skolemização 
• Substituição dos quantificadores existenciais 
em uma fórmula por símbolos funcionais, 
chamados funções de Skolem. 
• Método de eliminação de quantificadores 
existenciais. 
• O resultado de aplicar a skolemização em 
uma fórmula H é uma fórmula G, sem 
quantificadores existenciais. 
• As fórmulas H e G não são necessariamente 
equivalentes, mas garante-se que H é 
insatisfativel se e somente se G é 
insatisfativel! 
• Substituir a subfórmula ∃y(R), da fórmula Q, 
por R[y/f(x1,...,xn)], onde x1,...,xn é uma lista 
de todas as variáveis livres de ∃y(R) e f é 
qualquer símbolo funcional n-ário (função de 
Skolem) que não ocorre em Q. 
• Se não houver variáveis livres em ∃y(R), 
substituir ∃x(R) por R[y/c], onde c é uma 
constante que não ocorre em Q. 
________________________________________________________________________________________ 
 
Prof. Sérgio Gorender Lógica 
• Existem dois casos para a skolemização: 
1. ∃x Q(x) – 
• Não existem variáveis quantificadas 
universalmente na fórmula antes do 
quantificador existencial. 
• A variável x é substituída na fórmula, 
em todas as suas ocorrências ligadas no 
quantificador existencial, por uma 
nova constante. 
• Assumimos que a constante representa 
o valor que torna Q verdadeiro. 
• Q(a). 
________________________________________________________________________________________ 
 
Prof. Sérgio Gorender Lógica 
2. ∀x∃y P(x,y) – 
• Existem quantificadores universais na 
fórmula antes do quantificador 
existencial. 
• A variável y é substituída por uma 
função de skolem – uma nova função 
definida em termos das variáveis que 
aparecem quantificadas universalmenteantes do quantificador existencial. 
• ∀x P(x, f(x)) 
• Após a fórmula estar na forma prenex deve-se 
eliminar os quantificadores existenciais da 
esquerda para a direita. 
________________________________________________________________________________________ 
 
Prof. Sérgio Gorender Lógica 
• Algoritmo de conversão de uma fórmula para a 
forma clausal: 
1. Se P contiver uma variável livre x, substitua P por 
∃x(P). Repita este passo até que a fórmula não 
tenha variáveis livres. 
2. Elimine todo quantificador ∀x ou ∃x que não 
contenha nenhuma ocorrência livre de x no seu 
escopo. (Elimine todo quantificador 
desnecessário) 
3. Eliminar -> e ≡: A -> B eqüivale a ~A ∨ B 
A ≡ B eqüivale a (~A ∨ B)∧(A ∨ ~B) 
4. Reduzir o escopo de ~: ~(~P) = P - Lei de Morgan 
~∀x(Q) = ∃x(~Q) 
~∃x(Q) = ∀x(~Q) 
~(Q ∧ R) = (~Q ∨ ~R) 
~(Q ∨ R) = (~Q ∧ ~R) 
5. Padronizar variáveis: cada quantificador ligado a 
uma variável diferente. Se houver dois 
quantificadores governando a mesma variável, 
substitua a variável de um deles e todas as suas 
ocorrências livres no escopo do quantificador por 
uma nova variável que não ocorra na fórmula. 
6. Mover quantificadores para a esquerda da fórmula 
– Forma Normal Prenex. 
________________________________________________________________________________________ 
 
Prof. Sérgio Gorender Lógica 
7. Eliminar os quantificadores existenciais – 
substituir cada quantificador existencial por uma 
função de Skolem que forneça o mesmo resultado 
- ∃ - Existe um valor. 
8. Eliminar o prefixo (quantificadores universais) – 
todas as variáveis são quantificadas 
universalmente. 
9. Converter a matriz em uma conjunção de 
disjunções – forma normal conjuntiva - 
propriedade distributiva – (A ∧ B) ∨ C = (A ∨ C) 
∧ (B ∨ C) 
 A ∨ (B ∧ C) = (A ∨ B) ∧ (A ∨ C) 
10. Criar uma cláusula separada para cada 
conjunção. 
11. Padronizar as variáveis – duas cláusulas não 
devem fazer referência a uma mesma variável. 
________________________________________________________________________________________ 
 
Prof. Sérgio Gorender Lógica 
 Teorema de Herbrand – 
• Um conjunto de cláusulas S é insatisfatível se e 
somente se existe um conjunto finito de instâncias 
básicas das cláusulas de S que é insatisfatível. 
• Procedimento de Herbrand – 
 Dado um conjunto S de cláusulas, gere 
sistematicamente todos os conjuntos finitos de 
instâncias básicas de cláusulas em S; 
 Para cada conjunto B gerado, teste se B é 
insatisfatível; 
 Pare com SIM, se B for insatisfatível, e pare 
com NÃO, se não houver novos conjuntos a 
gerar. 
________________________________________________________________________________________ 
 
Prof. Sérgio Gorender Lógica 
• Observações: 
 Sempre para com SIM quando S for realmente 
insatisfatível; 
 Nunca pára quando S for satisfatível e existir 
um conjunto infinito de instâncias básicas de 
cláusulas de S; 
 Sempre pára com NÃO quando S for 
satisfatível mas o conjunto de instâncias básicas 
de cláusulas de S é finito. 
 As cláusulas são comparadas, duas a duas, 
inferindo uma nova cláusula a partir delas. 
• Para que dois predicados possam ser comparados 
seus argumentos precisam ser compatíveis. 
• Unificação – procedimento que compara dois 
literais e verifica se eles podem ser tornados 
idênticos por um conjunto de substituições. As 
substituições devem ser consistentes. 
________________________________________________________________________________________ 
 
Prof. Sérgio Gorender Lógica 
 Resolução – 
• Procedimento de prova que executa em uma única 
operação a série de processos envolvidos no 
raciocínio com declarações em lógica de 
predicados. Baseado no Teorema de Herbrand. 
Produz provas por refutação. (Cálculo) 
 Refutação – prova uma declaração mostrando 
que a negação da declaração produz uma 
contradição em relação às declarações 
conhecidas. 
 
________________________________________________________________________________________ 
 
Prof. Sérgio Gorender Lógica 
• Algoritmo Unificar(L1,L2) 
1. Se L1 e L2 forem ambos constantes ou variáveis, 
então: 
1.1. Se L1 e L2 forem idênticos, então retorne 
NIL. 
1.2. Caso contrário, se L1 for uma variável, então, 
Se L1 ocorrer em L2, retorne [FRACASSO], 
caso contrário retorne (L2/L1). 
1.3. Caso contrário, se L2 for uma variável, então, 
Se L2 ocorrer em L1, retorne [FRACASSO], 
ou retorne (L1/L2). 
1.4. Caso contrário, retorne [FRACASSO]. 
2. Se os símbolos do predicado original em L1 e L2 
não forem idênticos, então retorne [FRACASSO]. 
3. Se L1 e L2 tiverem um número diferente de 
argumentos, então retorne [FRACASSO]. 
4. Atribua NIL a SUBST. (Ao final deste 
procedimento, SUBST conterá todas as 
substituições usadas para unificar L1 e L2.) 
5. De i ← 1 para número de argumentos em L1: 
5.1. Chame Unificar com o i-ésimo argumento de 
L1 e com o i-ésimo argumento de L2, 
colocando o resultado em S. 
________________________________________________________________________________________ 
 
Prof. Sérgio Gorender Lógica 
5.2. Se S contém FRACASSO, então retorne 
[FRACASSO]. 
5.3. Se S não for igual a NIL, então: 
5.3.1. Aplique S ao que resta em L1 e L2. 
5.3.2. SUBST := JUNTAR(S,SUBST). 
6. Retorne SUBST. 
 Exemplo de unificação: 
Odeia(x,y) 
Odeia(Marcos, César) 
(Marcos/x,César/y) 
 
________________________________________________________________________________________ 
 
Prof. Sérgio Gorender Lógica 
Algoritmo resolução – 
1.Converta todas as declarações de F para forma 
clausal. 
2.Negue P e converta o resultado para forma clausal. 
Acrescente-o ao conjunto de cláusulas obtido em 1. 
3.Repita até ser encontrada uma contradição, até não 
ser mais possível nenhum progresso, ou até que uma 
quantidade predeterminada de esforço tenha sido 
despendida: 
Selecione duas cláusulas. Chame-as de cláusulas-
pai. 
Resolva as duas juntas. O resolvente será a 
disjunção de todos os literais de ambas as 
cláusulas-pai com a realização das substituições 
apropriadas e com a seguinte exceção: se houver 
um par de literais T1 e ~T2 tal que uma das 
cláusulas-pai contenha T1 e a outra contenha ~T2 e 
se T1 e T2 forem unificáveis, então nem T1 nem T2 
devem aparecer no resolvente. T1 e T2 são 
chamados de literais complementares. Use a 
substituição produzida pela unificação para criar o 
resolvente. Se houver mais de um par de literais 
complementares, apenas um par deve ser omitido 
do resolvente. 
________________________________________________________________________________________ 
 
Prof. Sérgio Gorender Lógica 
Se o resolvente for a cláusula vazia, então uma 
contradição foi encontrada. Se não, acrescente-o 
ao conjunto de cláusulas disponíveis ao 
procedimento. 
 Estratégias que orientam a escolha de cláusulas 
para acelerar o encontro de uma contradição, caso 
ela exista: 
 Resolver apenas os pares de cláusulas que 
contém literais complementares, já que apenas 
estas resoluções produzem novas cláusulas que 
são mais difíceis de satisfazer do que as 
cláusulas-mãe. Indexe as cláusulas pelos 
predicados que elas contêm, indicando se o 
predicado é negado. Depois, dada uma 
determinada cláusula, possíveis resolventes que 
contêm uma ocorrência complementar de um de 
seus predicados podem ser localizados 
diretamente. 
 Elimine certas cláusulas assim que elas forem 
geradas para que não participem de resoluções 
posteriores. Dois tipos de cláusula devem ser 
eliminados: tautologias (que nunca podem ser 
satisfeitas) e cláusulas que estão subordinadas a 
outras cláusulas (isto é, é mais fácil satisfazê-
las. Por exemplo, P ∨ Q está subordinada a P). 
________________________________________________________________________________________Prof. Sérgio Gorender Lógica 
 Sempre que possível, resolva uma das cláusulas 
que seja parte da declaração que estamos 
tentando refutar, ou uma cláusula gerada pela 
resolução desse tipo de cláusula. Esta estratégia 
é chamada de estratégia do conjunto de apoio e 
corresponde à intuição de que a contradição que 
estamos procurando precisa envolver a 
declaração que estamos tentando provar. 
Qualquer outra contradição diria que as 
declarações nas quais acreditávamos 
anteriormente eram inconsistentes. 
 Sempre que possível, resolva cláusulas que 
tenham um único literal. Tais resoluções geram 
novas cláusulas com menos literais do que a 
maior de suas cláusulas-pai e, assim, 
provavelmente estão mais perto do objetivo de 
um resolvente com zero termos. Esse método é 
chamado de estratégia da preferência unitária. 
 
 
 
 
 
 
________________________________________________________________________________________ 
 
Prof. Sérgio Gorender Lógica 
• Exemplo de resolução na Lógica de Predicados: 
Homem(Marcos) 
Pompeano(Marcos) 
~Pompeano(x1) ∨ Romano(x1) 
Soberano(César) 
~Romano(x2) ∨ Leal_A(x2,César) ∨ Odeia(x2,César) 
Leal_A(x3,f1(x3)) 
~Homem (x4) ∨ ~Soberano(y1) ∨ 
~Tenta_Assassinar(x4,y1) ∨ ~Leal_A(x4,y1) 
Tenta_Assassinar(Marcos,César) 
? Odeia(Marcos,César) 
	Lógica de Predicados de Primeira Ordem
	todo o a é um b
	A é um a
	A é um b
	Símbolo de igualdade: =
	F, em caso contrário
	F, em caso contrário
	V, em caso contrário
	? Odeia(Marcos,César)

Continue navegando