Post on 17-Apr-2015
Tópicos de Lógica de Primeira Ordem-1
Formalizar semântica da LPO
Tratamento das noções semânticas da LPO
Proposicional 1ª Ordem
Tabela de verdade
Atribuições de verdade
Domínios de discurso
Estruturas de 1ª ordem
Informal
Formal
Atribuições de verdade: insuficientes para a semântica de frases quantificadas
x P(x)
x P(x) verdade não é função da verdade de outras frases
Tópicos de Lógica de Primeira Ordem-2
Representação rigorosa de um mundo
Estrutura de 1ª ordem:– especifica colecção de objectos como domínio de discurso– estabelece as propriedades dos objectos
Exemplo: sublinguagem da do Tarski´s World– Predicados Cube Larger =– Nomes c– Há número infinito de frases na linguagem
Descrever o mundo no que diz respeito à linguagem exemplo:– D={b1, b2, b3, b4} conjunto de objectos é domínio de discurso– Factos: acerca das propriedades que podem ser expressas
posição dos objectos: irrelevante, não se pode falar dela forma dos objectos: predicado Cube Cu={b1, b2, b3} subconjunto do domínio de discurso é extensão do predicado
Tópicos de Lógica de Primeira Ordem-4
Representação rigorosa de um mundo
Descrever o mundo(cont.)– posição dos objectos: é irrelevante, não há predicado que fale dela– tamanho dos objectos
La ={<b2,b1>, <b3,b1>, <b3,b2>, <b2,b4>, <b3,b4>} <x,y> pares em que x e y são elementos de D <x,y> La sse x é maior que y
– função de nomeação associa cada nome com o seu referente- objecto do domínio a que o nome
está associado
– identidade entre objectos- predicado = extensão fixada dado D {<b1,b1>, <b2,b2>, <b3,b3>, <b4,b4>}
Tópicos de Lógica de Primeira Ordem-5
Estrutura de 1ª ordem Agrupa
– domínio do discurso– extensões dos predicados– referentes dos nomes
Função única M (de modelo)– Domínio de M
predicados da linguagem nomes da linguagem símbolo de quantificador
– M() é o conjunto não vazio D- domínio do discurso– M(p) para cada predicado n-ário da linguagem
conjunto de tuplos <x1,x2,…, xn> de elementos de D - extensão de p
– M(c) para cada nome da linguagem é elemento de D - referente de c
Notação simplificadaM(Cube) - CubeM
M() - DM
Tópicos de Lógica de Primeira Ordem-6
Estruturas espúrias
Frases atómicas podem ser não independentes– há atribuições de verdade que não representam possibilidades genuínas– há estruturas de 1ª ordem que não representam possibilidades genuínas
Consideram-se apenas as estruturas que respeitam as relações entre frases atómicas
Exemplo: – acrescentando predicado Tet à linguagem exemplo– Estruturas em que um objecto esteja simultaneamente em TetM e em
CubeM: são espúrias
Tópicos de Lógica de Primeira Ordem-7
Verdade e satisfaçãox P(x) x P(x) Quando são verdadeiras? Informalmente:
– Satisfação de uma fórmula por um objecto c - novo nome S(c) quando é verdadeiro
Formalmente: nas estruturas de 1ª ordem– M: estrutura de 1ª ordem com domínio D– Atribuição de variáveis: função (parcial) h das variáveis para D– Exemplo: D={a,b,c}
h1 atribui b à variável x h2 atribui a,b,c às variáveis x,y,z respectivamente h3 atribui b a todas as variáveis da linguagem h4 é a função vazia (h)
Tópicos de Lógica de Primeira Ordem-8
Atribuição de verdade
Atribuição é apropriada para a wff P:– Todas as variáveis de P estão no domínio de h– No exemplo:
h1 é apropriada para qualquer wff com variável x, ou sem variáveis h2 é apropriada para qualquer wff com variáveis em {x,y,z} h3 é apropriada para todas as wff h4 é apropriada para wff’s sem variáveis livres
Modificação de uma atribuição de variáveis h– notação h[v/b]– atribuição cujo domínio é o de h acrescido da variável v – toma os mesmos valores que h, excepto para v– atribui a v o valor b
Tópicos de Lógica de Primeira Ordem-9
Exemplo
h1 atribui b à variável x– h1[y/c] atribui b à variável x e c à variável y– h1[x/c] só atribui valor a x e é c
h2 atribui a,b,c às variáveis x,y,z respectivamente– h2[x/b] atribui os valores b,b,c às variáveis x,y,z – h2[u/c] atribui os valores c,a,b,c às variáveis u,x,y,z
h3 atribui b a todas as variáveis da linguagem– h3[y/b] é a mesma atribuição que h3 – h3[y/c] atribui c à variável y e b às restantes
Tópicos de Lógica de Primeira Ordem-10
Satisfação em M com atribuição h
Satisfação da wff P na estrutura M com atribuição h– Fórmula atómica
Ex: P(x,c,y) h tem de atribuir elementos de D a x e y
h(x) = a h(y) = d M atribui a c uma denotação, seja b
Nesta estrutura e atribuição: P(x,c,y) afirma que o tuplo <a,b,d> está na extensão de P
<a,b,d> PM
h satisfaz P(x,c,y)– Negação
P é Q h satisfaz P sse h não satisfaz Q
Tópicos de Lógica de Primeira Ordem-11
Satisfação em M com atribuição h
Satisfação da wff P na estrutura M com atribuição h (cont.)– Conjunção
P é QR h satisfaz P sse h satisfaz Q e h satisfaz R
– Disjunção P é QR h satisfaz P sse h satisfaz Q ou h satisfaz R ou ambos
– Quantificação universal P é v Q h satisfaz P sse para todo o d DM h[v/d] satisfaz Q
– Quantificação existencial P é v Q h satisfaz P sse para algum d DM h[v/d] satisfaz Q
Notação:M |= P [h]
Tópicos de Lógica de Primeira Ordem-12
Exemplo D= {a,b,c} GostaM = {<a,a>, <a,b>, <c,a>} Fórmula:
y (Gosta(x,y) Gosta(y,y)) variável livre x– h tem de atribuir valor a x: senão seria inadequada
valor que h atribui a x: e (e tem de ser a, b ou c)
– por : h satisfaz P sse há um objecto d DM tal que h[y/d] satisfaz
Gosta(x,y) Gosta(y,y)
– por h[y/d] deve satisfazer Gosta(x,y) e não Gosta(y,y)
– fórmulas atómicas <e,d> deve estar na extensão de Gosta, mas <d,d> não verifica-se para e=a e d=b então h atribui a a x
Tópicos de Lógica de Primeira Ordem-13
Verdade numa estrutura de 1ª ordem
Verdade de uma frase numa estrutura de 1ª ordem M Frase P é verdadeira numa estrutura M sse a atribuição vazia
h satisfaz P em M– P não é verdadeira em M: P é falsa em M
M |= P P é verdadeira em M Verdade lógica
– L: Linguagem de 1ª ordem– S: colecção de todas as estruturas não espúrias para L– M S– P: frase de L– P é logicamente verdadeira se é verdadeira em toda a estrutura
Tópicos de Lógica de Primeira Ordem-14
Verdade e Consequência lógicas
– L: Linguagem de 1ª ordem– S: colecção de todas as estruturas não espúrias para L– M S– P: frase de L
P é logicamente verdadeira se é verdadeira em toda a estrutura M
P é satisfazível se é verdadeira em alguma estrutura M P é falsificável se é falsa nalguma estrutura M (se não é
logicamente verdadeira) Q é consequência lógica de um conjunto T={P1, …} de
frases se toda a estrutura M que torna todas as frases de T verdadeiras também torna Q verdadeira
Tópicos de Lógica de Primeira Ordem-15
Skolemização
Símbolos de função: evitam frases com quantificadores encaixados x y Vizinho(x,y) Para um domínio de discurso (estrutura M)
– frase afirma que todo o b no domínio tem pelo menos um vizinho c– M |= Vizinho(x,y) [b,c]– Sendo verdadeira a frase original: pode fazer-se função f de
“escolha do vizinho”– M |= Vizinho(x,y) [b,f(b)]– Na frase original: símbolo de função para a função f– M |= x Vizinho(x,f(x))
f é função de Skolem para a frase quantificada
Tópicos de Lógica de Primeira Ordem-16
Skolemização
Em geral
x y P(x,y)
x P(x,f(x)) forma Skolemizada
Todo o mundo que torna verdadeira a Skolemização torna verdadeira a frase original
Todo o mundo que torna verdadeira a frase inicial pode ser transformado num outro que torna a Skolemização verdadeira: interpretar o símbolo de função f por uma função f que escolhe, para todo o objecto b do domínio, um objecto c tal que satisfaçam P(x,y)
Tópicos de Lógica de Primeira Ordem-17
Unificação de termos
Aplicação: linguagens com símbolos de função Exemplo:
O pai do Rui anda de moto
Nenhum avô anda de moto
O avô do Zé anda de moto
Nenhum pai anda de moto
Exemplo:P(f(a)
x P(f(g(x)))
P(f(g(a)))
x P(f(x))
compatíveis
incompatíveis
possível: f(a) é P mas nenhum f(g(b)) é P
impossível: basta substituir x por g(a)
Tópicos de Lógica de Primeira Ordem-18
Unificação
f(a) e f(g(x)) não unificáveis
f(g(a)) e f(x) unificáveis
Definição de unificação– Termos t1 e t2 unificáveis se– Existe substituição de variáveis de t1 e t2 por termos tais que os
resultados da substituição são termos sintacticamente idênticos– Conjunto T de termos unificável se– Existe uma substituição única para algumas das variáveis que
ocorrem nos termos de T tal que os termos resultantes são todos sintacticamente idênticos
Noção puramente sintácticapai(Rui) e pai(pai(x)) não unificáveis
pai(pai(Rui)) e pai(y) unificáveis
Tópicos de Lógica de Primeira Ordem-19
Exemplos de unificação
g(x) h(y)
h(f(x,x)) h(y)
f(x,y) f(y,x)
g(g(x)) g(h(y))
g(x) g(h(z))
g(x) g(h(x))
Algoritmo de unificação: decide se 2 termos são unificáveis e dá o unificador mais geral caso sejam
Exemplo: (11.16)– Mostrar que há um número infinito de substituições que unificam
os termos g(f(x,y)) e g(f(h(y), g(z)))
Indicar a substituição mais geral.
Quais são unificáveis?Quais os unificadores?
Tópicos de Lógica de Primeira Ordem-20
Resolução em LPO Problema:
P1, …Pn premissas
Q conclusão
ReformulandoP1 ... Pn Q é não satisfazível
Resolução: requer frases sem quantificadores– Possível reformular fórmulas da LPO para aplicar resolução
Frase universal: forma prenex só com Exemplo: x y P(x,y) (S)
– linguagem só com 2 nomes: b e c; sem símbolos de função– P(b,b) P(b,c) P(c,b) P(c,c) (S’)
S satisfazível S’ satisfazível S’ não satisfazível S não satisfazível
Provar que Q é consequência lógica das
premissas
Tópicos de Lógica de Primeira Ordem-21
Resolução em LPO
1. Escrever cada frase em forma prenex
x1 y1 x2 y2 … P(x1, y1, x2, y2, …)
2. Skolemizar cada uma das frases
x1 x2 … P(x1, f1(x1), x2, f2(x1,x2), …)
3. Escrever o resultado em forma normal conjuntiva
P1 P2 … Pn Pi: disjunção de literais
4. Distribuir os quantificadores pela conjunção e construir conjunto de frases da forma
x1 x2 … Pi
5. Renomear as variáveis ligadas para que não se use o mesmo nome 2 vezes
6. Abandonar os e ficando com conjunto de cláusulas
7. Resolver as cláusulas, usando a unificação para desfazer os conflitos entre literais
Tópicos de Lógica de Primeira Ordem-22
Exemplos
Exemplo 1x P(x,b)
y P(f(y), b)
Passo 6: unificando x e f(y) as 2 cláusulas resolvem para
Exemplo 2Premissa (A) x (P(x,b) Q(x))
Premissa (B) y (P(f(y), b) Q(y))
Conclusão(C) y (Q(y) Q(f(y)))
Forma prenex para C
y (Q(y) Q(f(y)))
Skolemizando
Q(c) Q(f(c))
mostrar que não são satisfazíveis simultaneamente
Mostrar que A B C não é satisfazível
c: função de Skolem de aridade 0
Tópicos de Lógica de Primeira Ordem-23
Exemplos
Exemplo 2 (cont.)Cláusulas a resolver
1. {P(x,b), Q(x)} (de A)
2. {P(f(y), b), Q(y)} (de B)
3. {Q(c)} (de C)
4. {Q(f(c))} (de C)
Resolventes Cláusulas Substituição
5. {Q(f(y)) , Q(y)} 1,2 x por f(y)
6. {Q(f(c))} 3,5 y por c
7. 4,6 ---
Tópicos de Lógica de Primeira Ordem-24
Exemplos
Exemplo 3Todos admiram alguém que os admira excepto se admirarem o Santana
Há pessoas que se admiram mutuamente, uma das quais pelo menos admira o Santanax [A(x, s) y (A(x,y) A(y,x))] (S1)
x y [A(x, s) A(x,y) A(y,x)] (S2)
Provar: S2 consequência lógica de S1, ou
S1 e S2 não satisfazíveis simultaneamente
S2: x y [A(x, s) A(x,y) A(y,x)]
S1: x y [A(x, s) (A(x,y) A(y,x))] (Forma prenex)
x [A(x, s) (A(x,f(x)) A(f(x),x))] (Skolemização)
x [(A(x, s) A(x,f(x))) (A(x, s) A(f(x),x))] (Forma clausal)
Tópicos de Lógica de Primeira Ordem-25
Exemplos
Exemplo 3 (cont.)Cláusulas a resolver
1. {A(x, s), A(x,f(x))} (de S1)
2. {A(y, s), A(f(y),y)} (de S1)
3. {A(z, s),A(z,w), A(w,z)} (de S2)
Resolventes Cláusulas Substituição
4. {A(s,f(s))} 1,3 w,x e z por s
5. {A(f(s),s)} 2,3 w,y e z por s
6. {A(s,f(s))} 3,5 z por f(s) e w por s
7. 4,6 ---
Tópicos de Lógica de Primeira Ordem-26
Completude
Métodos de prova: manipulações sintácticas num sistema formal
Coerência: Resultado de uma prova é consequência lógica das premissas
Completude: Se um facto é consequência lógica de um conjunto de premissas, pode encontrar-se uma prova para ele no sistema formal
Teorema da completude de Gödel Se numa linguagem de 1ª ordem não existem estruturas
espúrias, então é possível ter um sistema de inferência completo.
Tópicos de Lógica de Primeira Ordem-27
Incompletude
Linguagem com dependências complexas entre as frases atómicas: qualquer sistema de prova é necessariamente incompleto.
Exemplo: linguagem da aritmética.– Não existe sistema formal que permita derivar todos os teoremas da
aritmética
Teorema da Incompletude de Gödel– Sistema simbólico: codificável nos inteiros– Provas no sistema: números inteiros– Afirmações acerca de provas: afirmações acerca de inteiros– Usando a linguagem de 1ª ordem dos inteiros: podem fazer-se
afirmações acerca do que se pode provar.– G- fórmula que diz de si própria que não é derivável– G tem de ser verdadeira - não pode ser falsa num sistema coerente.