Vous êtes sur la page 1sur 22

1

1
LGICA DE PRIMER ORDEN

En la lgica proposicional se mostr la manera como un agente basado en el conocimiento era capaz de
representar el mundo en el que opera y de utilizar tales representaciones para deducir qu acciones emprender.
Vimos sus ventajas traducidas en su sencillez que permite demostrar las cuestiones fundamentales.
Desafortunadamente, la ontologa de la lgica proposicional es muy limitada, y lo nico que abarca es
aquellos mundos constituidos por hechos.

En esta parte se presentar la lgica de primer orden (tambin conocida como clculo de predicados de
primer orden, de manera abreviada LPO o CPPO) cuyos alcances ontolgicos son ms amplios. Uno de
ellos es considerar que el mundo est constituido por objetos, es decir, entes con identidades individuales y
propiedades que los distinguen de otros objetos.

Entre estos objetos, existen diversos tipos de relaciones. Algunas de estas son las funciones: relaciones en
que a una entrada corresponde un solo valor.

Ejemplos de objetos, propiedades, relaciones y funciones:

- Objetos: gente, casas, nmeros, teoras, Ronald McDonald, colores, juegos de bisbol, guerras, siglos...

- Relaciones: hermano de, mayor que, dentro de, parte de, de color, sucedi luego de, es el dueo de...

- Propiedades: rojo, cuadrado, de varios pisos, falso, lo mejor...

- Funciones: padre de, mejor amigo de...

De hecho, prcticamente cualquier hecho se refiere a objetos y a propiedades y relaciones. Por ejemplo:

- uno ms dos es igual tres.

Objetos: uno, dos, tres, uno ms dos.
Relacin: es igual a.
Funcin: ms.
(Uno ms dos es el nombre del objeto que se obtiene al aplicar la funcin suma a los objetos uno y dos.
Tres es otro de los nombres de tal objeto).

- Los cuadros cercanos al wumpus apestan.

Objetos: wumpus, cuadros.
Propiedad: apestosos.
Relacin: cercana.

- El malvado rey Juan gobern Inglaterra en 1200.

Objetos: Juan, Inglaterra, 1200.
Relacin: gobern.
Propiedades: malvado, rey.

La lgica de primer orden es importante en el campo de las matemticas, la filosofa y la inteligencia artificial
precisamente porque resulta muy prctico concebir que esos campos as como en muchas reas de la vida
cotidiana de los humanos - se ocupan de objetos y de las relaciones que stos guardan entre s. No se
pretende afirmar que el mundo realmente est formado por objetos y relaciones, sino que al esquematizar
el mundo de esta forma nos facilita la tarea de razonar sobre l. Mediante la lgica de primer orden tambin es
posible expresar hechos sobre todos los objetos del universo. Lo anterior aunado al conector de implicacin
de la lgica proposicional, permite la representacin general de leyes o reglas, como sera la aseveracin Los


2
2
cuadros cercanos al wumpus apestan. De ah que es una lgica suficiente para construir agentes que se basan
en el conocimiento.

Si bien la lgica de primer orden se ocupa de la existencia de objetos y relaciones, su alcance ontolgico no
abarca cosas tales como categoras, tiempo y acontecimientos, aspectos que forman tambin buena parte del
mundo. Aunque parezca extrao, esta reticencia por abordar categoras, tiempo y eventos no ha menoscabado
la gran aceptacin de la lgica de primer orden; ms bien ha contribuido a su xito. Precisamente debido a su
gran importancia, existen diversas maneras de abordarlas; Una lgica capaz de un solo tipo de tratamiento
recibir slo una aceptacin limitada. Al permanecer neutral, la lgica de primer orden dota a sus usuarios de
la libertad de describir todas estas cosas de la manera que sea ms apropiada para el dominio. Esta libertad de
eleccin constituye una de las caractersticas generales de la lgica de primer orden. En los ejemplos
anteriores, rey se cit en calidad de propiedad de las personas, pero tambin se podra haber hecho de rey
una relacin entre pueblo y pases, o una funcin entre pases y pueblo (en un mundo donde cada pas tiene
un solo rey).

En IA se emplean diversos esquemas de representacin. Algunos son de carcter terico, equivalentes a la
lgica de primer orden; otros no lo son. Con todo, la lgica de primer orden es universal en el sentido de ser
capaz de expresar todo aquello que se pueda programar. Se eligi el estudio de la representacin del
conocimiento y del razonamiento a travs de la lgica de primer orden debido a que es
hasta ahora el esquema que ms se ha estudiado y se le conoce mejor. En trminos
generales, existen otras propuestas cuyo alcance engloba otras capacidades; sin embargo, todava hay
acalorados debates en torno a ellas y no se les comprende cabalmente. Tambin existen propuestas que vienen
a ser subconjuntos de la lgica de primer orden, y que resultan tiles slo en dominios limitados. No obstante
sus limitaciones, la lgica de predicados de primer orden estar vigente todava por mucho tiempo.

1. SINTAXIS Y SEMNTICA

En la lgica proposicional cada expresin es una oracin, que representa un hecho. En la lgica de primer
orden hay oraciones, pero tambin hay trminos. Estos ltimos representan objetos. Los smbolos que
representan constantes, las variables y los smbolos de funciones sirven para construir trminos; Los
cuantificadores y los smbolos de predicados sirven para construir oraciones.

La gramtica de la lgica de primer orden segn la notacin BNF (Forma Backus-Naur) es la siguiente:

Oracin Oracin atmica
|Oracin Conector Oracin
|Cuantificador Variable,... Oracin
| Oracin
| (Oracin)

Oracin atmica Predicado(Trmino,...) | Trmino = Trmino

Trmino Funcin(Trmino,...)
|Constante
|Variable
Conector | . | v |

Cuantificador | -

Constante A| X
1
|

Juan | ...

Variable a | x | s | ...

Predicado Antes| TieneColor | Lloviendo | ...



3
3
Funcin Madre | PiernaIzquierdaDe |...


A continuacin se presenta una explicacin ms detallada de cada uno de los elementos de la gramtica,
incluyendo tanto sintaxis como semntica.

- Smbolos de constantes: A, B, C, Juan,...

