Teoría de Herbrand

Lógica Computacional, Fac. Ciencias, UNAM. Noé Hernández

Intuición de la estructura de Herbrand

  • La estructura de Herbrand se construye con elementos sintácticos: los términos se usan como objectos del dominio.
  • El procedimiento de prueba de Herbrand es una forma de reducir la complejidad de la lógica de primer orden al cálculo proposicional.
Lógica Computacional, Fac. Ciencias, UNAM. Noé Hernández

Universo de Herbrand

Definición: Sea un lenguaje de primer orden. El universo de Herbrand de se define como el conjunto de los términos cerrados de .

é

Si en no hubiera constantes, se agrega una para poder formar el universo de Herbrand.

Lógica Computacional, Fac. Ciencias, UNAM. Noé Hernández

Universo de Herbrand

Sea el programa lógico

suma(X, 0, X). 
suma(X, s(Y), s(Z)) :- suma(X, Y, Z).

El universo de Herbrand es

Lógica Computacional, Fac. Ciencias, UNAM. Noé Hernández

Base de Herbrand

Definición: Sea un lenguaje de primer orden y su universo de Herbrand. La base de Herbrand de se define como el conjunto de fórmulas atómicas cerradas.

Lógica Computacional, Fac. Ciencias, UNAM. Noé Hernández

Base de Herbrand

Sea el programa lógico

suma(X, 0, X). 
suma(X, s(Y), s(Z)) :- suma(X, Y, Z).

La base de Herbrand es

Lógica Computacional, Fac. Ciencias, UNAM. Noé Hernández

Modelo de Herbrand a.k.a modelo sintáctico

Decimos que un modelo de un lenguaje sobre el universo es un modelo de Herbrand syss cumple lo siguiente:

  • Para todo símbolo de constante , se cumple .
  • Para todo símbolo de función de aridad , se cumple
  • Para todo símbolo de predicado de aridad , se tiene que
Lógica Computacional, Fac. Ciencias, UNAM. Noé Hernández

Modelo de Herbrand a.k.a modelo sintáctico

En los modelos de Herbrand los términos cerrados se interpretan como ellos mismos.

Lógica Computacional, Fac. Ciencias, UNAM. Noé Hernández

Ejemplo de Modelo de Herbrand

Un modelo de Herbrand para la fórmula define los siguientes elementos:

  • se tuvo que agregar la constate al lenguaje.

Lógica Computacional, Fac. Ciencias, UNAM. Noé Hernández

La elección de para el libre. Digamos:

El modelo de Herbrand no satisface a porque al tomar los términos como , y tenemos que , así , pero sí debería ser cierta.


Ejercicio: Defina un modelo de Herbrand para el cual la satisfaga.

Lógica Computacional, Fac. Ciencias, UNAM. Noé Hernández

Otro ejemplo de modelo de Herbrand

suma(X, 0, X). 
suma(X, s(Y), s(Z)) :- suma(X, Y, Z).

Un modelo de Herbrand define:



Lógica Computacional, Fac. Ciencias, UNAM. Noé Hernández

Modelo de Herbrand subconjunto de

Podemos representar a los modelos de Herbrand como subconjuntos de la base de Herbrand. Así es el subconjunto de las fórmulas atómicas que son verdaderas en el modelo de Herbrand , al cual lo identificamos de manera única como .

Para verificar si una fórmula atómica es verdadera en basta ver que .

Lógica Computacional, Fac. Ciencias, UNAM. Noé Hernández

Modelo de Herbrand subconjunto de

suma(X, 0, X). 
suma(X, s(Y), s(Z)) :- suma(X, Y, Z).

El modelo anterior queda determinado por

satisface a las cláusulas de .

Lógica Computacional, Fac. Ciencias, UNAM. Noé Hernández

Modelo de Herbrand subconjunto de

suma(X, 0, X). 
suma(X, s(Y), s(Z)) :- suma(X, Y, Z).

El modelo de Herbrand no satisface a las cláusulas de .

El modelo de Herbrand tampoco satisface a las cláusulas de .

Lógica Computacional, Fac. Ciencias, UNAM. Noé Hernández

El conjunto de instancias cerradas

Definición: Sea un lenguaje, un conjunto de fórmulas en cerradas y universales, y un modelo de . El conjunto de instancias cerradas de , , es , donde y es cualquier sustitución que convierte a cada en instancias particulares del dominio de .

