You are on page 1of 11

Dpto de Informtica. UVA. Noviembre 2006.

Lgica de primer orden

Lgica de Primer Orden


1 Introduccin
El hecho de que las frmulas atmicas representen proposiciones simples y no se pueda acceder a los
elementos de la proposicin, restringe la capacidad expresiva de la lgica proposicional.
La lgica de primer orden incluye el concepto de trmino, como componente de las frmulas atmicas,
que hace referencia a los elementos que forman parte de las proposiciones simples.
Considerar las sentencias:
Confucio es un hombre.
Todos los hombres son mortales.
La inferencia trivial Confucio es mortal puede realizarse en la lgica de primer orden, pero no en la
lgica proposicional.

2 Lenguaje de la lgica de primer orden


2.1 Sintaxis
Los smbolos bsicos a partir de los cuales se construyen las frmulas del lenguaje son:
Smbolos de Constantes: A, B, C,... , Arbol, Luis.
Smbolos de Funciones: f, g, h, ... , suma, resta.
Cada smbolo de funcin tiene asociado un entero (>1) denominado grado o
aridad, que indica cuantos argumentos tomar el smbolo de funcin.
Smbolos de predicado: P, Q, R, ... , COLOR, PADRE
Los smbolos de predicado tambin tienen asociado un grado o aridad.
Smbolos de variable:
Conectores Lgicos:
Cuantificadores:
Smbolos Auxiliares:

x, y, z, x1, y1, z1, ...


(contable)
, , , ,
, cuantificador universal, para todo.
, cuantificador existencial, existe.
(, ), ,

Def. 2.1.1 Vocabulario, W 1 .


Un vocabulario, W, es una cudrupla <C, F, P, d> donde
C: conjunto finito de smbolos de constantes
F: conjunto finito de smbolos de funcin
P: conjunto finito de smbolos de predicado
d: funcin grado o aridad; d: F P ---> {1, 2, 3 , ...}
con la restriccin de que C, F y P son disjuntos dos a dos. Supondremos, adems, que no contienen
smbolos de variable, conectores, cuantificadores, ni smbolos auxiliares.

Una definicin ms adecuada es W=<F, P, d>, de modo que los smbolos de constante se consideran
smbolos de funcin de grado 0. Adems, F y P son contables.

1
02/11/2006

Dpto de Informtica. UVA. Noviembre 2006.


Lgica de primer orden

Def. 2.1.2 Trminos.


Se denominan trminos de un vocabulario, W, a las siguientes expresiones:
smbolos de constantes (constantes)
smbolos de variable (variable)
g(t1, t2, ... ,tn), donde g es un smbolo de funcin de grado n y t1, t2, ... ,tn, son trminos.
Los trminos denotarn objetos:
A
constante
x
variable
g(A, B) funcin

referencia a un elemento especifico, siempre el mismo


referencia a un elemento especifico, segn el contexto
referencia a un elemento especifico, de forma indirecta

Def. 2.1.3 Frmulas Atmicas o tomos.


Las frmulas atmicas son expresiones de la forma P(t1, t2, ... ,tn), siendo P un smbolo de predicado de
grado n y t1, t2, ... ,tn trminos.
Las frmulas atmicas expresen relaciones entre los objetos que denotan sus trminos:
JEFE(Pedro, Luis)
Pedro es el jefe de Luis
RESPETA(Luis, madre(Luis))
Luis respeta a su madre

Def. 2.1.4 Frmula Bien Formada (FBF).


Las FBFs se definen inductivamente por:
1. Una formula Atmica es una FBF.
2. Si es una FBF, () es una FBF.
3. Si y son FBFs ( ), ( ), ( ), ( ) son FBFs .
4. Si es una FBF, (x) y (x) son FBF
5. El conjunto de FBFs es el cierre transitivo del conjunto de frmulas atmicas con las leyes 1), 2), 3)
y 4)
Conjunto de FBFs: Lenguaje de primer orden sobre W: L1W (L1 si W fijo).
EL uso de los parntesis se puede reducir con los convenios:
asociatividad: de izquierda a derecha
prioridad: , , , , , ,

Def. 2.1.5 Cuantificadores y Alcance.


