Você está na página 1de 49

Lgica de Predicados de Primer Orden

La lgica proposicional puede ser no apropiada para expresar ciertos tipos de o conocimiento. Por ejemplo: Algunas manzanas son rojas Esta armacin no se reere espec o camente a ningn conjunto de manzanas, u solo est diciendo que existe un conjunto de manzanas que son rojas. a cmo podr o amos representar esta armacin en LP? o La LP tambin puede puede ser no apropiada para modelar cierto tipo de e razonamiento. Veamos el siguiente razonamiento correcto: Juan ayuda a todas las personas que gustan de la lgica. o A Juan es persona y le gusta la lgica. o Juan ayuda a Juan
Jorge Baier Aranda, PUC

<< Atrs a

111

En estos ejemplos hemos visto que la LP no permite referirse en forma sencilla a todos los elementos de un dominio. Ms an, si los elementos del dominio son innitos, simplemente no puede a u expresar conocimiento acerca de todos los individuos. La LP tampoco es capaz de representar propiedades de objetos, solo proposiciones. La lgica de primer orden (LPO) soluciona estos problemas en este sentido: o
Permite hacer cuanticacin sobre los objetos de un dominio. Ej: Todos los perros son o animales, Algunos sapos lloran. Permite representar propiedades a travs de relaciones y funciones. e

Un lenguaje L de la lgica de predicados esta compuesto por los siguientes o elementos: Un conjunto C, nito o enumerable, de constantes para designar objetos. Ej: {C1, C2, . . . , Cn, . . .},
Jorge Baier Aranda, PUC

<< Atrs a

112

Para evitar confusiones, usaremos siempre maysculas para denotar los s u mbolos constantes. Un conjunto F, de s mbolos de funcin. Ejemplo: o {f, g, h, . . .}. A cada funcin se le asocia una aridad , que es un nmero natural y que o u corresponde a la cantidad de argumentos de la funcin. o Un conjunto P nito o innito enumerable de s mbolos para predicados {P, Q, R, S, . . .}, que se utilizan para designar propiedades de objetos. A stos tambin se les e e asocia una aridad positiva. Los tres conjuntos anteriores, se agrupan normalmente en un solo conjunto de s mbolos S = P, F, C . En el que se ubican primero los predicados, luego las funciones y nalmente las constantes. En nuestro ejemplo, S=
Jorge Baier Aranda, PUC

P, Q, R, S, . . . , f, g, h, . . . , C1, C2, . . .
<< Atrs a
113

Adems de estos elementos un lenguaje de primer est compuesto de frmulas a a o que pueden contener los siguientes elementos: , , , , : conectivos lgicos usuales. o =: un predicado especial para la igualdad. , : cuanticadores existencial y universal. x1, x2, . . .: conjunto enumerable de variables, el cual informalmente podr amos llamar por x, z, u, etc. 5. (, ,, ): s mbolos de puntuacin. o 1. 2. 3. 4. An nos falta denir cmo se forman exactamente las frmulas. u o o Veamos ahora un pequeo adelanto: n Sea S = A, GL , padre , M aria, P edro, Andres, Juan . Un conjunto de s mbolos, donde
GL, de aridad 1 tal que GL(x) es verdadero ssi a x le gusta la lgica. o A, de aridad 2 es tal que A(x, y) es verdadero exactamente cuando x ayuda a y .

Adems, la funcin padre(x) representa al padre del objeto x. a o

Jorge Baier Aranda, PUC

<< Atrs a

114

Qu creen que expresan las siguientes frmulas? e o

y(GL(y) A(Juan, y)) xA(x, Juan) GL(Juan)

y(A(Juan, y) x(A(x, y)))

y, z(A(Juan, y) z = padre(y) x(A(z, x)))

Aparte de especicar cmo se escriben las frmulas debemos darle una semntica. o o a Notemos que los lenguajes de primer orden hablan de objetos, propiedades y funciones. Estos elementos del lenguaje deben tener una contra parte, en cierto dominio real (dominio de discurso). Es posible usar el meta-lenguaje matemtico para describir el dominio de discurso a a a travs de estructuras. Veremos esto ms adelante... e
Jorge Baier Aranda, PUC