En la interpretacin respectiva deber especificarse a qu objeto del mundo se est haciendo referencia
mediante el smbolo de una constante. Si bien este smbolo nombra justamente un solo objeto, no todos
los objetos necesitan tener nombre, aunque algunos pueden llegar a tener varios. Por ejemplo, el smbolo
Juan, en el caso de una interpretacin en particular se referira al malvado rey Juan, quien fuera rey de
Inglaterra desde 1199 hasta 1216, y hermano menor de Ricardo Corazn de Len. El smbolo Rey podra
referirse en esa misma interpretacin al mismo objeto/persona.

- Smbolos de predicado: Cuadrado, Hermano,...

Una interpretacin especifica que mediante un smbolo de predicado se hace referencia a una relacin
particular de un modelo. Por ejemplo, el smbolo Hermano hace referencia a una relacin de
hermandad. Hermano es un smbolo de predicado binario, por lo que hemandad es una relacin que
vincula (o desvincula) pares de objetos. En cualquier modelo dado, la relacin se define mediante un
conjunto de tuplas que la satisfacen. Una tupla es un conjunto de objetos clasificados de una manera
determinada y en orden fijo. Se escriben entre parntesis angulares. En un modelo que contenga los tres
objetos Rey Juan, Robin Hood y Ricardo Corazn de Len, la relacin de hermandad se define mediante
el conjunto de tuplas

{ (Rey Juan, Ricardo Corazn de Len,)
(Ricardo Corazn de Len, rey Juan) }

Es decir desde un punto de vista formal, Hermano hace referencia a este conjunto de tuplas, bajo la
interpretacin que hemos escogido para este caso.

- Smbolos de funciones: Coseno, PadreDe, PiernaIzquierdaDe...

Algunas relaciones son funcionales, es decir, un determinado objeto est relacionado justamente con otro
mediante la relacin. Las funciones describen un objeto identificndolo como el resultado
nico de la aplicacin de una transformacin entre otros objetos del dominio. Por
ejemplo, a un ngulo le corresponde slo un nmero que es su coseno; toda persona tiene a alguien que es
su padre. En estos casos, es ms prctico definir un smbolo de funcin (p. ej., Coseno) para referirse a
esta relacin especial entre ngulos y nmeros. En el modelo, la correlacin es precisamente un conjunto
de tuplas de n + 1 elementos, con una propiedad en especial, es decir, que el ltimo elemento de cada
tupla sea el valor de la funcin correspondiente a los primero n elementos; cada combinacin de los
primeros n elementos aparece exactamente en una tupla. Una tabla de cosenos es precisamente un
conjunto de tuplas: por cada posible ngulo que interese, proporciona el coseno del ngulo. A diferencia
de los smbolos de predicado, utilizados para decir que entre ciertos objetos existen determinadas
relaciones, los smbolos de funcin se emplean para referirse a objetos particulares sin utilizar su
nombre.

El empleo de smbolos de constante, predicado y funcin es algo que el mismo usuario decide. Un
matemtico quizs use + y coseno; un compositor, Crescendo y Fa Mayor. Desde el punto de vista
formal no importa qu nombres se escojan, aunque una clara interpretacin de los smbolos facilitar la
comprensin.





4
4
Trminos

Un trmino es una expresin lgica que se refiere a un objeto. Por lo tanto los smbolos de constante son
trminos. A veces es ms prctico utilizar una expresin para referirse a un objeto. Por ejemplo en espaol se
utilizara la expresin La pierna izquierda del rey Juan, en vez de asignar un nombre a su pierna. Para eso
son los smbolos de funciones: en vez de utilizar un smbolo de constante, se emplea
PiernaIzquierdaDe(Juan). En el caso ms general, el trmino complejo est formado por un smbolo de
funcin seguido por una lista entre parntesis de trminos que vienen a ser los argumentos del smbolo de
funcin. Es importante tener siempre presente que un trmino complejo no es sino un tipo complicado de
nombre. No se trata de la solicitud de subrutina mediante la que se produce un valor. No existe una
subrutina PiernaIzquierda De, cuya entrada sea una persona y produzca una pierna. Es posible hacer un
razonamiento sobre piernas izquierdas (p. ej., postular la regla general de que todos tienen una pierna
izquierda y luego deducir que Juan tiene una) sin siquiera definir PiernaIzquierdaDe. Lo anterior es algo que
no se puede hacer mediante las subrutinas de los lenguajes de programacin.

La semntica formal de los trminos es muy directa. Mediante una interpretacin se especifica la relacin
funcional a la que alude el smbolo de funcin y los objetos a los que se alude mediante los trminos que son
sus argumentos. As, el trmino completo se refiere al objeto que aparece en la entrada nmero (n + 1) de esa
tupla en la relacin cuyos primeros n elementos son los objetos a que aluden los argumentos. Es decir, si el
smbolo de funcin PiernaIzquierdaDe podra referenciar a la siguiente relacin funcional:

{ (Juan, pierna izquierda del rey Juan,)
(Ricardo Corazn de Len, pierna izquierda de Ricardo) }

y si Juan se refiere al rey Juan, entonces PiedraIzquierdaDe(ReyJuan) se refiere, de acuerdo con la relacin, a
la pierna izquierda del rey Juan.

Oraciones atmicas

Ahora que ya contamos con trminos para referirnos a objetos y smbolos de predicado para referirnos a
relaciones, combinmoslos para formar oraciones atmicas, mediante las que se afirman hechos. Una
oracin atmica est formada por un smbolo de predicado y por una lista de trminos entre parntesis.

Por ejemplo:

Hermano(Ricardo, Juan)

Afirma, de acuerdo con la interpretacin establecida anteriormente, que Ricardo Corazn de Len es el
hermano del rey Juan. (Por convencin P(x, y) se interpreta como x es una P de y).

Las oraciones atmicas pueden llegar a tener argumentos que son trminos complejos:

Casado(PadreDe(Ricardo), MadreDe(Juan))

Afirma que el padre de Ricardo Corazn de Len est casado con la madre del rey Juan (nuevamente, de
acuerdo con la interpretacin correspondiente). Se dice que una oracin atmica es verdadera si
la relacin a la que alude el smbolo de predicado es vlida para los objetos a los que
aluden los argumentos. La relacin se cumple slo en caso de que la tupla de objetos est en la relacin.
Por lo tanto, la validez de una oracin depender tanto de la interpretacin como del mundo.

Oraciones complejas