Sea la FBF Qx, con Q uno de o . Se denominan:
cuantificador (sobre x): Qx
alcance del cuantificador:

2
02/11/2006

Dpto de Informtica. UVA. Noviembre 2006.


Lgica de primer orden

Def 2.1.6 Ocurrencias libre y ligadas de una variable.


Una ocurrencia de una variable, x, est ligada sii
es la ocurrencia del cuantificador, o
est en el alcance de un cuantificador sobre x
Una ocurrencia de una variable, x, es libre, sii no est ligada.

2.2 Semntica
Def. 2.2.1 Interpretacin.
Una interpretacin, I, de un vocabulario, W, consiste en un par (D, fI) siendo D el dominio o universo de
discurso y fI una funcin de interpretacin.
fI se define por:
Si A es un smbolo de constante fI(A)=AI D
Si x es un smbolo de variable fI(x)=xI D
Si g es un smbolo de funcin con d(g)=n, fI(g)=gI siendo gI una funcin gI:K ---> D y K Dn
Si P es un smbolo de predicado con d(P)=n, fI(P)=PI siendo PI una relacin y PI Dn
P

Def 2.2.2 Evaluacin de trminos y frmulas atmicas.


A partir de I, se define de forma nica una funcin de evaluacin de trminos y frmulas atmicas Vt de
la siguiente forma:
trminos
Si A es un smbolo de constante Vt (A) = fI(A) = AI D
Si x es un smbolo de variable Vt (x) = fI(x) = xI D
Si g es un smbolo de funcin con d(g) = n, t1, t2 ... , tn trminos,
Vt (g=(t1, t2 ... , tn)) = gI (Vt(t1), Vt(t2) ... , Vt(tn)) D
frmulas atmicas
Si P(t1, t2, ... ,tn) es una frmula atmica,
Vt(P(t1, t2, ... ,tn))= T si (Vt(t1), Vt(t2) ... , Vt(tn)) PI ; F si (Vt(t1), Vt(t2) ... , Vt(tn)) PI
P

Def. 2.2.3 Interpretacin modificada. 2


Sea I:(D, fI) una interpretacin y x una variable. La interpretacin modificada <xd>I es el par (D,
<xd>fI), con <xd>fI definida por:
Si A es una constante <xd>fI(A) = fI(A)
Si y es un smbolo de variable, y x, <xd>fI(y) = fI(y)
Para la variable x, <xd>fI(x) = d D
Si g es un smbolo de funcin con d(g) = n, <xd>fI(g) = fI(g)
Si P es un smbolo de predicado con d(P) = n, <xd>fI(P) = fI(P)
Def. 2.2.4 Evaluacin de trminos y frmulas atmicas modificada.
A partir de una interpretacin modificada <xd>I, se define de forma nica una funcin de evaluacin
de trminos y frmulas atmicas modificada <xd>Vt de la siguiente forma:

De manera similar se definen las interpretaciones mltiplemente modificadas.


<x1d1><x2d2>.... <xndn>I <x1d1>(<x2d2>(.... (<xndn>I))... )
<xd><xe>I <xd>(<xe>I) <xd>I
3
02/11/2006

Dpto de Informtica. UVA. Noviembre 2006.


Lgica de primer orden

trminos
Si A es una constante <xd>Vt(A) = Vt(A)
Si y es un smbolo de variable, y x, <xd>Vt(y) = Vt(y)
Si x es un smbolo de variable, <xd>Vt(x) = d D
Si g es un smbolo de funcin con d(g) = n, t1, t2 ... , tn trminos,
<xd>Vt (g=(t1, t2 ... , tn)) = gI (<xd>Vt(t1), <xd>Vt(t2) ... , <xd>Vt(tn)) D
frmulas atmicas
Si P(t1, t2, ... ,tn) es una frmula atmica,
<xd>Vt(P(t1, t2, ... ,tn))= T si (<xd>Vt(t1), <xd>Vt(t2) ... , <xd>Vt(tn)) PI
F si (<xd>Vt(t1), <xd>Vt(t2) ... , <xd>Vt(tn)) PI
P

Def. 2.2.5 Evaluacin de FBFs. 3