<< Atrs a

115

Sintaxis de LPOP
Ahora deniremos formalmente la sintaxis de LPOP. Partiremos con la denicin de qu es un trmino. o e e Denicin 14. Sea L un lenguaje de primer orden construido a partir de un o conjunto S de s mbolos. Un trmino se forma a partir de la aplicacin sucesiva e o de las siguientes reglas. 1. Toda constante de S es un trmino. e 2. Toda variable es un trmino. e 3. Si f es una funcin de aridad n (f S) y t1, t2, . . . , tn son trminos entonces o e f (t1, t2, . . . , tn) es un trmino. e En nuestro ejemplo anterior, los siguientes son trminos e x1, y, Juan, padre(padre(Juan)) Usando esto como base podemos denir una frmula o
Jorge Baier Aranda, PUC

<< Atrs a

116

Denicin 15. Una frmula se obtiene, solamente, mediante una aplicacin o o o nita de las siguientes reglas: 1. Si t1 y t2 son trminos, entonces t1 = t2 es una frmula. e o 2. Si P es un s mbolo de predicado n-ario y t1, . . . , tn son trminos, entonces e P (t1, t2, . . . , tn) es una frmula. o 3. Si y son frmulas, entonces y ( ) son frmulas ( es un conectivo o o binario). 4. Si es una frmula y x es una variable, entonces x y x tambin son o e frmulas. o El lenguaje de primer orden de todas las frmulas que se generan a partir de un o conjunto de s mbolos S se anota como L(S). Continuando con nuestro ejemplo, las siguientes son frmulas del lenguaje: o x(A(x, z) A(x, padre(u))), xyA(x, y), yA(x, y). x(A(y, Juan) y(GL(y) A(y, x))), (*) (**)
<< Atrs a
117

Jorge Baier Aranda, PUC

La frmula (*) se acostumbra a escribir como xyA(x, y) o En la frmula (**) la variable x no est afectada por ningn cuanticador. En o a u este caso decimos que x es una variable libre. Adems, las relaciones binarias tambin se pueden anotar con notacin inja. De a e o esta manera A(x, y) se escribe como xAy. Denicin 16. Una frmula del lenguaje es una oracin. o o o variables libres. Si no tiene

Jorge Baier Aranda, PUC

<< Atrs a

118

Otro Ejemplo de LPOP


Supongamos el siguiente conjunto de s mbolos S= <, > , s, + , 0, 1 ,

Podemos escribir el siguiente conjunto de frmulas: o x 0 < s(x) xyz((x < y y < z) x < y) x x + 1 = s(x) x x + 0 = x xy s(x) + y = x + s(y)

De qu dominio real estn hablando estas frmulas? e a o Si pensamos que estas frmulas estn hablando acerca de los naturales y que s(x) o a representa al sucesor del natural x, entonces, estas frmulas estn describiendo o a propiedades de la desigualdad y de la suma.
Jorge Baier Aranda, PUC

<< Atrs a

119

Estructuras
El dominio de discurso lo describiremos como una estructura. Una estructura es un conjunto formado por:
Un conjunto A no vac de objetos. Si estamos hablando de los naturales, este conjunto es o N Un conjunto RA de relaciones. Una relacin RA sobre A es n-aria si RA An. Estas son o las relaciones que cumplen los elementos del dominio. En el caso de los naturales, podr amos escoger la relacin <N N N o la relacin o o primoN N

Un conjunto FA de funciones. Una funcin n-aria f A recibe elementos del dominio y retorna o un elemento del dominio, es decir f
A

: A A.

Un conjunto de constantes distinguidas. C A puede denotar una constante en el conjunto A. Obviamente, C A A. En el caso de los naturales podr amos elegir a 0N y a 1N.

En el caso de los naturales, podr amos escoger la multiplicacin (N) y la suma (+N) o

Jorge Baier Aranda, PUC

<< Atrs a

120