Mediante los conectores lgicos se pueden construir oraciones ms complicadas, como en el clculo
proposicional. La semntica de las oraciones formadas utilizando los conectores lgicos es idntica a la del
caso de las proposiciones. Por ejemplo:



5
5
- Hermano(Ricardo, Juan) . Hermano(Juan, Ricardo)

Es verdadera slo cuando Juan es el hermano de
Ricardo y Ricardo es el Hermano de Juan

- Mayor(Juan, 30) v Menor(Juan, 30)

Es verdadera slo cuando Juan es mayor de 30 o Juan tiene menos de 30.

- Mayor(Juan, 30) Menor(Juan, 30)

Est diciendo que si Juan tiene ms de 30 aos, entonces no tiene menos de 30 aos.

- Hermano(Robin, Juan)

Es verdadera slo si Robin no es Hermano de Juan.

Cuantificadores

Los cuantificadores permiten generalizar la aplicacin de los predicados.

Dado que la lgica de primer orden admite objetos, es natural el deseo de expresar propiedades de grupos
completos de objetos en vez de enumerarlos por su nombre. Los cuantificadores nos permiten hacer esto. La
lgica de primer orden contiene dos cuantificadores estndar, denominados universales y existenciales.

Cuantificacin universal ( )

Afirma que una caracterstica o relacin es verdadera o se cumple para todos los valores
de la variable asociada.

Reglas como Todos los gatos son mamferos son el pan cotidiano de la lgica de primer orden. Para
expresar esta regla particular se emplearn los predicados unarios Gato y Mamfero; en consecuencia
Mancha es un gato se representa de siguiente manera:

Gato(Mancha);

Y Mancha es un mamfero por

Mamfero(Mancha).

En espaol, lo que se intenta expresar es que por cualquier objeto x, si x es un gato, entonces x es un
mamfero. La lgica de primer orden nos permite realizar lo anterior de la siguiente manera:

x Gato(x) Mamfero(x)

en general se lee como Para todo... Recuerde que esta A invertida representa todo. Por ejemplo, la
oracin x P, en donde P es cualquier expresin lgica, equivaldra a la conjuncin (es decir, a .) de todas las
oraciones que se obtienen al sustituir el nombre de un objeto por la variable x, siempre que aparezca en P.
Por lo tanto, la oracin anterior equivale a:

Gato(Mancha) Mamfero(Mancha) .
Gato(Rebeca) Mamfero(Rebeca) .
Gato(Flix) Mamfero(Flix) .
Gato(Ricardo) Mamfero(Ricardo) .
Gato(Juan) Mamfero(Juan) .


6
6
.
.
.

Por lo tanto ser vlida si y slo si todas estas oraciones tambin son verdaderas, es decir, si P es verdadera
para todos los objetos x del universo. Por lo tanto, a se le denomina cuantificador universal.

Se emplea la convencin de que todas las variables se representan por una letra minscula; los smbolos de
constante, predicado y funcin, por letras maysculas. Las variables constituyen trminos por s mismas, que
tambin puede servir como argumento de una funcin, por ejemplo, HijoDe(x). Cuando un trmino no tiene
variables se le conoce como trmino de base.

Es conveniente que nos detengamos a examinar ms detalladamente el conjunto de oraciones anteriores. Si se
sabe que Mancha, Rebeca y Flix son gatos, entonces las tres primeras oraciones nos permiten concluir que
son mamferos. Pero, qu sucede con las dos conjunciones siguientes, en las que al parecer se hacen
afirmaciones acerca del rey Juan y Ricardo Corazn de Len? Forma parte del significado de todos los
gatos son mamferos? En realidad estos coyuntos son verdaderos, pero no afirman nada respecto a la
cualidad de mamferos de Juan y Ricardo. Lo anterior es debido a que Gato(Ricardo) y Gato(Juan) son
(supuestamente) falsas. Si se examina en la tabla de verdad la parte correspondiente a , veremos que toda la
oracin es verdadera siempre que el lado izquierdo de la implicacin sea falsa, independientemente de
la verdad del lado derecho. As, al afirmar la universalidad de la oracin cuantificada, equivalente a afirmar
toda una lista de oraciones de implicacin individuales, finalmente se asevera el lado derecho de la regla slo
para aquellos individuos para quienes el lado izquierdo es verdad, y no se afirma nada en lo ms mnimo
acerca de esos individuos para quienes el lado izquierdo es falso. Por lo tanto, las entradas en la tabla de
verdad correspondientes a resultan idneas para escribir reglas generales con cuantificadores universales.

Existe el riesgo de pensar que la presencia de la condicin Gato(x) a la izquierda de la implicacin significa
que por alguna razn el cuantificador universal se aplica slo a los gatos. Aunque lo anterior pudiera ser til,
tcnicamente es incorrecto. Una vez ms, la cuantificacin universal est aseverando algo acerca de todo,
pero no afirma nada acerca de si aquellos que no son gatos son mamferos o no lo son. Por otra parte, si
hubisemos intentado expresar todos los gatos son mamferos mediante la oracin

x Gato(x) . Mamfero(x)

habra sido equivalente a:

Gato(Mancha) . Mamfero(Mancha) .
Gato(Rebeca) . Mamfero(Rebeca) .
Gato(Flix) . Mamfero(Flix) .
Gato(Ricardo) . Mamfero(Ricardo) .
Gato(Juan) . Mamfero(Juan) .
.
.
Obviamente, lo anterior no logra contener lo que deseamos, puesto que afirma que Ricardo Corazn de Len
es gato y mamfero tambin.

Cuantificacin existencial (-)

Afirma que por lo menos la relacin o caracterstica se cumple para algn valor de la
variable asociada.

En el caso de la cuantificacin universal se hacen afirmaciones sobre cualquier objeto. Asimismo, tambin se
pueden hacer afirmaciones acerca de algn objeto en el universo sin tener que nombrarlo, mediante un
cuantificador existencial.



7
7
Para afirmar, por ejemplo, que Mancha tiene una hermana que es un gato, escribiremos:

- x Hermana(x, Mancha) . Gato(x)

- se lee Existe... En general, -x P es verdadero si P es verdadero para cierto objeto del universo. Por lo
tanto, se le podra considerar equivalente a la disyuncin (es decir, v) de todas las oraciones obtenidas al
sustituir el nombre de un objeto por la variable x. Al efectuar esta sustitucin en el caso de la oracin anterior
se obtiene:

(Hermana(Mancha, Mancha) . Gato(Mancha)) v
(Hermana(Rebeca, Mancha) . Gato(Rebeca)) v
(Hermana(Flix, Mancha) . Gato(Flix)) v
(Hermana(Ricardo, Mancha) .Gato(Ricardo)) v
(Hermana(Juan, Mancha) . Gato(Juan)) v
.
.
.

La oracin existencialmente cuantificada es verdadera slo cuando al menos una de estas disyunciones es
verdadera. Si Mancha tuviera dos hermanas que fuesen gatos, entonces dos de las disyunciones seran
verdaderas, con lo que toda la disyuncin es tambin verdadera. Lo anterior es congruente con la oracin
original. Mancha tiene una hermana que es un gato.

As como nos parecera ser el conector natural para , . es el conector natural que
se emplea con -.

En el ejemplo de la seccin anterior el empleo de . como conector principal con produjo una aseveracin
excesivamente fuerte; el uso de con - por lo general produce una aseveracin muy dbil.


Considrese la siguiente representacin:

-x Hermana(x, Mancha) Gato(x)

Aparentemente lo anterior sera una expresin razonable de la oracin que nos interesa. Pero si se le expande
como disyuncin, se convierte en:

(Hermana(Mancha, Mancha)Gato(Mancha)) v
(Hermana(Rebeca, Mancha) Gato(Rebeca)) v
(Hermana(Flix, Mancha) Gato(Flix)) v
(Hermana(Ricardo, Mancha) Gato(Ricardo)) v
(Hermana(Juan, Mancha) Gato(Juan)) v
.
.
.

Ahora bien, esta disyuncin se satisface cuando alguno de sus disyuntos es verdadero.

Una implicacin es verdadera cuando tanto su premisa como su conclusin son
verdaderas, o si su premisa es falsa.

Por lo tanto, Si Ricardo Corazn de Len no es el hermano de Mancha, la implicacin

Hermana(Mancha,Ricardo)Gato(Ricardo)


8
8
es verdadera y, por lo tanto, toda la disyuncin es verdadera.

De esta manera, una oracin de implicacin cuantificada existencialmente es verdadera en aquel universo que
contenga un objeto para el que la premisa de la implicacin sea falsa; por lo tanto, oraciones como las
anteriores no aportan mucha informacin.

Cuantificadores anidados

Frecuentemente desearamos expresar oraciones ms complejas utilizando cuantificadores mltiples.

El caso ms sencillo es cuando los cuantificadores son del mismo tipo. Por ejemplo:

Para toda x y toda y, si x es el padre de y, entonces y es el hijo de x

se convierte en:

x, y Padre(x, y) Hijo(y, x)

x, y equivale a x y.

Igualmente, el hecho de que una persona y su hermano guarden un parentesco de hermandad se expresa de la
siguiente manera.

x, y Hermano(x, y) Hermano(y, x)

Habr casos con mezclas. Todas las personas aman a alguien, significa que cada una de las personas ama a
alguien:

x, - y Ama(x, y)

Por otra parte, la afirmacin Siempre hay alguien a quien todos aman se expresa:

- y x Ama(x, y)

Por lo tanto, el orden de la cuantificacin es muy importante.

Es ms clara cuando est entre parntesis.

En general x (- y P(x, y)), en donde P(x, y) es cualquier oracin arbitraria que involucra a x y y, quiere
decir que todo objeto en el universo tiene una propiedad particular, es decir, la propiedad relacionada con
algn objeto establecida por la relacin P.

Por otra parte, - x ( y P(x, y)) est afirmando que existe algn objeto en el mundo con una propiedad en
particular, concretamente la propiedad de estar relacionada a travs de P a todos los objetos del mundo.

Surge una dificultad que no es grave cuando se utilizan dos cuantificadores que tienen el mismo nombre de
variable.

Considrese la oracin

x [Gato(x) v (-x Hermano(Ricardo, x))]

En este caso, la x de Hermano(Ricardo, x) est cuantificada existencialmente.



9
9
La regla es que la variable pertenece al ms interno de los cuantificadores que en ella se mencionan; por ello,
no estar sujeta a ninguna otra cuantificacin. Lo anterior es precisamente como el alcance de la variable en
lenguajes de programacin estructurados por bloques, como el Pascal y Lisp, en los que la presencia de un
nombre de variable se refiere al ms interno de los bloques mediante el que se declar la variable. Otra forma
de ver lo anterior es la siguiente: -x Hermano(Ricardo, x) es una oracin acerca de Ricardo (que tiene un
hermano), no una oracin sobre x; as pues, el poner x exterior no producir ningn efecto.

Igualmente podra haberse escrito -z Hermano(Ricardo, z).

Debido a que lo anterior puede dar lugar a confusiones, siempre utilizaremos variables
diferentes.

Antes de utilizarla, la variable deber introducirse mediante un cuantificador.

Una oracin como x P(y), en la que y carece de cuantificador, es incorrecta.

A veces se da por supuesto que todas las variables no cuantificadas se introducen mediante un implcita,
como es el caso de la mayora de los lenguajes de programacin lgicos.

El trmino frmula bien configurada o fbc se emplea para calificar oraciones en las que todas sus variables
se han introducido adecuadamente. El trmino frmula bien configurada tambin se conoce como frmula
bien definida (fbd)

Relaciones entre y -

Ambos calificadores estn estrechamente relacionados entre s mediante la negacin.

Cuando alguien afirma que a todos les desagradan las espinacas, se est afirmando
tambin que no hay nadie a quien le gusten; y viceversa:

x Le gustan(x, espinacas)

es equivalente a

-x Le gustan(x, espinacas)

Un ejemplo ms:

A todos les gusta el helado, significa que no hay nadie a quien no le guste el helado:

x Le gusta(x, helado)

es equivalente a

- x Le gusta(x, helado)

Puesto que en realidad es una conjuncin de objetos del universo y - es una disyuncin, es natural que
obedezcan las leyes de De Morgan.

Estas leyes, correspondientes a oraciones cuantificadas y no cuantificadas son las siguientes:

x P -x P
x P -x P
x P -x P
-x P x P


10
10
P . Q (P v Q)
(P . Q) P v Q)
P . Q (P v Q)
P v Q (P . Q)

Igualdad

En la lgica de primer orden hay varias formas de construir oraciones atmicas, adems de la que consiste en
utilizar un predicado y trminos, como ya se explic antes.