Sea I una interpretacin de un vocabulario W, y Vt una funcin de valuacin de trminos y frmulas
atmicas. A partir de Vt se define de forma nica una funcin de evaluacin de FBSs , V, de la siguiente
forma:
1. Si es un tomo, V() = Vt()
2. Si es una FBF, V(): T si V()= F; F si V()= T
3. Si y son FBFs,
V( )= T si V()=V()=T; F en otro caso
V( )= F si V()=V()=F; T en otro caso
V( )= F si V()=T y V()=F; T en otro caso
V( )= T si V()=V(); T en otro caso
4. Si es una FBF, V(x): T si <xd>V() = T para todo d D; F en otro caso
5. Si es una FBF, V(x): T si <xd>V() = T para algn d D; F en otro caso
Se dice que es cierta bajo I, o que I satisface sii V()= T, donde V se define a partir de I segn def.
2.2.5. En caso contrario, se dice que es falsa bajo I
Def. 2.2.6 Sentencia o frmula cerrada
Se denomina sentencia a una FBF en la que no hay ocurrencias de variables libres.
Lema 1
Sea (x) una FBF en la que ocurre x como variable libre, =Qx(x) e I una interpretacin.
V() no depende de fI(x).
Lema 2
Sea una FBF en la que no hay ocurrencias libres de x e I una interpretacin.
V() no depende de fI(x).
Lema 3
Si es una sentencia e I una interpretacin, V() no depende de los valores que fI asigne a las variables.

Por brevedad, se omite la definicin de funcin de evaluacin modificada, aunque se emplea en la


propia definicin. La definicin comenzara:
1. Si es un tomo, <xd>V() = <xd>Vt()
2. Si es una FBF, <xd>V(): T si <xd>V()= F; F si <xd>V()= T
3. Si y son FBFs,
<xd>V( )= T si <xd>V()=<xd>V()=T; F en otro caso

4
02/11/2006

Dpto de Informtica. UVA. Noviembre 2006.


Lgica de primer orden

3 Modelo, Consistencia, Validez y Satisfacibilidad.


3.1 Modelo, Consistencia y Validez
Def 3.1.1 Modelo.
Una interpretacin, I, es un modelo de una sentencia, , sii V()=T
Una interpretacin, I, es un modelo de un conjunto finito de sentencias, ={1, 2, ...
modelo de todo i .

, n} sii I es un

Def 3.1.2 Consistencia.


Una sentencia, , es consistente o satisfacible sii tiene un modelo.
Un conjunto finito de sentencias, , es consistente o satisfacible sii tiene un modelo.
xP(x) es consistente.
Def 3.3 Inconsistencia.
Una sentencia, , es inconsistente o insatisfacible sii no es consistente.
Un conjunto finito de sentencias, , es consistente o satisfacible sii no es consistente.
x(P(x) P(x))

es inconsistente

Def. 3.1.4 Validez.


Una sentencia, , es vlida o tautolgica sii es cierta bajo todas las interpretaciones I de W.
xP(x) P(A)
x(P(x) P(x))

es vlida
es vlida

3.2 Satisfacibilidad
Def. 3.2.1 Lgica semi-decidible.
Una lgica es semi-decidible si el problema de la satisfacibilidad no es computable en dicha lgica, pero
podemos dar un procedimiento de cmputo que para cualquier conjunto finito de sentencias inconsistente,
termine indicando su inconsistencia. Ntese que no se garantiza que el procedimiento termine para
cualquier conjunto finito de sentencias.
La lgica de primer orden es semi-decidible.
En la prctica, dado cualquier procedimiento para determinar la inconsistencia de un conjunto finito de
sentencias, este puede:
1. Terminar normalmente (tericamente parar), indicando la consistencia o inconsistencia
2. Terminacin por consumo de recursos, y el conjunto de sentencias puede ser
2.1. Inconsistentes, pero el procedimiento termina antes de comprobarlo por agotar los recursos
asignados.
2.2. Consistentes, pero el procedimiento termina por agotar los recursos asignados.

5
02/11/2006

Dpto de Informtica. UVA. Noviembre 2006.


Lgica de primer orden