Denicin 17. Una estructura se anota formalmente como una tupla o E = A, RA, . . . , f A, . . . , C A, . . . , en la cual A es un conjunto y RA, f A y C A son, respectivamente, una relacin, una funcin y una constante sobre A con las caracter o o sticas descritas anteriormente.

Jorge Baier Aranda, PUC

<< Atrs a

121

Por ejemplo, una estructura sobre los naturales puede ser la siguiente: N = N, <N, primoN , +N, N , 0N, 1N Si un lenguaje L de primer orden habla acerca de cierta estructura, entonces el conjunto de s mbolos S utilizados por el lenguaje debe ser compatible con los elementos de la estructura. Por ejemplo, el conjunto de s mbolos S= es compatible con la estructura E = A, RA, . . . , f A, . . . , C A cuando hay una correspondencia exacta entre los elementos y sus s mbolos (incluyendo las aridades). En este caso decimos que
Jorge Baier Aranda, PUC

R, . . . , f, . . . , C

<< Atrs a

122

R es interpretado por RA f es interpretado por f A, y C es interpretado por C A.

Los siguientes son ejemplos de estructuras compatibles: S= S= <, primo , +, , 0, 1 y N1 = N, <N, primoN , +N, N , 0N, 1N <, primo , +, , {0, 1} y N2 = N, <N, imparN , +N, N , 1N, 0N

Ntese que en el segundo ejemplo no existe una correspondencia natural entre o los s mbolos utilizados y las propiedades que representan. Este fenmeno siempre o ocurre en lgica simblica. o o Siempre debemos recordar que los s mbolos son solamente s mbolos. Bajo este esquema en el cual la realidad es representada mediante s mbolos nos preocupa ahora saber cundo una frmula es verdadera. a o Por ejemplo, qu signica la siguiente frmula e o x (primo(x) primo(x + 2))
Jorge Baier Aranda, PUC

<< Atrs a

123

cuando la interpretamos con N1? qu signica cuando la interpretamos con N2? e bajo qu interpretacin esta frmula es verdadera? e o o es N2 la unica estructura que hace a la frmula verdadera? o podemos escribir un conjunto de frmulas que sea hecho verdadero slo por un o o a interpretacin dada por la estructura N2 y por ninguna otra? o Si queremos usar la lgica de primer orden para razonar acerca de lo que ocurre o en el mundo, deberemos ser capaces de describir lgicamente el mundo sin que o exista la posibilidad a que las teor sean verdaderas en estructuras que no tienen as nada que ver con el mundo que estamos modelando. Ms adelante veremos que esto puede ser no trivial... a De lo que s debiramos estar seguros es que para ser capaces de modelar dominios e en forma lgica deberemos entender claramente cundo una frmula es verdadera o a o en una cierta estructura. Antes de esto, renaremos nuestro concepto de interpretacin. o
Jorge Baier Aranda, PUC

<< Atrs a

124

Interpretacin de Trminos
Hasta el momento, tenemos una idea ms o menos clara de cmo se interpretan a o las relaciones y funciones. La pregunta es cmo interpretamos un trmino? o e Debemos dar una respuesta para los tres tipos de trminos: e
constantes, variables, f (t1, t2, . . . , tn), donde t1, . . . , tn son trminos. e

Al menos para el caso de las constantes deber ser bastante claro... a Sin embargo, necesitamos dar una interpretacin a las variables. Si x es una o variable, qu objeto del dominio le corresponde? e Necesitamos una funcin de asignacin, que asigne valores a las variables. o o
Jorge Baier Aranda, PUC

<< Atrs a

125

Sea

S = { R, . . . , f, . . . , C, . . . } un conjunto de s mbolos. Si llamamos V ar(L(S)) al conjunto de variables de un lenguaje de primer orden, entonces es una funcin de asignacin tal que o o : V ar(L(S)) A.

Formalmente, sea

S= un conjunto de s mbolos y

R, . . . , f, . . . , C, . . .

E = A, RA, . . . , f A, . . . , C A una estructura compatible y una funcin de asignacin, entonces una o o interpretacin es un par I = E, , denida por: o