Para formular aseveraciones en las que dos trminos se refieren a un mismo objeto se utiliza el smbolo de
igualdad. Por ejemplo:

Padre(Juan) = Enrique

Est afirmando que el objeto al que hace referencia Padre(Juan) y el objeto al que alude Enrique son lo
mismo.

Se puede considerar que la igualdad es un smbolo de predicado con un significado previamente definido, es
decir, aquel significado que se fija para referirse a la relacin de identidad.

La relacin de identidad es el conjunto de todos los pares de objetos donde los dos elementos de cada par son
el mismo objeto:

{ (Mancha, Mancha),
(Rebeca, Rebeca),
(Flix, Flix),
(Ricardo Corazn de Len, Ricardo Corazn de Len),
(Rey Juan, Rey Juan),
(Enrique II, Enrique II),
... }

Ahora bien, para saber si

Padre(Rey Juan) = Enrique es vlida para una interpretacin en particular, primero examinamos la
relacin funcional para Padre y se ubica la entrada

{ ...

(Rey Juan, Enrique II),
...}

As, puesto que Enrique se refiere a Enrique II, la aseveracin de igualdad es verdadera debido a que
(Enrique II, Enrique II) est en la relacin de igualdad.

El sgno de igualdad sirve para describir las propiedades de una funcin determinada, tal y como sucedi en el
anterior caso del signo Padre. Tambin se puede emplear en la negacin para insistir en que dos trminos no
son el mismo objeto.

Para expresar que Mancha tiene por lo menos dos hermanas, escribiramos:

-x,y Hermana(Mancha, x) . Hermana(Mancha, y) . (x = y)

si slo escribiramos



11
11
-x, y Hermana(Mancha, x) . Hermana(Mancha, y)

no estaramos afirmando la existencia de dos hermanas distintas, puesto que en ningn momento se afirma
que x y y deban ser diferentes.
Considrese la expansin de la aseveracin existencial para convertirla en una disyuncin: en cuanto tal
incluira:

...v (Hermana(Mancha, Rebeca) . Hermana(Mancha, Rebeca)) v ...

que se produce al sustituir Rebeca tanto por x como por y. Y si Rebeca es realmente la hermana de
Mancha, la aseveracin existencial es vlida puesto que esta disyuncin es verdadera.

Al aadir (x = y) la disyuncin se convierte en falsa, puesto que Rebeca = Rebeca es necesariamente
verdadera. La notacin x = y a veces e utiliza como forma abreviada de (x = y).

Representacin del mundo real en lgica

Para representar el conocimiento en lgica deben seguirse en su orden los siguientes pasos:

- Entender los enunciados o el conocimiento que se desee representar.
- Formular el conocimiento en el lenguaje natural deseado.
- Separar o identificar las caractersticas y/o relaciones que dan la idea de predicados.
- Escoger los smbolos de la lgica para las expresiones.
- Escribir las frmulas bien definidas (fbd).

Inferencia

Proceso mediante el cual se generan nuevas fbd a partir de las fbd existentes mediante la aplicacin de las
reglas de inferencia.

Las reglas que se aplican son las de la lgica proposicional (Modus Ponens, Y-Eliminacin, Y-Introduccin,
O-Introduccin y Resolucin) ms las tres reglas de inferencia siguientes:

- Eliminacin Universal: Para toda oracin o, variable v y trmino de base g:

v o

SUST({v/g}, o)

Por ejemplo, en

x LeGusta(x, ElHelado),

podemos utilizar la sustitucin {x/Ben} e inferir que

LeGusta(Ben, ElHelado).

Trmino de base es aquel en el que no hay variables; es decir, un smbolo constante o un smbolo de
funcin aplicados a algunos trminos de base.







12
12
- Eliminacin existencial: Para toda oracin o, variable v y smbolo constante k que no aparezca en
ninguna parte de la base de conocimientos:

- v o

SUST({v/k},o)

Por ejemplo, en

-x Mata(x, Vctima)

podemos inferir que

Mata(Asesino, Vctima)

en tanto Asesino no aparezca en ninguna parte de la base de conocimientos.

- Introduccin existencial: Para toda oracin o, variable v que no est en o y trmino de base g que no
est presente en o:
o

-v SUST({g/v}, o)

Por ejemplo, en

LeGusta(Jerry, ElHelado)

podemos inferir que

-x LeGusta(x, ElHelado).

Estas reglas se pueden comprobar utilizando la definicin de oracin universal como en el conjunto de todas
sus posibles concretizaciones (es decir, la Eliminacin universal sera como la Y-Eliminacin) y la definicin
de oracin existencial como el disyunto de todas sus concretizaciones posibles.

Es muy importante que la constante empleada para sustituir la variable en las reglas de la Eliminacin
existencial sea una constante nueva. De no cumplir con este requisito, es fcil que se d lugar a consecuencias
ilgicas. Por ejemplo, considrese la oracin -x Padre(x, Juan) (Juan tiene un padre). Si se sustituye a la
variable x por la constante Juan, se obtiene Padre(Juan, Juan), lo que evidentemente no es consecuencia
lgica de la oracin original.

Claro, lo que la oracin existencial est diciendo es que existe cierto objeto que satisface una condicin, y el
proceso de eliminacin lo que hace es precisamente dar un nombre a dicho objeto. Es obvio que, tal nombre
no debe haber sido asignado con anterioridad a otro objeto.

Resolucin

Se vi que la versin ms sencilla de la regla de inferencia por resolucin para la lgica proposicional tena la
forma:


o v |, | v o |, |
o su equivalente
o v o



13
13
La regla puede interpretarse de dos formas:

La primera consiste en verla como un razonamiento por caso. Si | es falsa, entonces desde la primera
disyuncin o debe ser verdadera; pero si | es verdadera, entonces desde la segunda disyuncin tambin
debe ser verdadera.

Por lo tanto, o o o son verdaderas.

La segunda manera de interpretarla es como una transitividad de implicacin: a partir de dos implicaciones,
deducimos una tercera que une la premisa de la primera con la conclusin de la segunda.
Conviene notar que Modus Ponens no nos permite deducir nuevas implicaciones, slo deduce conclusiones
atmicas. Por lo tanto, la regla de resolucin tiene ms capacidad que Modus Ponens.