En hay únicamente fórmulas cerradas sin cuantificadores.

Lógica Computacional, Fac. Ciencias, UNAM. Noé Hernández

Ejemplo

suma(X, 0, X). 
suma(X, s(Y), s(Z)) :- suma(X, Y, Z).

Algunos elementos en para la segunda cláusula son:

Lógica Computacional, Fac. Ciencias, UNAM. Noé Hernández

El conjunto de instancias cerradas

  • Las fórmulas en pueden ser tratadas como fórmulas de la lógica proposicional.
  • Un modelo para este conjunto especifica los valores de verdad de las fórmulas atómicas en .
  • Los términos (presentes en las fórmulas atómicas), no juegan ningún papel y no necesitan ser interpretadas.
Lógica Computacional, Fac. Ciencias, UNAM. Noé Hernández

Teorema de Herbrand I

Sean un lenguaje con al menos una constante y un conjunto de enunciados universales en . Las siguientes afirmaciones son equivalentes:

  1. tiene un modelo

  2. tiene un modelo de Herbrand

  3. tiene un modelo

  4. tiene un modelo de Herbrand

Demostración: Las implicaciones y son triviales.

La validez universal de hace ciertas a y .

Lógica Computacional, Fac. Ciencias, UNAM. Noé Hernández
Lógica Computacional, Fac. Ciencias, UNAM. Noé Hernández
Lógica Computacional, Fac. Ciencias, UNAM. Noé Hernández

Demostración:
Sea un modelo de . Definimos una estructura de Herbrand sobre mediante la interpretación de los símbolos de predicado. Sea un símbolo de predicado en que recibe argumentos, y .

Por construcción

Lógica Computacional, Fac. Ciencias, UNAM. Noé Hernández

Lo anterior se puede extender a enunciados sin cuantificadores :

Sea . Que es equivalente a para cualesquiera . Por el syss anterior, esto es equivalente a , es decir, , lo cual es cierto porque es modelo de . De manera que

Así, es un modelo de Herbrand de .

Lógica Computacional, Fac. Ciencias, UNAM. Noé Hernández

Corolario (Löwenheim - Skolem)

Toda fórmula satisfacible en lógica de predicados tiene un modelo con un universo numerable.
Demostración:

  • Toda fórmula puede ser transformada por los pasos LINREDS a una fórmula cerrada universal que preserva satisfacibilidad.
  • Estos pasos son tales que todo modelo de lo es también de .
  • Como suponemos que es satisfacible, también lo es.
  • tiene un modelo de Herbrand, el cual es también modelo de .
  • Este modelo de Herbrand tiene un universo numerable.
Lógica Computacional, Fac. Ciencias, UNAM. Noé Hernández

Teorema de Herbrand II

Un enunciado universal es insatisfacible syss hay un subconjunto finito de que sea insatisfacbible (en el sentido de la lógica proposicional).

  • Se pueden formular procedimientos de semi-decisión para la lógica de predicados.
  • Un procedimiento de semi-dicisión para un problema se entiende como un programa que se detiene después de un número finito de pasos en exactamente aquellas instancias en las que responde "sí".
Lógica Computacional, Fac. Ciencias, UNAM. Noé Hernández

El siguiente es un procedimiento de semi-decisión para el problema de insatisfacibilidad. Tomemos una numeración de como:

Procedimiento de Gilmore

Entrada: Un enunciado universal (toda fórmula en lógica de predicados se transforma a esta forma mediante LINREDS)
n = 0
repeat n = n + 1
until es insatisfacible
output "Insatisfacible" y se detiene

Lógica Computacional, Fac. Ciencias, UNAM. Noé Hernández

El programa anterior se detiene después de un número finito de pasos para cada entrada que sea una fórmula insatisfacible. Para fórmulas satisfacibles, no se detiene. Si la entrada es , se tiene un procedimiento de semi-decisión para la validez de las fórmulas.

  1. El problema de insatisfacibilidad para las fórmulas de la lógica de predicados es semi-decidible.
  2. El problema de validez para las fórmulas de la lógica de predicados es semi-decidible.

Así obtenemos un procedimiento que se detiene en las fórmulas insatisfacibles y en las válidas.

Lógica Computacional, Fac. Ciencias, UNAM. Noé Hernández