1. I(C) := C A. 2. I(x) := (x), con x V ar(L(S)). 3. I(f (t1, . . . , tn)) := f A(I(t1), . . . , I(tn)), con x V ar(L(S)).
Jorge Baier Aranda, PUC

<< Atrs a

126

Valor de Verdad de Frmulas


Tal como en el caso proposicional, nos interesa saber cundo una frmula es a o verdadera. En LP, denimos cuando una frmula era verdadera dada una asignacin de valor o o de verdad para cada una de las variables proposicionales del lenguaje. Es decir, denimos cundo |= . a En lgica de primer orden no hay valuaciones, sino interpretaciones, por lo o tanto nos preocupamos de denir cundo una frmula es verdadera bajo una a o interpretacin: o I |= ( L(S)). Deberemos denir esto en forma inductiva para todas las frmulas posibles del o lenguaje. Denicin 18. Sea L(S) un lenguaje de primer orden y L(S). Entonces: o
Jorge Baier Aranda, PUC

<< Atrs a

127

1. Si es de la forma t = s entonces I |= ssi I(t) = I(s) 2. Si es de la forma R(t1, . . . , tn) entonces I |= ssi (I(t1), . . . , I(tn)) RA 3. Si es de la forma entonces I |= ssi no se cumple que I |= 4. Si es de la forma entonces I |= ssi I |= y I |= 5. Si es de la forma entonces I |= ssi I |= o I |=
Jorge Baier Aranda, PUC

<< Atrs a

128

6. Si es de la forma entonces I |= ssi I |= o no se cumple que I |= 7. Si es de la forma entonces I |= ssi I |= exactamente cuando I |= 8. Si es de la forma x entonces I |= ssi I |= con a A Aqu la notacin I a implica reemplazar la asignacin de valor de x por el , o o objeto a en la funcin de asignacin . o o 9. Si es de la forma x entonces I |= ssi I a |= para todo a A Denicin 19. Una frmula de L(S) es satisfacible si existe una o o interpretacin I = E, tal que o I |=
Jorge Baier Aranda, PUC

x a

<< Atrs a

129

Denicin 20. Una frmula de L(S) es vlida en la estructura E (compatible o o a con S) si sta es hecha verdadera bajo cualquier asignacin . e o E |= ssi E, |= para todo Denicin 21. Sea I una interpretacin que hace verdadera a una frmula o o o L(P ). Entonces se dice que I es un modelo para esta frmula. o Denicin 22. Sea un conjunto de frmulas en un lenguaje de primer orden o o L(S), decimos que I |= ssi I |= para todo Denicin 23. [Consecuencia Lgica] Sea un conjunto de oraciones en o o L(S) y es una oracin en L(S). Entonces es consecuencia lgica de ssi, o o I |= entonces I |=
Jorge Baier Aranda, PUC

<< Atrs a

130

Otro Ejemplo
Supongamos las siguientes situaciones en el dominio de los bloques:
C

Podr amos usar la estructura B = U, {SobreU }, {A, B, C, D, M } para modelar este dominio, donde:
U = {A, B, C, D, M }. SobreU = {(A, M ), (B, A), (C, B), (D, M )}

La interpretacin I = B, , para un arbitrario es modelo del siguiente o conjunto de frmulas sobre S = {{Sobre}, {BA, BB , BC , BD , M }} o
Jorge Baier Aranda, PUC

<< Atrs a

131

x (Sobre(x, M ) x = BA x = BD ) Sobre(BB , BA) Sobre(BC , BB )

Si consideramos, ahora, una relacin binaria extra ArribaDe, tal que o ArribaDe(x, y) es verdadera si y slo si el objeto x est arriba de y, y agregamos o a el siguiente axioma: xy (ArribaDe(x, y) Sobre(x, y) Sobre(x, z) ArribaDe(z, y))

La interpretacin, adecuadamente modicada, seguir siendo modelo de la teor o a a.

Una pregunta natural a hacerse es: tiene esta teor otro modelo? La respuesta a es S y muchos ms... I, a
Jorge Baier Aranda, PUC