A continuacin veremos que una generalizacin de la regla de resolucin sencilla puede funcionar como nica
regla de inferencia en un procedimiento de inferencia completo para lgica de primer orden.

Unificacin

UNIFICAR, es convertir dos oraciones p y q en una sustitucin mediante la que p y q resultan idnticas.

Formalmente:

UNIFICAR(p, q) = u donde SUST(u, p) = SUST(u, q)

u se conoce como el unificador de dos oraciones.

La regla de inferencia de resolucin

En la forma ms sencilla de la regla de resolucin, las premisas tienen exactamente dos disyuntos. La
podemos ampliar y obtener as una regla ms general en la que se afirme que para dos disyuntos de cualquier
extensin, si uno de ellos en una clusula (pj)

se unifica con la negacin de un disyunto de la otra (qk),
entonces se infiere la disyuncin de todos los disyuntos, excepto la de los dos primeros:


- Resolucin generalizada (disyunciones): Para las literales pi y qi

En donde UNIFICAR (pj, qk) = u:

p1 v ... pj ... v pm,
q1 v ... qk ... v qn

SUST(u, (p1 v ... pj-1 v pj+1 ... pm v q1 ... q k-1 v q k+1 ... v qn))

De manera similar, es posible expresar lo anterior mediante implicaciones:

- Resolucin generalizada (implicaciones): Para los tomos pi, qi, ri, si ,

En donde UNIFICAR(pj, qk) = u:

p1 . ... pj ... . pn1 r1 v ... rn2
s1 . ... . sn3 q1 v ... q k ... v qn4


SUST(u, (p1 . ... pj-1 . pj+1 . pn1 . s1 . ... sn3 r1 v ... rn2 v q1 v ... q k-1 v q k+1 v ... v qn4))



14
14
Formas cannicas de resolucin

En la primera versin de la regla de resolucin, cada una de las oraciones es una disyuncin de literales.
Se supone que todas las disyunciones de la BC se agrupan en una conjuncin implcita grande (como en
las BC normales), por lo que a esta forma se le denomina forma normal conjuntiva (FNC), aun cuando
cada oracin en particular sea una disyuncin (confuso, verdad?).

En la segunda versin de la regla de resolucin, cada una de las oraciones es una implicacin con una
conjuncin de tomos a la izquierda y una disyuncin de tomos a la derecha. A esto se le conoce como
forma implicativa normal (FNI), si bien el uso de este nombre no es una norma.

Forma normal conjuntiva Forma normal implicativa

P(w) v Q(w) P(w) Q(w)
P(x) v R(x) Verdadero P(x) v R(x)
Q(y) v S(y) Q(y) S(y)
R(z) v S(z) R(z) S(z)

Cualquier conjunto de oraciones puede convertirse de una forma a otra. Aunque desde un punto de vista
histrico, la ms comn de ellas es la forma normal conjuntiva. La forma normal implicativa resulta ms
natural.

Es importante tener en cuenta que la resolucin es una forma generalizada de modus ponens.

Desde luego, la forma implicativa es ms general que la forma de Horn, puesto que el lado derecho puede ser
una disyuncin, y no meramente un solo tomo.

Aparentemente, Modus Ponens tiene la capacidad de combinar tomos con una implicacin y as inferir una
conclusin, lo que la resolucin no puede hacer.

Sin embargo, esto no es ms que una ilusin: una vez que nos damos cuenta de que una oracin atmica, o,
en su forma normal implicativa est escrita como verdadero o, podemos darnos cuenta de que el
modus ponens no es sino un caso especial de la resolucin:


o, o | Verdadero o, o |
es equivalente a
| Verdadero |

Aun cuando Verdadero o sea la forma correcta de escribir una oracin atmica en forma normal
implicativa, a veces se escribe o como una abreviacin.

Conversin a la forma normal

Primero se demostrar que cualquier oracin lgica de primer orden se puede expresar en forma normal
implicativa o conjuntiva.

Luego se demostrar que a partir de un conjunto de oraciones en forma normal es posible demostrar que una
oracin determinada se deduce del conjunto.

Se presenta el procedimiento para hacer la conversin a la forma normal, paso a paso, mostrando que cada
uno de los pasos no cambia el significado; deber existir la seguridad de que a todas las posibles oraciones se
les maneja adecuadamente.



15
15
Se presenta el procedimiento transformando la sentencia: Todo el mundo que ama los animales es amado
por alguien.

x [y Animal(y) Ama(x, y)] [-y Ama(y, x)]

Los pasos son los siguientes:

- Elimine implicaciones: En los condicionales recuerde que p q es lo mismo que p v q.

En las equivalencias p q es lo mismo que (p v q) . (q v p).

x [y Animal(y) v Ama(x, y)] [-y Ama(y, x)]

x [y Animal(y)vAma(x, y)] v [-y Ama(y, x)]

- Transfiera adentro a : Las negaciones slo son permisibles en tomos en forma normal conjuntiva
(las negaciones slo deben afectar a tomos), y de ninguna manera en forma normal implicativa.
Eliminamos negaciones de amplio alcance mediante las leyes de De Morgan,

P . Q (P v Q)
(P . Q) P v Q)
P . Q (P v Q)
P v Q (P . Q)

x P -x P
x P -x P
x P -x P
-x P x P

x [-y (Animal(y) v Ama(x, y))] v [-y Ama(y, x)]

x [-y (Animal(y).Ama(x, y))]v[-y Ama(y, x)]

x [-y (Animal(y) . Ama(x, y))] v [-y Ama(y, x)]

Fjese en que el cuantificador universal (y) de la premisa de la implicacin se convierte en un
cuantificador existencial. La sentencia ahora se lee Hay algn animal que x no ama, o (si ste no es el
caso) o alguien ama a x. Est claro que el significado de la sentencia original se mantiene.

- Estandarizar las variables: Para las sentencias del tipo (x P(x)) v (-x Q(x)), que utilizan el mismo
nombre de la variable dos veces, se cambia una de las dos variables. O sea que cada
cuantificador tenga su propia variable. Esto evita la confusin posterior al eliminar los
cuantificadores. As tenemos:

x [-y (Animal(y) . Ama(x, y))] v [-z Ama(z, x)]

- Skolemizar: La Skolemizacin es el proceso de borrar los cuantificadores existenciales mediante su
eliminacin.