4 Equivalencia
def. 4.1 Equivalencia.
Dos sentencias y son equivalentes, y se denota por = , sii y tienen los mismos valores de
verdad bajo cualquier interpretacin I del vocabulario W.

4.1 Leyes de equivalencia


Denotamos por , y FBFs; por una FBF en la que no hay ocurrencias libres de x; por
inconsistente; por una FBF vlida.
1
2
3
4
5
6
7
8
9
10
11
12
13
14

( ) = ( ) ( )
( ) = ( )
( ) = ( )
( ) = ( )
(( ) ) = ( ( ))
( ( ) ) = ( ( ) ( ) )
( ( ) ) = ( ( ) ( ) )
( ) =
( ) =
( ) =
( ) =
( ) =
( ) =
( ) =
( ) =
() =
( ) =
( ) =
Qx(x) = Qx ( (x))
Qx(x) = Qx ( (x))
(x) = (x)
(x) = (x)
x((x) (x)) = x(x) (x)
x((x) (x)) = x(x) (x)

una FBF

Eliminacin del b-condicional


Eliminacin del condicional
Conmutativa
Asociativa
Distributiva respecto
Absorcin
Contradiccin
Exclusin de los medios
Idempotencia
Doble negacin
De Morgan

De Morgan cuantificadores
Distributiva ,
,

Lema 4
Sean , , , FBFs con = y ocurre en . Sea FBF obtenida a partir de reemplazando todas las
ocurrencias de por .
y son equivalentes.
Lema 5
Sea (x) FBF en la que hay ocurrencias libres de x. Sea y una variable que no ocurre en (x) . Sea (y) la
FBF que se obtiene a partir de (x) reemplazando todas las ocurrencias libres de x por y
Qx(x) = Qy(y).

6
02/11/2006

Dpto de Informtica. UVA. Noviembre 2006.


Lgica de primer orden
Lema 6
Sea una sentencia en la que hay ocurrencias de x pero no de y. Sea la sentencia obtenida
reemplazando todas las ocurrencias de x en algn cuantificador y su alcance por y.
y son equivalentes.
x(yP(x, y) yQ(x, y)) = x(uP(x, u) yQ(x, y)) =
= z(uP(z, u) yQ(z, y)) = zu y (P(z, u) Q(z, y))

5 Consecuencia lgica
Def. 5.1 Consecuencia Lgica.
Sean , 1, 2, ... , n sentencias. Se dice que es una consecuencia lgica de las premisas 1, 2, ...
, n y se denota por 1, 2, ... , n |= sii todo modelo de {1, 2, ... , n} es un modelo de .
Sea un conjunto finito de sentencias. Se dice que es una consecuencia lgica de , y se denota |=
, sii es una consecuencia lgica de una secuencia de formulas de .
1 x(P(x) R(x))

2 P(A)

R(A)

1, 2 |=

Teorema de Refutacin
Sean , 1, 2, ... , n sentencias. Las siguientes expresiones son equivalentes
1. 1, 2, ... , n |=
2. ((1 2 ... n) ) es una tautologa
3. (1 2 ... n ) es inconsistente
La demostracin es sencilla procediendo, por ejemplo, 3) 2) 1) 3).
Inters del teorema: 3) nos proporciona un mtodo para comprobar si una frmula es consecuencia lgica
de unas premisas (mtodos de demostracin por refutacin).

6 Reglas de inferencia
Son reglas de manipulacin sintctica que permiten generar nuevas frmulas a partir de unas frmulas
dadas.
Def 6.1 Patrn de FBF.
Esquema de FBF que consta de ocurrencias de conectores lgicos, smbolos auxiliares y variables cuyo
rango es el conjunto de FBFs.
A partir de un esquema de FBF se obtienen FBFs reemplazando las variables por FBFs.
patrn: ( )

FBFs: P(x) (R(x) P(x))

yP(y) (R(x) y P(y))

7
02/11/2006

Dpto de Informtica. UVA. Noviembre 2006.


