Lógica de Predicados Teorema de Herbrand. Biografia Jacques Herbrand (Paris, 12 de Fevereiro de...

27
Lógica de Predicados Teorema de Herbrand

Transcript of Lógica de Predicados Teorema de Herbrand. Biografia Jacques Herbrand (Paris, 12 de Fevereiro de...

Page 1: Lógica de Predicados Teorema de Herbrand. Biografia Jacques Herbrand (Paris, 12 de Fevereiro de 1908 Oisans, 27 de Julho de 1931) foi um matemático francês.

Lógica de PredicadosTeorema de Herbrand

Page 2: Lógica de Predicados Teorema de Herbrand. Biografia Jacques Herbrand (Paris, 12 de Fevereiro de 1908 Oisans, 27 de Julho de 1931) foi um matemático francês.

Biografia

• Jacques Herbrand (Paris, 12 de Fevereiro de 1908 — Oisans, 27 de Julho de 1931) foi um matemático francês.

• Trabalhou em lógica matemática e teoria dos corpos de classes.

• Herbrand terminou seu doutorado na École Normale Supérieure em Paris no ano de 1929, com apenas 21 anos.

Page 3: Lógica de Predicados Teorema de Herbrand. Biografia Jacques Herbrand (Paris, 12 de Fevereiro de 1908 Oisans, 27 de Julho de 1931) foi um matemático francês.

Desejo antigo...

• Encontrar um procedimento geral de decisão para verificar a validade (ou inconsistência) de uma fórmula– Leibniz (1700s)– Peano (1700s-1800s)– Hilbert na década de 20

Page 4: Lógica de Predicados Teorema de Herbrand. Biografia Jacques Herbrand (Paris, 12 de Fevereiro de 1908 Oisans, 27 de Julho de 1931) foi um matemático francês.

Church e Turing[1936] -> impossível!!

• Não existe um procedimento de decisão para verificar a validade de fórmulas da lógica de predicados

• Mas existem métodos de prova que podem verificar se uma fórmula é válida se realmente ela for!!

• Para fórmulas inválidas, esses procedimentos são indecidíveis

Page 5: Lógica de Predicados Teorema de Herbrand. Biografia Jacques Herbrand (Paris, 12 de Fevereiro de 1908 Oisans, 27 de Julho de 1931) foi um matemático francês.

Satisfatível X Insatisfatível

• Na lógica matemática, satisfatibilidade e validade são conceitos elementares da semântica. Uma fórmula é satisfatível se é possível achar uma interpretação (modelo) que torne a fórmula verdadeira. Uma fórmula é válida se todas as interpretações tornam a fómula verdadeira.

• Os opostos deste conceito são insatisfatibilidade e invalidade, isto é, uma fórmula é insatisfatível se nenhuma das interpretações tornam a fórmula verdadeira, e inválida se alguma dessas interpretações tornam a fórmula falsa.

Page 6: Lógica de Predicados Teorema de Herbrand. Biografia Jacques Herbrand (Paris, 12 de Fevereiro de 1908 Oisans, 27 de Julho de 1931) foi um matemático francês.

Herbrand• Uma fórmula válida é verdadeira sob todas as suas

interpretações• Herbrand desenvolveu um algoritmo para

encontrar uma interpretação que pode invalidar uma fórmula!

• No entanto, se ela é válida, nenhuma dessas interpretações pode existir – O algoritmo termina após um número finito de

tentativas!

• O método de Herbrand é a base para muitos métodos modernos de prova automática

Page 7: Lógica de Predicados Teorema de Herbrand. Biografia Jacques Herbrand (Paris, 12 de Fevereiro de 1908 Oisans, 27 de Julho de 1931) foi um matemático francês.

Reduzindo o problema

• Um conjunto S de cláusulas é insatisfatível sse for falso sob todas as interpretações sobre todos os domínios

• Mas... é inconveniente e impossível considerar todas as interpretações sobre todos os domínios

• Idéia: usar um domínio especial H, tal que S é insatisfatível se e somente se S é falso sob todas as interpretações sobre H– H é o universo de Herbrand de S

Page 8: Lógica de Predicados Teorema de Herbrand. Biografia Jacques Herbrand (Paris, 12 de Fevereiro de 1908 Oisans, 27 de Julho de 1931) foi um matemático francês.

Universo de Herbrand de um Conjunto de Cláusulas (H)

• Se Ho é o conjunto de constantes que aparecem em S– Se nenhuma constante aparece em S• então Ho é formado por uma única constante, Ho={a}

– Se f é um símbolo funcional n-ário ocorrendo em S, e • se t1, ...,tn são termos que pertencem a H, então o termo

f(t1, ...,tn) também pertence a H

Page 9: Lógica de Predicados Teorema de Herbrand. Biografia Jacques Herbrand (Paris, 12 de Fevereiro de 1908 Oisans, 27 de Julho de 1931) foi um matemático francês.

Exemplos de universos de Herbrand

• S = {P(x) Q(x), P(x)}• H0 = H = {a}

• S = {P(a), P(x) P(f(x))}• H0 = {a}• H1 = {a, f(a)}• H2 = {a, f(a), f(f(a))}• ...• H = H = {a, f(a), f(f(a)), f(f(f(a))), ... }

Page 10: Lógica de Predicados Teorema de Herbrand. Biografia Jacques Herbrand (Paris, 12 de Fevereiro de 1908 Oisans, 27 de Julho de 1931) foi um matemático francês.

Base de Herbrand

• Um termo-base é um elemento de H • Uma base de Herbrand para S é o conjunto B(S)

de todas as fórmulas atômicas da forma P(t1, ...,tn)– P é um símbolo predicativo ocorrendo em S – t1, ...,tn termos-base

• Exemplo: S = {P(x) Q(x), R(f(y))}• H = {a, f(a), f(f(a)), ... }• B(S) = {P(a), Q(a), R(a), P(f(a)), Q(f(a)), R(f(a)), ...}

Page 11: Lógica de Predicados Teorema de Herbrand. Biografia Jacques Herbrand (Paris, 12 de Fevereiro de 1908 Oisans, 27 de Julho de 1931) foi um matemático francês.

Interpretação de Herbrand

• Uma interpretação I para S é uma interpretação de Herbrand para S sse – o domínio U de I é H– para cada constante a de S, aI = a– para cada função f de S, fI(t1, ...,tn) = f(t1, ...,tn), • para cada t1, ...,tn H(S)

• Também chamada de H-interpretação

Page 12: Lógica de Predicados Teorema de Herbrand. Biografia Jacques Herbrand (Paris, 12 de Fevereiro de 1908 Oisans, 27 de Julho de 1931) foi um matemático francês.

Exemplos de H-interpretações

• S = {P(x) Q(x), R(f(y))}• H = {a, f(a), f(f(a)), ... }• B(S) = {P(a), Q(a), R(a), P(f(a)), Q(f(a)), R(f(a)), ...}

• Algumas H-interpretações para S:

• I1 = {P(a), Q(a), R(a), P(f(a)), Q(f(a)), R(f(a)), ... }• I2 = {P(a), Q(a), R(a), P(f(a)), Q(f(a)), R(f(a)), ... }• I3 = {P(a), Q(a), R(a), P(f(a)),Q(f(a)), R(f(a)),...}

Page 13: Lógica de Predicados Teorema de Herbrand. Biografia Jacques Herbrand (Paris, 12 de Fevereiro de 1908 Oisans, 27 de Julho de 1931) foi um matemático francês.

H-interpretação correspondente

• Dada uma interpretação I, uma H-interpretação I* correspondente a I é uma H-interpretação em que– Sendo h1, ..., hn elementos de H (o universo Herbrand de S)– Sendo cada hi mapeado para alguma variável di – Se é atribuído a P(d1, ... , dn) V(F) por I, – então para P(h1, ... , hn) também é atribuído V(F) em I*

• Se uma interpretação I sobre algum domínio D satisfaz um conjunto de cláusulas S, então qualquer H-interpretação I* correspondente a I também satisfaz S

• Exs: I1 e I2

Page 14: Lógica de Predicados Teorema de Herbrand. Biografia Jacques Herbrand (Paris, 12 de Fevereiro de 1908 Oisans, 27 de Julho de 1931) foi um matemático francês.

Árvores semânticas

• Encontrar uma prova para um conjunto de cláusulas S é – gerar uma árvore semântica fechada!

• Árvores semânticas completas– contém todas as possibilidades

• Em LPO, as árvores são infinitas...• Mas, se S é insatisfatível, uma árvore

semântica sobre H é fechada e finita!

Page 15: Lógica de Predicados Teorema de Herbrand. Biografia Jacques Herbrand (Paris, 12 de Fevereiro de 1908 Oisans, 27 de Julho de 1931) foi um matemático francês.

Árvore semântica

• S = {P(x), Q(f(x))}• B = {P(a), Q(a), P(f(a)), Q(f(a)), P(f(f(a))),...}.

Page 16: Lógica de Predicados Teorema de Herbrand. Biografia Jacques Herbrand (Paris, 12 de Fevereiro de 1908 Oisans, 27 de Julho de 1931) foi um matemático francês.

Exemplos de árvores semânticas completas

Page 17: Lógica de Predicados Teorema de Herbrand. Biografia Jacques Herbrand (Paris, 12 de Fevereiro de 1908 Oisans, 27 de Julho de 1931) foi um matemático francês.

Nós de falha

• S = {P, Q v R, P v Q, P v R}• B = {P, Q, R}.

Page 18: Lógica de Predicados Teorema de Herbrand. Biografia Jacques Herbrand (Paris, 12 de Fevereiro de 1908 Oisans, 27 de Julho de 1931) foi um matemático francês.

Árvore semântica fechada

• S = {P(x), P(x) v Q(f(x)), Q(f(a))}

• B = {P(a), Q(a), P(f(a)), Q(f(a)), ...}

Page 19: Lógica de Predicados Teorema de Herbrand. Biografia Jacques Herbrand (Paris, 12 de Fevereiro de 1908 Oisans, 27 de Julho de 1931) foi um matemático francês.

Teorema de Herbrand

• Um conjunto de cláusulas é insatisfatível se há um conjunto finito insatisfatível de instâncias-base de cláusulas de S.

• Reduz o problema da insatisfatibilidade de um conjunto de cláusulas ao problema de gerar um conjunto finito de instâncias básicas das cláusulas do conjunto que seja insatisfatível.

• Tal conjunto sempre existirá se S for insatisfatível.– ...mas poderá não existir em caso contrário.

Page 20: Lógica de Predicados Teorema de Herbrand. Biografia Jacques Herbrand (Paris, 12 de Fevereiro de 1908 Oisans, 27 de Julho de 1931) foi um matemático francês.

Método de Herbrand

• 1. Dado um conjunto S de cláusulas, gere todos os conjuntos finitos S0, S1, ..., Sn, ... de instâncias-base.

• 2. Para cada conjunto Si gerado, teste se Si é insatisfatível.

• 3. Pare com SIM, se Si é insatisfatível• 4. Pare com NÃO, se não houver novos

conjuntos a gerar.

Page 21: Lógica de Predicados Teorema de Herbrand. Biografia Jacques Herbrand (Paris, 12 de Fevereiro de 1908 Oisans, 27 de Julho de 1931) foi um matemático francês.

Decidibilidade• Esse procedimento:– sempre para com SIM quando S for insatisfatível.– nunca para quando S for satisfatível e existir um conjunto

infinito de instâncias básicas de cláusulas de S.– sempre para com NÃO quando S for satisfatível mas o

conjunto de instâncias básicas de cláusulas de S é finito.

• Procedimento de decisão parcial para o problema da insatisfatibilidade de conjunto de cláusulas.

• Procedimento de decisão para o problema da insatisfatibilidade de conjunto de cláusulas cujo conjunto de instâncias básicas é finito.

Page 22: Lógica de Predicados Teorema de Herbrand. Biografia Jacques Herbrand (Paris, 12 de Fevereiro de 1908 Oisans, 27 de Julho de 1931) foi um matemático francês.

Teorema de Herbrand

O teorema de Herbrand é muito importante na lógica simbólica; ele é a base para a maioria dos procedimentos atuais para prova automática de teoremas. Dessa forma, para testar se um conjunto S de cláusulas é insatisfatível, precisa-se considerar somente interpretações sobre o universo Herbrand de S. Se S é falso sob todas as interpretações do universo Herbrand de S, então pode-se concluir que S é insatisfatível.

Page 23: Lógica de Predicados Teorema de Herbrand. Biografia Jacques Herbrand (Paris, 12 de Fevereiro de 1908 Oisans, 27 de Julho de 1931) foi um matemático francês.

Teorema de Herbrand

Uma vez que geralmente existem muitas, possivelmente um número infinito, dessas interpretações, há necessidade de organizá-las de alguma forma sistemática. Isto pode ser feito usando uma árvore semântica. Serão dadas duas versões do Teorema de Herbrand.

Page 24: Lógica de Predicados Teorema de Herbrand. Biografia Jacques Herbrand (Paris, 12 de Fevereiro de 1908 Oisans, 27 de Julho de 1931) foi um matemático francês.

Exemplo do Teorema de HerbrandTeorema Herbrand, versão I - Um conjunto S de cláusulas é insatisfatível se e somente se correspondendo a toda árvore semântica completa de S, há uma árvore semântica fechada finita.Prova: (IDASuponha S ser insatisfatível. Seja T uma árvore semântica completa para S. Para cada ramo B de T, seja IB um conjunto de todos os literais ligados a todos os nós do ramo B. Então IB é uma interpretação para S. Desde que S seja insatisfatória, IB precisa falsificar uma instância base C' de uma cláusula C em S. Contudo, desde que C' é finito, deve haver um nó falha NB (que está a um número finito de ligações do nó raiz) no ramo B. Uma vez que todo ramo de T tem um nó falha, há uma árvore semântica fechada T' para S. Além disso, uma vez que somente um número finito de ligações estão conectadas em cada nó de T', T' precisa ser finito (isto é, o número de nós em T' é finito), de outra maneira, pelo Lema de Konig, pode-se encontrar um ramo infinito contendo nenhum nó falha. Dessa forma, completa-se a primeira metade do teorema.

Page 25: Lógica de Predicados Teorema de Herbrand. Biografia Jacques Herbrand (Paris, 12 de Fevereiro de 1908 Oisans, 27 de Julho de 1931) foi um matemático francês.

Exemplo do Teorema de Herbrand

(VOLTA) De modo inverso se, correspondendo a toda árvore semântica completa T para S, há uma árvore finita semântica fechada, então cada ramo de T contém um nó falha. Isto significa que toda interpretação falsifica S. Conseqüentemente S é insatisfatível. Isto completa a prova da segunda parte do teorema.

Page 26: Lógica de Predicados Teorema de Herbrand. Biografia Jacques Herbrand (Paris, 12 de Fevereiro de 1908 Oisans, 27 de Julho de 1931) foi um matemático francês.

Exemplo do Teorema de HerbrandTeorema de Herbrand, Versão II - Um conjunto de cláusulas é insatisfatível se e somente se há um conjunto finito insatisfatível S' de instâncias base de cláusulas de S.Prova: (IDA Suponha S ser insatisfatível. Seja T uma árvore semântica completa para S. Então, pelo teorema de Herbrand (Versão I), há uma árvore semântica fechada finita T' correspondendo a T. Seja S' um conjunto de todas as instâncias base das cláusulas que estão falsificadas em todos os nós falha de T'. S' é finito desde que haja um número finito de nós falhos em T'. Uma vez que S' é falso em toda interpretação de S', S' é insatisfatível.

Page 27: Lógica de Predicados Teorema de Herbrand. Biografia Jacques Herbrand (Paris, 12 de Fevereiro de 1908 Oisans, 27 de Julho de 1931) foi um matemático francês.

Exemplo do Teorema de Herbrand(VOLTA) Suponha que há um conjunto finito insatisfatível S' de instâncias base das cláusulas em S. Desde que cada interpretação I de S contém uma interpretação I' de S', se I' falsifica S', então I deve também falsificar S'. Entretanto, S' é falsificado por toda a interpretação I'. Conseqüentemente, S' é falsificado por toda interpretação I de S. Portanto, S é falsificado por toda interpretação de S. Então, S é insatisfatível.