Formas clausulares Teorı́a de Herbrand Algoritmo de Herbrand Teorı́a de Herbrand Lógica Computacional Departamento de Matemática Aplicada Universidad de Málaga Curso 2005/2006 Semidecidibilidad Formas clausulares Teorı́a de Herbrand Algoritmo de Herbrand Contenido 1 Formas clausulares Refutación y formas clausulares 2 Teorı́a de Herbrand Universo de Herbrand Base e Interpretaciones de Herbrand Teorema de Herbrand 3 Algoritmo de Herbrand Extensión de Quine a primer orden Teorema de Herbrand 4 Semidecidibilidad Semidecidibilidad Formas clausulares Teorı́a de Herbrand Algoritmo de Herbrand Semidecidibilidad Forma clausular y principio de refutación Consideremos las fórmulas cerradas A1 ,. . . ,An y A, entonces: A1 , . . . , An |= A sii {A1 , . . . , An , ¬A} es insatisfacible sii {B1 , . . . , Bn , Bn+1 } es insatisfacible, donde Bi ≡ Ai para i = 1, . . . , n, Bn+1 ≡ ¬A B1 , . . . , Bn+1 están en fnc prenexa sii {D1 , . . . , Dn , Dn+1 } es insatisfacible, donde cada Di es una forma de Skolem de Di sii C1 , . . . , Cm insatisfacible donde las Ci son cláusulas obtenidas introduciendo los prefijos en cada Di y eliminando las conjunciones. Formas clausulares Teorı́a de Herbrand Algoritmo de Herbrand Semidecidibilidad Convenios para las formas clausulares La equivalencia: ∀xA(x) ∧ ∀xB(x) ≡ ∀xA(x) ∧ ∀yB(y ) permite suponer que las cláusulas no comparten variables. Entendemos que las cláusulas son de la forma: C = ∀x1 . . . ∀xn (`1 ∨ · · · ∨ `k ) Al considerar el cierre universal de cada cláusula, en general omitiremos el prefijo de las cláusulas. Formas clausulares Teorı́a de Herbrand Algoritmo de Herbrand Semidecidibilidad Ejemplo ∀x(P(x) → Q(x)), ∀x(Q(x) → R(x)) |= ∀x(P(x) → R(x)) Obtengamos la forma clausular de la inferencia: 1 {∀x(P(x) → Q(x)), ∀x(Q(x) → R(x)), ¬∀x(P(x) → R(x))} 2 {∀x(¬P(x) ∨ Q(x)), ∀x(¬Q(x) ∨ R(x)), ∃x(P(x) ∧ ¬R(x))} 3 {∀x(¬P(x) ∨ Q(x), ∀x(¬Q(x) ∨ R(x)), P(a) ∧ ¬R(a)} 4 {∀x(¬P(x) ∨ Q(x)), ∀x(¬Q(x) ∨ R(x)), P(a), ¬R(a)} 5 {¬P(x) ∨ Q(x), ¬Q(y ) ∨ R(y ), P(a), ¬R(a)} La inferencia es correcta si y solo si el conjunto de cláusulas obtenido es insatisfacible. Formas clausulares Teorı́a de Herbrand Algoritmo de Herbrand Semidecidibilidad Teorı́a de Herbrand Dado Ω, sea ΣΩ = (CΩ , FΩ , PΩ ) su signatura. Buscamos un universo ideal donde interpretar Ω, y poder representar todos los términos básicos generados por ΣΩ . 1 2 3 4 5 6 Sea Ω1 = {P(a), Q(b)}. Podemos hablar de a y de b. Sea Ω2 = {P(a), Q(x)}. En este caso, solo podemos referirnos al elemento denotado por a. Sea Ω3 = {P(a), Q(f (x))}. En este caso, podemos hablar acerca de a, f (a), f (f (a)), . . . Sea Ω4 = {P(x), Q(y )}. No tenemos referentes. Sea Ω5 = {P(f (b)), Q(a)}. Tenemos a, b, f (a), f (b), . . . Sea Ω6 = {P(f (b)), Q(g (a))}. ¿Qué referentes se generan? Formas clausulares Teorı́a de Herbrand Algoritmo de Herbrand Semidecidibilidad Teorı́a de Herbrand Definición El universo de Herbrand de Ω, denotado HΩ , es la clausura inductiva libremente generada por CΩ bajo el conjunto de constructores FΩ . Si CΩ = ∅, entonces se asume una constante cH . Constructivamente, si consideramos los conjuntos Hn ( CΩ si CΩ 6= ∅ 1 H0 = cH si CΩ = ∅ 2 Hi+1 = Hi ∪ {f (t1 , . . . , tnf ); f ∈ FΩ , tk ∈ Hi } tenemos que HΩ = ∞ [ n=0 Hn Formas clausulares Teorı́a de Herbrand Algoritmo de Herbrand Semidecidibilidad Base e Interpretaciones de Herbrand Definición La Base de Herbrand de Ω es el siguiente conjunto de fórmulas atómicas básicas: BΩ = {P(t1 , . . . , tnP ); P ∈ PΩ , tk ∈ HΩ } Definición Se llama interpretación de Herbrand (o H-interpretación) de Ω a cualquier estructura con dominio HΩ que verifique: 1 I (a) = a para todo a ∈ CΩ 2 I (f ) = f para todo f ∈ FΩ Toda interpretación de Herbrand viene dada por la asignación de valores de verdad a cada uno de los elementos de BΩ . Formas clausulares Teorı́a de Herbrand Algoritmo de Herbrand Semidecidibilidad Teorema de Herbrand Teorema Un conjunto Ω es satisfacible si y solo si es satisfacible en alguna H-interpretación. Observación Es importante priorizar los ∃ respecto de los ∀, al generarse universos de Herbrand más sencillos. Podemos considerar los elementos de la base de Herbrand como sı́mbolos proposicionales. El método de Quine se puede generalizar a primer orden haciendo uso de los árboles semánticos. Formas clausulares Teorı́a de Herbrand Algoritmo de Herbrand Semidecidibilidad Algoritmo de Herbrand Árboles semánticos Definición Sea Γ = {P1 , P2 , . . . , Pn , . . .} una sucesión de átomos básicos. Un árbol semántico respecto de Γ es un árbol binario tal que: Cada arco está etiquetado con un literal Pi ó ¬Pi . Las etiquetas de arcos de profundidad k son Pk o ¬Pk . Las etiquetas de dos arcos que nacen del mismo nodo son opuestas. Observación Si Γ es finito, todo árbol semántico respecto de Γ es finito. Si Γ es infinito, existen árboles semánticos finitos e infinitos respecto de Γ. Formas clausulares Teorı́a de Herbrand Algoritmo de Herbrand Semidecidibilidad Algoritmo de Herbrand Interpretación parcial asociada a una rama Definición Cada nodo N de un árbol semántico define una interpretación de Herbrand parcial que a cada átomo P le asigna: El valor 1 si en el camino hasta N aparece la etiqueta P. El valor 0 si en el camino hasta N aparece la etiqueta ¬P. En otro caso, si no aparece ni P ni ¬P no se asigna ningún valor. Formas clausulares Teorı́a de Herbrand Algoritmo de Herbrand Semidecidibilidad Algoritmo de Herbrand Árbol completo Definición Dado Ω, sea Γ = {P1 , P2 , . . . , Pn , . . .} una enumeración de BΩ , un árbol semántico para Ω respecto de Γ es completo si la interpretación de Herbrand asociada a cada hoja asigna valores de verdad a todos los Pi ∈ Γ. Proposición Un árbol semántico completo para Ω respecto de ∆ es finito si y sólo si en Ω no intervienen sı́mbolos de función. Como consecuencia, si HΩ es finito podemos extender de modo natural el método de Quine visto para el caso proposicional. Formas clausulares Teorı́a de Herbrand Algoritmo de Herbrand Semidecidibilidad ∀x(∃xP(x) → Q(x)) |= ∀y ∀x(P(x) → Q(y )) Ejemplo Por refutación, la inferencia es válida si y solo si Ω = {¬P(x) ∨ Q(y ), P(a), ¬Q(b)} es insatisfacible. 1 2 HΩ = {a, b} BΩ = {P(a), Q(a), P(b), Q(b)}. Ω es insatisfacible y, por lo tanto, la inferencia es válida. Formas clausulares Teorı́a de Herbrand Algoritmo de Herbrand Semidecidibilidad Teorema de Herbrand Definiciones Previas Definición Un nodo N de un árbol semántico para Ω respecto de una enumeración Γ = {P1 , , P2 , . . .} de BΩ se denomina nodo fallo si la interpretación I asociada a N es tal que I (Cib ) = 0 para alguna instancia básica de una cláusula Ci de Ω pero ninguno de sus ascendientes posee esta propiedad. Un árbol semántico respecto de ∆ = {P1 , P2 , . . .} se dice cerrado si todas sus hojas son nodos fallo. Formas clausulares Teorı́a de Herbrand Algoritmo de Herbrand Teorema de Herbrand Teorema Dado un conjunto Ω de cláusulas, los tres siguientes enunciados son equivalentes: 1 Ω es insatisfacible. 2 Asociado a cada árbol semántico completo (para Ω) existe un árbol semántico cerrado finito. 3 Existe un conjunto finito de instancias básicas de cláusulas de Ω que es insatisfacible. Semidecidibilidad Formas clausulares Teorı́a de Herbrand Algoritmo de Herbrand Semidecidibilidad ∀xP(x), ∀x(P(x) → Q(f (x))) |= Q(f (a)) Ejemplo La inferencia es válida si y solo si el conjunto Ω = {P(x), ¬P(y ) ∨ Q(f (y )), ¬Q(f (a))} es insatisfacible. HΩ = {a, f (a), f (f (a), . . . } BΩ = {P(a), Q(a), P(f (a)), Q(f (a)), P(f (f (a))), . . . } Ω es insatisfacible y la inferencia válida: Formas clausulares Teorı́a de Herbrand Algoritmo de Herbrand Semidecidibilidad Semialgoritmo de decidibilidad en L1 Sea Ω un conjunto de cláusulas: 1 2 Generar una enumeración Γ = {C1 , C2 , . . .} del conjunto de instancias básicas de las cláusulas de Ω Construir un árbol semántico respecto a ∆ de acuerdo a: Si la interpretación asociada a un nodo N le asigna valor de verdad a Ω, se etiqueta N con el valor obtenido. Si alguna hoja se etiqueta con 1 entonces Ω es satisfacible. Si se obtiene un árbol cerrado, Ω es insatisfacible. Si Ω es insatisfacible entonces podremos comprobar su insatisfacibilidad en un número finito de etapas; pero si es satisfacible, el proceso podrı́a no terminar si Ω solo tuviera modelos de Herbrand infinitos. Formas clausulares Teorı́a de Herbrand Algoritmo de Herbrand Semidecidibilidad Semidecidibilidad de L1 Observación El problema de la satisfacibilidad para la lógica L1 es, al menos, semidecidible, es decir, existe un algoritmo SA-Dec tal que dada una fórmula A: SA-Dec(Ω |= A) = Sı́ si y solo si A es insatisfacible. Si SA-Dec(Ω |= A) = No entonces A es satisfacible. Teorema (Church-Turing) La Lógica Clásica de Predicados de Primer Orden no es decidible. Formas clausulares Teorı́a de Herbrand Algoritmo de Herbrand Semidecidibilidad SAT y la teorı́a de la complejidad SAT: decidir la satisfacibilidad de una fórmula proposicional. TAUT: decidir la validez de una fórmula proposicional. SAT es un problema NP-completo: existen algoritmos no deterministas para SAT de complejidad polinómica y cualquier problema de este tipo puede ser reducido en tiempo polinómico a SAT. (Cook, 1971). ¿P = NP? 1.000.000$ para quien lo resuelva (Clay prize) Si TAUT∈ P, entonces P = NP; Si TAUT6∈ P, entonces P 6= NP.