Lgica de primer orden
Def 6.2 Regla de inferencia.
Se denomina regla de inferencia a la estructura antecedente consecuente, donde
antecedente o premisas: secuencia de patrones de FBF
consecuente: secuencia de patrones de FBF
Dado un conjunto finito de FBFs, , una regla de inferencia
se puede aplicar si los patrones del antecedente se pueden particularizar a formulas de .
su efecto es obtener las FBFs resultantes de particularizar el consecuente.
Def. 6.3 Regla de inferencia slida
Una regla de inferencia es slida sii las frmulas que permite generar son consecuencia lgica de las
frmulas sobre las que se aplica,

6.1 Reglas de inferencia ms comunes.


Modus Ponens:
Modus Tollens:
Abduccin:
Eliminacin And:
Introduccin And:

,
,
,
,
,

Instanciacin Universal: x
donde se obtiene reemplazando las ocurrencias libres de x en por un trmino t que sea libre
respecto a x en 4
un trmino t es libre respecto a la variable x en sii x no ocurre, en , en el alcance de un
cuantificador de una variable de t, salvo, quizs, la propia x.
x(P(x) R(x))
P(A)
a partir de , IU: P(A) R(A)
a partir de , , MP se obtiene R(A)

6.2 Teora.
Def. 6.2.1 Derivacin 5
Sea un conjunto finito de FBFs, R una conjunto finito de reglas de inferencia y 1, 2, ...
secuencia de FBFs.

, n, una

Se dice que 1, 2, ...


, n, es una derivacin de a partir de usando R sii para todo i de la
secuencia,
i
existen frmulas previas de la secuencia y una regla de R que permiten generar i.
La existencia de una prueba se denota por | R

Estas restricciones evitan que a partir de la frmula yzODIA(y,z) la aplicacin de la regla de


inferencia de IU genere la frmula zODIA(madre(z),z) pues madre(z) no es libre respecto a la variable y
en la frmula original.
5
Esta definicin de derivacin es ms dbil que el de prueba formal, que tambin contempla la
posibilidad de que las frmulas de la secuencia se obtengan a partir de axiomas lgicos. Cuando el
conjunto de axiomas propios es vaco, ambos conceptos coinciden.
4

8
02/11/2006

Dpto de Informtica. UVA. Noviembre 2006.


Lgica de primer orden
Def. 6.2.2 Axiomas Propios
Se denominan Axiomas Propios a un conjunto finito de FBFs consistente.
Def. 6.2.3 Teora.
Sea L una lgica y AP axiomas propios de L.
Se denomina Teora de Axiomas Propios AP sobre L al conjunto AP. La teora se denota por Th(AP)L .
Def. 6.2.4 Teorema.
Sea Th(AP) una teora, t una FBF y R una conjunto de reglas de inferencia.
t es un teorema de Th(AP), usando R, si Th(AP) | R t
Def. 6.2.5 Teora slida.
Una teora Th(AP) es slida sii todos sus teoremas son consecuencia lgica de AP.
Def. 6.2.6 Teora completa.
Una teora Th(AP) es completa sii todas las consecuencia lgica de AP son teoremas de la teora.

7 Unificacin
La unificacin es un procedimiento que permite comprobar si dadas dos formulas, x y x, la regla de
inferencia de instanciacin universal permite obtener, respectivamente, las frmulas y de modo que
y sean sintcticamente iguales. Esta comprobacin suele ser un paso previo a la aplicacin de
cualquier regla de inferencia.

7.1 Substituciones
Def. 7.1.1 Ligadura.
Sean ti un termino y xi una variable que no ocurra en ti.
Se denomina ligadura al par ordenado ti / xi.
Las ligaduras se interpretan diciendo que el trmino ti substituye las ocurrencias de la variable xi.
La variable de la ligadura se dice que est ligada.
Def. 7.1.2 Substitucin.
Se denomina substitucin, s, a un conjunto finito de ligaduras { t1 / x1, t2 / x2,...
restricciones:
xi xj, para todo i, j
xi no ocurre en tj, para todo i, j

, ti / xi}, con las

Def. 7.1.3 Expresin.


Una expresin es un trmino o una FBF.
Def. 7.1.4 Particularizacin por substitucin.
Sean E una expresin y s una substitucin.
Se denomina particularizacin por substitucin de E mediante s (particularizacin) a la expresin
obtenida reemplazando las variables de E que estn ligadas en s por los trminos de sus ligaduras
9
02/11/2006