<< Atrs a

132

Mostramos slo dos de ellos: o


C

Hay algn problema con la teor u a? La respuesta a esta pregunta depender de qu es lo que queremos hacer con a e ella.
Jorge Baier Aranda, PUC

<< Atrs a

133

Si esta representa hechos vlidos, entonces es suciente. a Si queremos hacer deduccin o razonar acerca de los hechos que son verdaderos o en este dominio o no, necesitamos una mejor teor a. Dicha teor debe forzar a que todas los modelos de esta representen el mundo a que se quiere representar. Un arreglo para esta teor es el siguiente: a x(Sobre(x, M ) x = BA x = BD ), x(Sobre(x, BA) x = BB ), xSobre(x, BC ), x(Sobre(x, BB ) x = BC ), xSobre(x, BD ). Recordemos, adems, que una interpretacin podr asignar a un objeto del a o a dominio dos s mbolos de constante distintos del lenguaje. Por ejemplo, el objeto
Jorge Baier Aranda, PUC

<< Atrs a

134

A podr estar designado por BA y BB al mismo tiempo y la teor seguir a a a teniendo un modelo. Esta distincin se hace agregando axiomas de nombres unicos. Los axiomas para o este caso son varios. A continuacin veremos algunos: o M = BA, M = BD , BA = BD , ... M = BB M = BC ,

BA = BB ,BA = BC ,

Lo que estamos logrando con esto es que cualquier modelo de la teor tenga a propiedades con la misma extensin para cada uno de sus predicados. o Una condicin suciente para asegurar es que la teor sea denicional, es decir, o a que dena por completo la extensin de los predicados. o Esto se traduce en que para todo predicado n-ario P de la teor exista un axioma a que establece que x (P (x) ),
Jorge Baier Aranda, PUC

<< Atrs a

135

donde es una frmula que no tiene variables libres y x es una tupla de n o variables. x(Sobre(x, y) (y = M (x = BA x = BD )) (y = BA x = BB ) (y = BB x = BC )).

y que hay axiomas de nombres unicos para objetos del dominio. Usando la semntica ya denida, podemos demostrar que la siguiente frmula es a o consecuencia lgica de nuestra teor o a. x Sobre(x, x) En efecto podemos demostrarlo por contradiccin o Supongamos que hay un objeto z tal que Sobre(z, z), del axioma de denicin o de Sobre se tiene que
Jorge Baier Aranda, PUC

<< Atrs a

136

(z = M (z = BA z = BD )) (z = BA z = BB ) (z = BB z = BC ) Que evidentemente contradice a los axiomas de nombres unicos, por lo que no puede existir tal z y luego x Sobre(x, x). La demostracin que acabamos de hacer ha sido posible porque tenemos un o conocimiento certero sobre los modelos de la teor a. Ser ideal que, tal como en el caso de LP, en LPOP tuviramos un sistema formal a e deductivo, mediante el cual no requiramos evidencia expl cita de las estructuras que lo modelan. A continuacin, veremos un sistema deductivo para lgica de primer orden. o o

Jorge Baier Aranda, PUC

<< Atrs a

137

Un sistema deductivo para Lgica de Primer Orden


Al igual que en LP, en LPO existen frmulas que son siempre verdaderas. o A partir de estas frmulas, podremos construir un sistema deductivo, con el cual o se podrn derivar frmulas correctas. a o Por ejemplo, las siguientes frmulas son universalmente vlidas: o a |= P (x) (Q(x) P (x)), Esta frmula es una instancia de una tautolog de LP. En general, con cualquier o a instancia de tautolog podremos obtener una frmula universalmente. a o En particular, a partir del esquema de axiomas de Hilbert, podemos obtener: (P (x) (Q(y) R(z))) ((P (x) Q(y)) (P (x) R(z))) Sin embargo, instanciaciones de estos esquemas de axiomas no son sucientes para realizar todo el razonamiento de primer orden.
Jorge Baier Aranda, PUC

<< Atrs a

138