En el caso ms sencillo, se aplica la regla de la Especificacin Existencial: transformar -x P(x) a
P(A), donde A es una constante nueva. Si aplicamos esta regla a nuestra sentencia del ejemplo, obtenemos


x [(Animal(A) . Ama(x, A))] v [Ama(B, x)]


16
16


En donde se obtiene un significado totalmente errneo: la sentencia dice que todo el mundo o
no puede amar al animal A o que es amado por la entidad B.

De hecho, nuestra sentencia original le permite a cada persona no poder amar a un animal diferente o ser
amado por otra persona. Por lo tanto, lo que queremos es obtener las entidades de Skolem que dependen
de x.

x [Animal(F(x)) . Ama(x,F(x))]v[Ama(G(x), x)]


Aqu F y G son funciones de Skolem. La regla general es que los argumentos de la funcin de Skolem
dependen de las variables cuantificadas universalmente cuyo mbito abarca a los cuantificadores
existenciales.

Igual que con la Especificacin Existencial, la sentencia skolemizada es satisfactible slo cuando la
sentencia original lo es.

- Eliminar los cuantificadores universales: en este punto, todas las variables que quedan deben estar
cuantificadas universalmente. Ms an, la sentencia es equivalente a una en la que todos los
cuantificadores universales se han desplazado a la izquierda.

La skolemizacin elimina todas las variables cuantificadas existencialmente, gracias a lo cual ahora
podemos ya quitar los cuantificadores existenciales, puesto que todas las variables deben estar
cuantificadas universalmente.


[Animal(F(x)) . Ama(x, F(x))] v [Ama(G(x), x)]

- Distribuir la . respecto a la v:
(a . b) v c se convierte en
(a v c) . (b v c)

[Animal(F(x)) v Ama(G(x),x)] . [Ama(x, F(x)) v Ama(G(x), x)]

- Simplifique las conjunciones y disyunciones anidadas: (a v b) v c se convierte en (a v b v c), y
(a . b ) . c) se convierte en (a . b . c).

En nuestro ejemplo no se necesitara, luego la oracin quedara lo mismo

[Animal(F(x))vAma(G(x), x)].[Ama(x, F(x))vAma(G(x), x)]

La sentencia ahora est en FNC y est compuesta por dos clusulas.

La FNC es algo ilegible. (Podra ser de ayuda explicar que la funcin de Skolem F(x) se refiere al animal
que potencialmente no ama x, mientras que G(x) se refiere a alguien que podra amar a x).
Afortunadamente, las personas rara vez necesitan ver las sentencias en FNC.

- Convierta las disyunciones en implicaciones: Si lo desea, puede realizar un paso adicional y efectuar la
conversin a forma normal implicativa.

Por cada coyunto, agrupe en una sola lista las literales negativas, las literales positivas en otra y con base
en ellas construya una implicacin.



17
17
(a v b v c v d) se convierte en
(a . b) (c v d)


[Animal(F(x)) v Ama(G(x), x)] . [Ama(x, F(x)) v Ama(G(x), x)]

[Animal(F(x)) v Ama(G(x), x)] . [Ama(x, F(x)) Ama(G(x), x)]


La regla de resolucin

Una vez obtenidas las clusulas, la regla de resolucin dice:

Se toman 2 de stas llamadas (generatrices) que cumplan con la condicin de que tengan una literal comn
pero que en una est positiva y en la otra negada y se obtenga una resolvente con la disyuncin de todas las
literales de las generatrices excepto la pareja de literales que fue comn teniendo el cuidado de eliminar, cada
vez, una sola pareja de literales.

Ejemplo

Obtenga las conclusiones que puedan inferirse a partir de las siguientes sentencias:

A. Juan tiene un perro.
B. Todos los que tienen perros aman a los animales.
C. Nadie que ame a los animales los mata.
D. Juan o Curiosidad, mat al gato, que se llamaba Tuna.

- Primero: expresamos las oraciones originales (y cierto conocimiento de apoyo) en lgica de primer orden

A. -x Perro(x) . Propietario(Juan, x).
B. x (-y Perro(y).Propietario(x,y))AmanteDeLosAnimales(x).
C. x AmanteDeLosAnimales(x) y Animal(y) Mata(x, y).
D. Mata(Juan, Tuna) v Mata(Curiosidad, Tuna).
E. Gato(Tuna).

- Segundo: convertimos a la forma normal

Para A: Eliminamos el - con una variable de Skolem y separamos los predicados en dos premisas pues es
una conjuncin

A1: Perro(A)
A2: Propietario(Juan, A)

Para B: Eliminamos las implicaciones

x -y [ Perro(y) . Propietario(x, y)] AmanteDeLosAnimales(x).

x -y [ Perro(y) . Propietario(x, y)] v AmanteDeLosAnimales(x).

x y [ Perro(y) . Propietario(x, y)] v AmanteDeLosAnimales(x).

Introducimos las negaciones:

x y [ Perro(y) v Propietario(x, y)] v AmanteDeLosAnimales(x).



18
18
Eliminamos los cuantificadores universales

[ Perro(y) v Propietario(x, y)] v AmanteDeLosAnimales(x).

B: Perro(y) v Propietario(x, y) v AmanteDeLosAnimales(x).

Para C:

x {[AmanteDeLosAnimales(x)] [y Animal(y) Mata(x, y)]}.

x {[AmanteDeLosAnimales(x)] v [y Animal(y) Mata(x, y)]}.

x {[AmanteDeLosAnimales(x)] v [y Animal(y) v Mata(x, y)]}.

[AmanteDeLosAnimales(x)] v [ Animal(y) v Mata(x, y)].

C: AmanteDeLosAnimales(x) v Animal(y) v Mata(x, y).

Para D:

D: Mata(Juan, Tuna) v Mata(Curiosidad, Tuna).

Para E:

E: Gato(Tuna)

Como conocimiento de apoyo tenemos:

Gato(x) Animal(x)

Que en forma normal conjuntiva se expresa como:

F: Gato(x) v Animal(x)

As que todo el conocimiento qued expresado en forma normal conjuntiva o forma clausulada (disyuncin de
literales).

A1: Perro(A)
A2: Propietario(Juan, A)
B: Perro(y) v Propietario(x, y) v AmanteDeLosAnimales(x).
C: AmanteDeLosAnimales(x) v Animal(y) v Mata(x, y).
D: Mata(Juan, Tuna) v Mata(Curiosidad, Tuna).
E: Gato(Tuna)
F: Gato(x) v Animal(x)