Dpto de Informtica. UVA. Noviembre 2006.


Lgica de primer orden
correspondientes. Si la particularizacin resultante no contiene variables, se denomina particularizacin
bsica.
E P(x, f(y), B)

s = {z/x, w/y}

Es P(z, f(w), B)

Def. 7.1.5 Variante Alfabtica.


Dos expresiones son variantes alfabticas sii solo se diferencian en el nombre de las variables.
E y Es en el ejemplo anterior son variantes alfabticas.
Def 7.1.6 Substituciones distintas.
Sean s1 y s2 substituciones.
Se dice que s2 es distinta de s1 sii ninguna variable ligada de s1 ocurre en s2.
s1 = {f(x, y)/w} s2={A/x, B/y, C/z}
s2 es distinta de s1, pues w no ocurre en s1
s1 no es distinta de s2
Def 7.1.7 Composicin de substituciones.
Sea s2 una substitucin distinta de s1.
Se denomina composicin de s2 con s1 y se denota s1s2 a la substitucin obtenida:
1. aplicando s2 a los trminos de s1
2. aadiendo al conjunto resultante las ligaduras de s2
s1 = {f(x, y)/w} s2={A/x, B/y, C/z}
s1s2 = {f(A, B)/w, A/x, B/y, C/z}
s2s1 no est definida

7.2 Unificador ms general.


Def. 7.2.1 Particularizacin por substitucin de un conjunto de expresiones.
Sea ={E1, E2, ... ,En} un conjunto finito de expresiones y s una substitucin.
Se define la particularizacin de por s, s, al conjunto resultante de aplicar s a cada Ei , eliminando
las particularizaciones repetidas.

Def. 7.2.2 Unificador.


Sean un conjunto finito y no vaco de expresiones y s una substitucin.
s es un unificador de sii s tiene un nico elemento. Se dice entonces que es unificable.
= {P(A, y, z), P(x, B, z)}
s={A/x, B/y, C/z}
s = {P(A, B, C) } y es unificable
Def. 7.2.3 Unificador ms general.
Sean un conjunto finito de expresiones y g un unificador de .
Se dice que g es el unificador ms general de sii para cualquier otro unificador de , s, existe una
substitucin, s, que verifica s = gs
= {P(A, y, z), P(x, B, z)}
g={A/x, B/y}
s= {C/z}

s={A/x, B/y, C/z}


s=gs

10
02/11/2006

Dpto de Informtica. UVA. Noviembre 2006.


Lgica de primer orden
Teorema de unificacin.
Sea un conjunto finito de expresiones.
Si es unificable , el unificador ms general, g, existe y es nico salvo variantes alfabticas.

7.3 Algoritmo de unificacin.


Def. 7.3.1 Conjunto de desacuerdos.
Sea un conjunto finito y no vaco de expresiones.
El conjunto de desacuerdos, D, de se obtiene localizando el primer smbolo por la izquierda en el que
no todas las expresiones de tienen el mismo smbolo, y extrayendo de cada expresin Ei la
subexpresin que comienza por el smbolo que ocupa dicha posicin. El conjunto de desacuerdos, D, es el
conjunto formado por estas subexpresiones.
= {P(A, y, z)}, P(x, B, z), P(u, B, z)}

D={A, x, u}

Algoritmo de unificacin.
Entrada: conjunto finito y no vaci de expresiones, .
Salida: unificador ms general de o fallo si no es unificable.
1.
2.
3.
4.
5.

hacer k=0, k=, sk=0


Si k tiene ms de un elemento, crear el conjunto de desacuerdos Dk de k; en caso contrario
devolver sk, umg de .
Si no existen vk, tk Dk, tales que vk no ocurra en tk, devolver fallo ( no es unificable)
Elegir vk, tk Dk, tales que vk no ocurra en tk, hacer sk+1=sk{tk/vk} y k+1= k {tk/vk}
hacer k=k+1 e ir a 2

Se puede demostrar que este algoritmo para, y que si es unificable, el algoritmo encuentra su umg.

11
02/11/2006