Otro mecanismo puede buscar sistemáticamente modelos de cardinalidad finita para una dada. Con todo lo anterior llegamos a un procedimiento que se detiene en un número finito de pasos cuando se aplica a las fórmulas en las áreas marcadas.

Lógica Computacional, Fac. Ciencias, UNAM. Noé Hernández
  • Como la lógica de predicados es completa, este programa es una herramienta para la demostración automática de teoremas.
  • El programa no es práctico.
  • Terminará en las fórmulas insatisfacibles, no así en las satisfacibles. Esto demuestra que el conjunto de fórmulas insatisfacibles es r.e.
Lógica Computacional, Fac. Ciencias, UNAM. Noé Hernández
  • Los elementos en son en esencia variables proposicionales.

  • El teorema de Herbrand dice que basta para interpretar a la lógica de predicados.

  • Reduce la insatisfacibilidad de la lógica de predicados a la insatisfacibilidad en la lógica proposicional
Lógica Computacional, Fac. Ciencias, UNAM. Noé Hernández

Proposición

Si es un programa lógico, entonces tiene un modelo de Herbrand.

Demostración: La base de Herbrand hace verdaderas a todas las cláusulas atómicas del lenguaje, por lo que hace verdaderas a las cláusulas de : hechos o reglas.

Lógica Computacional, Fac. Ciencias, UNAM. Noé Hernández

Proposición

Sea un programa lógico. tiene un modelo mínimo de Herbrand, , definido por:

Demostración:

  • tiene al menos un modelo de Herbrand, .
  • Si y son modelos de Herbrand de , su intersección también lo es.
  • La intersección de los modelos de Herbrand está bien definida.
Lógica Computacional, Fac. Ciencias, UNAM. Noé Hernández

Proposición

Sea un programa lógico. El modelo mínimo de Herbrand, , se representa por el conjunto de átomos cerrados que son consecuencia lógica de , es decir,

Demostración:

  • Sea tal que . Como es modelo de , entonces . Pero es una fórmula atómica cerrada, así .
Lógica Computacional, Fac. Ciencias, UNAM. Noé Hernández

Proposición

Demostración:

  • Sea . Sup. , ent. tiene un modelo. Por el teo. de Herbrand I, tiene un modelo de Herbrand .
    • , es decir,
    • es modelo de Herbrand de . Como puesto que es el mínimo, .
      Llegamos a un absurdo. Por lo tanto, .
Lógica Computacional, Fac. Ciencias, UNAM. Noé Hernández

Llegamos a que

Como contiene exactamente a todos los átomos cerrados que son consecuencia lógica de , este modelo corresponde al significado declarativo de .

La semántica declarativa de está dada por .

Lógica Computacional, Fac. Ciencias, UNAM. Noé Hernández

Definición

Dado un programa lógico , el operador de consecuencia inmediata se define como sigue, donde :

Lógica Computacional, Fac. Ciencias, UNAM. Noé Hernández

Definición

Sea un programa lógico. Definimos las iteraciones del operador de consecuencia inmediata para recursivamente como:

Lógica Computacional, Fac. Ciencias, UNAM. Noé Hernández

Proposición

Si es un programa lógico y su modelo mínimo de Herbrand, entonces

Lógica Computacional, Fac. Ciencias, UNAM. Noé Hernández

Ejercicio

Encuentre el modelo mínimo de Herbrand de :

parent(pam, bob).
parent(tom, bob).
parent(tom, liz).
parent(bob, ann).
parent(bob, pat).
parent(pat, jim).

anc(X,Y):-parent(X,Y).
anc(X,Y):-parent(X,Z),anc(Z,Y).



Lógica Computacional, Fac. Ciencias, UNAM. Noé Hernández

Ejercicio

Sea el siguiente programa lógico:

p(X,a).
q(f(X),X).
p(X, f(Y)):-q(X,Y),p(Y,X).

Encuentre el universo, la base y el modelo mínimo de Herbrand.

Lógica Computacional, Fac. Ciencias, UNAM. Noé Hernández

Ejercicio

Sea el siguiente programa lógico:

odd(s(0)).
odd(s(s(X))):-odd(X).

Encuentre el universo, la base y el modelo mínimo de Herbrand.

Lógica Computacional, Fac. Ciencias, UNAM. Noé Hernández