- Tercero: Aplicamos la regla de resolucin

G1 = E = Gato(Tuna)

G2 = F = Gato(x) v Animal(x)

UNIFICAR(G1, G2) = {x/Tuna})

G2 = Gato(Tuna) v Animal(Tuna)



19
19
Obtenemos la resolvente

R1 = Animal(Tuna)

Haciendo ahora

G3 = R1 = Animal(Tuna)

G4 = C = AmanteDeLosAnimales(x) vAnimal(y) v Mata(x, y)


UNIFICAR(G3, G4) = {y/Tuna}

G4=AmanteDeLosAnimales(x)vAnimal(Tuna)vMata(x, Tuna)

Obtenemos la resolvente

R2 = AmanteDeLosAnimales(x) v Mata(x, Tuna)

R2 = AmanteDeLosAnimales(x) Mata(x, Tuna)

Haciendo ahora

G5 = R2 = AmanteDeLosAnimales(x) v Mata(x, Tuna)

G6 = D = Mata(Juan, Tuna) v Mata(Curiosidad, Tuna)

UNIFICAR(G5, G6) = {x/Juan}

G5 = AmanteDeLosAnimales(Juan) v Mata(Juan, Tuna)

Obtenemos la resolvente

R3 = AmanteDeLosAnimales(Juan)v Mata(Curiosidad, Tuna)

Haciendo ahora

G7 = A1 = Perro(A)

G8 = B = Perro(y) v Propietario(x, y) v AmanteDeLosAnimales(x).

UNIFICAR(G7, G8) = {y/A}

G8 = Perro(A)v Propietario(x, A) v AmanteDeLosAnimales(x).

Obtenemos la resolvente

R4 = Propietario(x, A) v AmanteDeLosAnimales(x)


Haciendo ahora

G9 = R4 = Propietario(x, A) v AmanteDeLosAnimales(x)

G10 = A2 = Propietario(Juan, A)


20
20
UNIFICAR(G9, G10) = {x/Juan}

G9 = Propietario(Juan, A) v AmanteDeLosAnimales(Juan)

Obtenemos la resolvente

R5 = AmanteDeLosAnimales(Juan)

Haciendo ahora

G11=R3= AmanteDeLosAnimales(Juan)vMata(Curiosidad, Tuna)

G12 = R5 = AmanteDeLosAnimales(Juan)

Obtenemos la resolvente


R6 = Mata(Curiosidad, Tuna)


Resolucin por refutacin

Existe un procedimiento de inferencia completo en el que se utiliza la resolucin conocido como refutacin,
o tambin como demostracin por contradiccin o reductio ad absurdum.

Consiste en que para demostrar P, suponemos que P es falsa (es decir, se aade P a la base de
conocimientos) y se demuestra una contradiccin. Si es posible hacer lo anterior, entonces la base de
conocimientos debe implicar P.

En otras palabras aplicar la resolucin por refutacin consiste en comprobar que aplicando la regla de
resolucin utilizando el conjunto de premisas y la conclusin negada se obtiene la clusula :

(P1, P2, ... , Pn, P)

Por lo tanto se dice que del conjunto de premisas que son verdad y de la conclusin negada se llega a una
contradiccin, por tanto P es falso, y lo cierto es que la conclusin si se infiere de las premisas.

LA resolucin por refutacin se aplica cuando se pide verificar la validez de un razonamiento, o sea verificar
si de un conjunto de premisas se puede inferir la conclusin dada.


Ejemplo

Aplicando resolucin por refutacin, decir si la siguiente conclusin: Mat curiosidad al
gato? puede inferirse a partir de las siguientes sentencias:

A: Juan tiene un perro.
B: Todos los que tienen perros aman a los animales.
C: Nadie que ame a los animales los mata.
D: Juan o Curiosidad, mat al gato, que se llamaba Tuna.

- Agregando a las sentencias y al conocimiento de apoyo la conclusin negada obtenemos:

A: Juan tiene un perro.
B: Todos los que tienen perros aman a los animales.


21
21
C: Nadie que ame a los animales los mata.
D: Juan o Curiosidad, mat al gato, que se llamaba Tuna.
E: Tuna es un gato.
F: Los gatos son animales
G: No mat Curiosidad al gato?

- Expresadas en lgica de primer orden

A: - x Perro(x) . Propietario(Juan, x).
B: x (- y Perro(y) . Propietario(x, y)) AmanteDeLosAnimales(x).
C: x AmanteDeLosAnimales(x) y Animal(y) Mata(x, y).
D: Mata(Juan, Tuna) v Mata(Curiosidad, Tuna).
E: Gato(Tuna).
F: Gato(x) Animal(x)
G: -x (Gato(x) . Mata(Curiosidad, x))

Para G se parti de:

G: Mat Curiosidad al gato?
G: -x (Gato(x) . Mata(Curiosidad, x))


- Representadas en forma normal conjuntiva

A1: Perro(A)
A2: Propietario(Juan, A)
B: Perro(y) v Propietario(x, y) v AmanteDeLosAnimales(x).
C: AmanteDeLosAnimales(x) v Animal(y) v Mata(x, y).
D: Mata(Juan, Tuna) v Mata(Curiosidad, Tuna).
E: Gato(Tuna)
F: Gato(x) v Animal(x)
G: Gato(x) v Mata(Curiosidad, x)

La forma normal conjuntiva de G se obtuvo as:

G: -x (Gato(x) . Mata(Curiosidad, x))
G: x (Gato(x) . Mata(Curiosidad, x))
G: x (Gato(x) v Mata(Curiosidad, x))
G: Gato(x) v Mata(Curiosidad, x)


- Aplicando resolucin por refutacin

Tomando como generatrices

G13 = E = Gato(Tuna)

G14 = G = Gato(x) v Mata(Curiosidad, x)


UNIFICAR(G13, G14) = {x/Tuna}

G14 = Gato(Tuna) v Mata(Curiosidad, Tuna)



22
22
obtenemos la resolvente

R7 = Mata(Curiosidad, Tuna)

Tomando como generatrices

G15 = R6 = Mata(Curiosidad, Tuna)
G16 = R7 = Mata(Curiosidad, Tuna)

Obtenemos la resolvente

(G15, G16)

Por tanto la conclusin: Mat curiosidad al gato? es verdadera.