Veamos ahora algunas frmulas universalmente vlidas que involucran o a cuanticacin: o (x P (x) P (C)), (P (y) x P (x)), (y P (y) x P (x)),

(x P (x) x P (x)). Las siguientes frmulas, sin embargo, no lo son: o (x P (x) x P (x)), x (P (x) P (C)), (x P (x) y P (y))

Jorge Baier Aranda, PUC

<< Atrs a

139

El sistema deductivo
Un sistema deductivo de Hilbert para LPO consta de:
Esquemas axiomticos a Reglas de deduccin. o

Los esquemas axiomticos para LPO son los de LP, ms axiomas para la a a cuanticacin universal 4: o 1. 2. 3. 4. 5. 6. ( ). ( ( )) (( ) ( )) ( ) (( ) ). x(x) (t) (t) x(x) x(x) x(x).

Aqu t denota un trmino arbitrario, en particular puede ser una variable o una constante e
<< Atrs a
140

Jorge Baier Aranda, PUC

Adems, debemos agregar los siguientes axiomas para igualdad: a x (x = x) x (x = y y = x)

x (x = y y = z x = z) Para todo predicado n-ario P y funcin m-aria f 5: o xy P (x) x = y P (y), xy x = y f (x) = f (y). Las reglas de deduccin son las siguientes: o 1. Modus Ponens, igual que en LP ,
5

Aqu x representa a una tupla de variables.


<< Atrs a
141

Jorge Baier Aranda, PUC

2. Regla de Generalizacin. Cuando y no aparece libre en o (y) x (x) Ntese que puede ser una frmula siempre vlida, con lo que la regla de o o a generalizacin: o (y) x (x) es un caso particular de la anterior. Una demostracin formal de una frmula a partir de un conjunto de frmulas o o o es una secuencia de frmulas 1, 2, . . . , n donde n = y, para todo o 1 i n,
i , o i es un axioma lgico, o o

i se obtiene de una regla de deduccin a partir de frmulas k y j (k < j < i) o o

Cuando se obtiene de una demostracin formal a partir de , decimos que o


Jorge Baier Aranda, PUC

.
<< Atrs a
142

Ejercicio: Demuestre que {x (P (x) Q(x)), x P (x)} x Q(x) 1. 2. 3. 4. 5. 6. x (P (x) Q(x)) (de ) (P (p) Q(p)). (esquema de axioma 4 en 1) x P (x) (de ) P (p). (esquema de axioma 4 en 3) Q(p). (modus ponens entre 2 y 4) x Q(x) (generalizacin de 5) o

Jorge Baier Aranda, PUC

<< Atrs a

143

Propiedades del Sistema Deductivo


Cabe preguntarnos ahora, qu propiedades tiene este sistema deductivo. e Veremos que, afortunadamente, muchas de las propiedades que se ten en LP, an tambin se cumplen en LPO. e Teorema 2. [de Correccin] Sea un conjunto de oraciones y una oracin, o o entonces si entonces |= La demostracin de este teorema es idntica a la de LP, puesto que los esquemas o e de axiomas y reglas de deduccin siempre preservan la verdad. o Teorema 3. [de Complecin de Gdel] Sea un conjunto de oraciones y o o una oracin, entonces o si |= entonces Teorema 4. [de Compacidad o Finitud] Sea es un conjunto de oraciones y
Jorge Baier Aranda, PUC

<< Atrs a

144

es una oracin, entonces o es satisfacible ssi todo subconjunto nito de lo es

Jorge Baier Aranda, PUC

<< Atrs a

145

Frmulas Prenex
Es una forma normal de frmulas de primer orden. o Una frmula prenex slo tiene cuanticadores al comienzo de sta. Por ejemplo: o o e xyz (P (x, y) R(x, y, z)) es una frmula prenex. o Formalmente, una frmula prenex se escribe como o Q1x1Q2x2 . . . Qnxn , donde Qi (1 i n) representa algn cuanticador ( o ) y donde no tiene u cuanticadores. Teorema 5. Sea una frmula arbitraria de L(S). Entonces existe una frmula o o prenex equivalente.
Jorge Baier Aranda, PUC

<< Atrs a

146

Antes de demostrar este teorema, veamos algunos ejemplos: la frmula o es equivalente a y equivalente a x (P (x) y Q(x, y)) xy (P (x) Q(x, y)) P (x) y R(y) y (P (x) R(y))

cmo podemos hacer esto en general? o

Jorge Baier Aranda, PUC

<< Atrs a

147

Es posible demostrar que si y son frmulas y x es una variable que no aparece o en o est cuanticada en , entonces las siguientes frmulas son equivalentes: a o 1. Qx y Qx 2. (Qx ) y Qx ( ) 3. (Qx ) y Qx ( ) donde Q representa a algn cuanticador ( o ), Q representa al cuanticador u complementario6 representado por Q y representa a o . Qu pasa si tiene a x como una variable libre? Ejemplo: Encuentre una e frmula equivalente a: o x P (x) y Q(y, z) P (x, y) en este caso no podemos aplicar directamente la transformacin, deberemos o renombrar la variable libre x y luego aplicar la regla.

El cuanticador complementario de es y vice versa.


<< Atrs a
148

Jorge Baier Aranda, PUC

Renombrando x por u e y por v obtenemos: x(P (x) y Q(y, z) P (u, v))

y luego

que es equivalente a

x(y (P (x) Q(y, z) P (u, v)))

xy (P (x) Q(y, z) P (u, v)) El teorema se demuestra justicando que la aplicacin de las transformaciones de o arriba son sucientes para llevar cualquier frmula a forma normal prenex. o

Jorge Baier Aranda, PUC

<< Atrs a

149

Resolucin de Primer Orden


Tal como en LP, nos interesa encontrar un algoritmo implementable que permita hacer demostraciones de teoremas de primer orden en forma automtica. a En 1965, J.A. Robinson descubri un mtodo de resolucin para primer orden. o e o El mtodo es bastante parecido al de resolucin de LP. e o

Jorge Baier Aranda, PUC

<< Atrs a

150

Supongamos que tenemos las siguientes dos clusulas de primer orden: a P (x) Q(y, z) R(x, f (w)) y la clusula a S(y) P (u) Observemos que: Las variables en ambas clusulas aparecen como libres. a Buscamos encontrar una correspondencia entre resolucin y consecuencia o lgica por lo cual supondremos que todas las frmulas estn impl o o a citamente cuanticadas universalmente (no queremos variables libres). Dado que la primera frmula se cumple para todo x, podr o amos inferir que, en particular, se cumple para un objeto cualquiera C. Si lo mismo decimos acerca de la segunda clusula tendremos que, se cumple a que P (C) Q(y, z) R(C, f (w)) y la clusula a S(y) P (C)
Jorge Baier Aranda, PUC

<< Atrs a

151

Dada tal sustitucin, podemos utilizar la regla de resolucin que ya conocemos y o o generar la siguiente clusula: a S(y) Q(y, z) R(C, f (w)) Por qu? e El proceso de asignar un valor a una variable, reemplazndola en toda la forma a se llama sustitucin. o Si = {x/b, y/f (a)} y es una frmula, entonces corresponde a la misma o frmula con todas las ocurrencias de x reemplazadas por b y todas las ocurrencias o de y reemplazadas por f (a). Formalmente, una sustitucin es una funcin parcialmente denida : V ar o o T (S), donde T (S) es el conjunto de trminos de un conjunto de s e mbolos S. Una sustitucin que hace que dos frmulas atmicas se hagan iguales se conoce o o o como unicador. Ejemplo:
Jorge Baier Aranda, PUC

<< Atrs a

152

La sustitucin = {x/f (A), y/g(u), z/A} es un unicador para los literales7: o L1 R(x, g(u)) porque L1 L2. El sentido de igualdad () usado aqu es meramente sintctico y quiere decir que a las expresiones son iguales caracter a caracter. Si es unicador, se usa para expresar el conjunto L1 R(f (z), y)

{E1, E2, . . . , En}

{E1, E2, . . . , En} Dos literales que unican, pueden ser hechos unicar por muchas sustituciones. En nuestro ejemplo anterior, todas las siguientes sustituciones son unicadores
7

Tal como en LP, un literal es una frmula atmica o la negacin de una. o o o


<< Atrs a
153

Jorge Baier Aranda, PUC

de L1 y L2: 1 = {x/f (A), y/g(u), z/A} 2 = {x/f (z), y/g(u)} 3 = {x/f (f (B)), y/g(A), z/f (B), u/A} De todos los unicadores posibles siempre existe al menos uno que es el menos restrictivo, en el sentido que es el que menos restringe futuras unicaciones. Este tipo de unicador se conoce como unicador ms general (UMG). a Un UMG asigna la menor cantidad de sustituciones posibles. Formalmente, un UMG de el conjunto de expresiones E es tal que cualquier otro unicador de E se puede obtener primero mediante la aplicacin de y o despus de alguna otra sustitucin . Es decir, e o E = E
Jorge Baier Aranda, PUC

<< Atrs a

154

En nuestro ejemplo, 2 es el unicador ms general. a {R(x, g(u)), R(f (z), y)}, E1 = (E2){z/A} E3 = (E2){z/f (B), u/A}

De hecho, si E =

Ahora estamos listos para formalizar una regla de resolucin: o Sean l1 l2 . . . ln y l1 l2 . . . lm clusulas de primer orden. La regla de a resolucin es aplicable si existen li (1 i n) y lk (1 k m) tales que li y o lk son uno la negacin del otro (literales complementarios). o En este caso, la regla de resolucin es la siguiente: o l1 l2 . . . l n l1 l2 . . . l m

i{1,...,n}{j} li

i{1,...,m}{k} li

Hasta el momento, tenemos un mtodo de resolucin sirve para frmulas de e o o primer orden cuanticadas universalmente.
Jorge Baier Aranda, PUC

<< Atrs a

155

qu podemos hacer cuando queremos demostrar un hecho a partir de un conjunto e de formulas con cuanticadores existenciales? La respuesta est en transformar una frmula con cuanticadores varios a una a o que slo tenga cuanticadores universales. o Esto se puede hacer mediante skolemizacin. o

Jorge Baier Aranda, PUC

<< Atrs a

156

Skolemizacin
La skolemizacin (por Toraf Skolem) tiene por objeto transformar una frmula o o a otra equivalente en forma normal prenex. Consideremos la siguiente frmula: o x P (x) Siempre podremos reemplazar la frmula anterior por o P (C), donde C es una constante. Pero, cmo podemos transformar xy R(x, y)?. o x R(x, C) por qu? e Sea una frmula prenex, tal que o x1 . . . xk x
Jorge Baier Aranda, PUC

Claramente, no nos sirve

<< Atrs a

157

es una oracin. o La transformacin de skolem le asocia a esta frmula: o o x1 . . . xk (x/f (x1, . . . , xk )) donde (x/f (x1, . . . , xk )) corresponde a la sustitucin de x por f (x1, . . . , xk ) o en . f se conoce como una constante de Skolem, y es una constante nueva, que no debe tener ocurrencias en . Para la regla anterior, en caso que k = 0, se obtiene la frmula o x la que se reemplaza por (x/C) donde C es una constante nueva. Ejemplos:

1. xyz S(x, y, z) se transforma en xy S(x, y, f (x, y)).


<< Atrs a
158

Jorge Baier Aranda, PUC

2. se transforma en

xyzu (P (x, y) Q(y, z) R(u))

xz (P (x, f (x)) Q(f (x), z) R(g(x, z))) Teorema 6. Sea L(S) un conjunto de oraciones en forma normal prenex y sea un conjunto formado a partir de sucesivas aplicaciones de la transformacin o de Skolem. Entonces tiene un modelo si y solo si tambin lo tiene. e La demostracin del teorema pasa por demostrar que o x1 . . . xk x x1 . . . xk (x/f (x1, . . . , xk ))

Jorge Baier Aranda, PUC

<< Atrs a

159

Você também pode gostar