You are on page 1of 138

Temas de Lgica informtica (201011)

Jos A. Alonso Jimnez


Andrs Cordn Franco
Mara J. Hidalgo Doblado

Grupo de Lgica Computacional


Dpto. de Ciencias de la Computacin e Inteligencia Artificial
Universidad de Sevilla
Sevilla, 7 de Febrero de 2010

Esta obra est bajo una licencia ReconocimientoNoComercialCompartirIgual 2.5 Spain


de Creative Commons.

Se permite:
copiar, distribuir y comunicar pblicamente la obra
hacer obras derivadas

Bajo las condiciones siguientes:


-2cm-2cm
Reconocimiento. Debe reconocer los crditos de la obra de la manera especifi
el autor.
-2cm-2cm
No comercial. No puede utilizar esta obra para fines comerciales.

-2cm-2cmCompartir bajo la misma licencia. Si altera o transforma esta obra, o genera


derivada, slo puede distribuir la obra generada bajo una licencia idntica a
Al reutilizar o distribuir la obra, tiene que dejar bien claro los trminos de la licencia de esta obra.
Alguna de estas condiciones puede no aplicarse si se obtiene el permiso del titular
de los derechos de autor.

Esto es un resumen del texto legal (la licencia completa). Para ver una copia de esta
licencia, visite http://creativecommons.org/licenses/by-nc-sa/2.5/es/ o envie una
carta a Creative Commons, 559 Nathan Abbott Way, Stanford, California 94305, USA.

ndice general
1. Sintaxis y semntica de la lgica proposicional
1.1. Introduccin . . . . . . . . . . . . . . . . . . . . . .
1.1.1. Panorama de la lgica . . . . . . . . . . . .
1.1.2. Ejemplos de argumentos y formalizaciones
1.2. Sintaxis de la lgica proposicional . . . . . . . . .
1.2.1. El lenguaje de la lgica proposicional . . .
1.2.2. Recursin e induccin sobre frmulas . . .
1.2.3. rboles de anlisis (o de formacin) . . . .
1.2.4. Eliminacin de parntesis . . . . . . . . . .
1.2.5. Subfrmulas . . . . . . . . . . . . . . . . . .
1.3. Semntica proposicional . . . . . . . . . . . . . . .
1.3.1. Valores y funciones de verdad . . . . . . .
1.3.2. Interpretaciones . . . . . . . . . . . . . . . .
1.3.3. Modelos, satisfacibilidad y validez . . . . .
1.3.4. Algoritmos para satisfacibilidad y validez
1.3.5. Seleccin de tautologas . . . . . . . . . . .
1.3.6. Equivalencia lgica . . . . . . . . . . . . . .
1.3.7. Modelos de conjuntos de frmulas . . . . .
1.3.8. Consistencia y consecuencia lgica . . . . .
1.3.9. Argumentaciones y problemas lgicos . . .
2. Deduccin natural proposicional
2.1. Reglas de deduccin natural . . . . . . . . . . .
2.1.1. Reglas de la conjuncin . . . . . . . . .
2.1.2. Reglas de la doble negacin . . . . . . .
2.1.3. Regla de eliminacin del condicional .
2.1.4. Regla derivada de modus tollens (MT)
2.1.5. Regla de introduccin del condicional .
2.1.6. Reglas de la disyuncin . . . . . . . . .
2.1.7. Regla de copia . . . . . . . . . . . . . . .
2.1.8. Reglas de la negacin . . . . . . . . . .
3

.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

5
5
5
6
6
6
7
8
8
9
9
9
10
11
12
14
14
15
15
17

.
.
.
.
.
.
.
.
.

19
19
19
19
20
20
21
22
23
23

ndice general

2.1.9. Reglas del bicondicional . . . . . . . . . .


2.2. Reglas derivadas . . . . . . . . . . . . . . . . . .
2.2.1. Regla del modus tollens . . . . . . . . . .
2.2.2. Regla de introduccin de doble negacin
2.2.3. Regla de reduccin al absurdo . . . . . .
2.2.4. Ley del tercio excluido . . . . . . . . . . .
2.3. Resumen de reglas de deduccin natural . . . .

.
.
.
.
.
.
.

.
.
.
.
.
.
.

.
.
.
.
.
.
.

.
.
.
.
.
.
.

.
.
.
.
.
.
.

.
.
.
.
.
.
.

.
.
.
.
.
.
.

.
.
.
.
.
.
.

.
.
.
.
.
.
.

.
.
.
.
.
.
.

.
.
.
.
.
.
.

.
.
.
.
.
.
.

.
.
.
.
.
.
.

.
.
.
.
.
.
.

.
.
.
.
.
.
.

25
25
25
26
26
26
28

.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.

31
31
33
34
35
36
36
36
37

4. Formas normales
4.1. Forma normal conjuntiva . . . . . . . . . . . . . . . . . . .
4.1.1. Definicin de forma normal conjuntiva . . . . . . .
4.1.2. Algoritmo de clculo de forma normal conjuntiva .
4.1.3. Decisin de validez mediante FNC . . . . . . . . . .
4.2. Forma normal disyuntiva . . . . . . . . . . . . . . . . . . .
4.2.1. Definicin de forma normal disyuntiva . . . . . . .
4.2.2. Algoritmo de clculo de forma normal disyuntiva .
4.2.3. Decisin de satisfacibilidad mediante FND . . . . .
4.3. Clculo de formas normales mediante tableros semnticos
4.3.1. Forma normal disyuntiva por tableros . . . . . . . .
4.3.2. Forma normal conjuntiva por tableros . . . . . . . .

.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.

39
39
39
39
41
42
42
42
43
44
44
44

.
.
.
.
.
.
.
.
.

47
47
47
47
48
49
49
50
50
50

3. Tableros semnticos
3.1. Bsqueda de modelos . . . . . . . . . . . .
3.2. Notacin uniforme . . . . . . . . . . . . . .
3.3. Procedimiento de completacin de tableros
3.4. Modelos por tableros semnticos . . . . . .
3.5. Consistencia mediante tableros . . . . . . .
3.6. Teorema por tableros . . . . . . . . . . . . .
3.7. Deduccin por tableros . . . . . . . . . . . .
3.8. Tableros en notacin reducida . . . . . . . .

.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.

5. Resolucin proposicional
5.1. Lgica de clusulas . . . . . . . . . . . . . . . . . . . . . . . . . .
5.1.1. Sintaxis de la lgica clausal . . . . . . . . . . . . . . . . .
5.1.2. Semntica de la lgica clausal . . . . . . . . . . . . . . . .
5.1.3. Equivalencias entre clusulas y frmulas . . . . . . . . .
5.1.4. Modelos, consistencia y consecuencia entre clusulas . .
5.1.5. Reduccin de consecuencia a inconsistencia de clusulas
5.2. Demostraciones por resolucin . . . . . . . . . . . . . . . . . . .
5.2.1. Regla de resolucin proposicional . . . . . . . . . . . . .
5.2.2. Demostraciones por resolucin . . . . . . . . . . . . . . .

.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.

ndice general

5.3. Algoritmos de resolucin . . . . . . . . . . . . . . . . .


5.3.1. Algoritmo de resolucin por saturacin . . . . .
5.3.2. Algoritmo de saturacin con simplificacin . . .
5.4. Refinamientos de resolucin . . . . . . . . . . . . . . . .
5.4.1. Resolucin positiva . . . . . . . . . . . . . . . . .
5.4.2. Resolucin negativa . . . . . . . . . . . . . . . .
5.4.3. Resolucin unitaria . . . . . . . . . . . . . . . . .
5.4.4. Resolucin por entradas . . . . . . . . . . . . . .
5.4.5. Resolucin lineal . . . . . . . . . . . . . . . . . .
5.5. Argumentacin por resolucin . . . . . . . . . . . . . .
5.5.1. Formalizacin de argumentacin por resolucin
5.5.2. Decisin de argumentacin por resolucin . . .

.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.

53
53
54
55
55
56
57
57
58
58
58
59

6. Sintaxis y semntica de la lgica de primer orden


6.1. Representacin del conocimiento en lgica de primer orden
6.1.1. Representacin de conocimiento geogrfico . . . . . .
6.1.2. Representacin del mundo de los bloques . . . . . . .
6.1.3. Representacin de conocimiento astronmico . . . .
6.2. Sintaxis de la lgica de primer orden . . . . . . . . . . . . . .
6.2.1. Lenguaje de primer orden . . . . . . . . . . . . . . . .
6.2.2. Trminos y frmulas de primer orden . . . . . . . . .
6.2.3. Subfrmulas . . . . . . . . . . . . . . . . . . . . . . . .
6.2.4. Variables libres y ligadas . . . . . . . . . . . . . . . . .
6.3. Semntica de la lgica de primer orden . . . . . . . . . . . .
6.3.1. Estructuras, asignaciones e interpretaciones . . . . .
6.3.2. Evaluacin de trminos y frmulas . . . . . . . . . . .
6.3.3. Modelo, satisfacibilidad y validez de frmulas . . . .
6.3.4. Modelo y consistencia de conjuntos de frmulas . . .
6.3.5. Consecuencia lgica . . . . . . . . . . . . . . . . . . .
6.3.6. Equivalencia lgica . . . . . . . . . . . . . . . . . . . .

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

61
61
61
62
63
64
64
66
67
69
70
70
72
75
77
78
79

.
.
.
.
.
.
.
.
.

81
81
81
81
82
83
83
83
84
85

7. Deduccin natural en lgica de primer orden


7.1. Sustituciones . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
7.1.1. Definicin de sustitucin . . . . . . . . . . . . . . . . .
7.1.2. Aplicacin de sustituciones a trminos . . . . . . . . .
7.1.3. Aplicacin de sustituciones a frmulas . . . . . . . . .
7.1.4. Sustituciones libres . . . . . . . . . . . . . . . . . . . . .
7.2. Reglas de deduccin natural de cuantificadores . . . . . . . . .
7.2.1. Reglas del cuantificador universal . . . . . . . . . . . .
7.2.2. Reglas del cuantificador existencial . . . . . . . . . . .
7.2.3. Demostracin de equivalencias por deduccin natural

.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.

ndice general

7.3. Reglas de la igualdad . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 90


7.3.1. Regla de eliminacin de la igualdad . . . . . . . . . . . . . . . . . . 90
7.3.2. Regla de introduccin de la igualdad . . . . . . . . . . . . . . . . . 90
8. Tableros semnticos
93
8.1. Frmulas gamma y delta . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 93
8.2. Consecuencia mediante tableros semnticos . . . . . . . . . . . . . . . . . . 93
9. Formas normales de Skolem y clusulas
9.1. Formas normales . . . . . . . . . . . . . . . . . . . . . . . . . . .
9.1.1. Forma rectificada . . . . . . . . . . . . . . . . . . . . . . .
9.1.2. Forma normal prenexa . . . . . . . . . . . . . . . . . . . .
9.1.3. Forma normal prenexa conjuntiva . . . . . . . . . . . . .
9.1.4. Forma de Skolem . . . . . . . . . . . . . . . . . . . . . . .
9.2. Clusulas de primer orden . . . . . . . . . . . . . . . . . . . . . .
9.2.1. Sintaxis de la lgica clausal de primer orden . . . . . . .
9.2.2. Semntica de la lgica clausal de primer orden . . . . . .
9.2.3. Forma clausal de una frmula . . . . . . . . . . . . . . .
9.2.4. Forma clausal de un conjunto de frmulas . . . . . . . .
9.2.5. Reducin de consecuencia e inconsistencia de clusulas .

.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.

97
97
97
97
99
100
102
102
102
103
104
105

10. Modelos de Herbrand


10.1. Modelos de Herbrand . . . . . . . . . . . . . . . . . . . .
10.1.1. Reduccin de la LPO bsica a proposicional . . .
10.1.2. Universo de Herbrand . . . . . . . . . . . . . . . .
10.1.3. Base de Herbrand . . . . . . . . . . . . . . . . . . .
10.1.4. Interpretaciones de Herbrand . . . . . . . . . . . .
10.1.5. Modelos de Herbrand . . . . . . . . . . . . . . . .
10.2. Teorema de Herbrand y decisin de la consistencia . . . .
10.2.1. Interpretacin de Herbrand de una interpretacin
10.2.2. Consistencia mediante modelos de Herbrand . . .
10.2.3. Extensiones de Herbrand . . . . . . . . . . . . . .
10.2.4. Teorema de Herbrand . . . . . . . . . . . . . . . .
10.2.5. Semidecisin mediante el teorema de Herbrand .

.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.

107
107
107
108
110
110
110
111
111
112
113
114
114

11. Resolucin en lgica de primer orden


11.1. Introduccin . . . . . . . . . . . . . . . . . . . . . . . . .
11.1.1. Ejemplos de consecuencia mediante resolucin .
11.2. Unificacin . . . . . . . . . . . . . . . . . . . . . . . . . .
11.2.1. Unificadores . . . . . . . . . . . . . . . . . . . . .
11.2.2. Composicin de sustituciones . . . . . . . . . . .

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

117
117
117
118
118
118

.
.
.
.
.

ndice general

11.2.3. Comparacin de sustituciones . . . . . . . .


11.2.4. Unificador de mxima generalidad . . . . . .
11.2.5. Algoritmo de unificacin . . . . . . . . . . .
11.3. Resolucin de primer orden . . . . . . . . . . . . . .
11.3.1. Separacin de variables . . . . . . . . . . . .
11.3.2. Resolvente binaria . . . . . . . . . . . . . . .
11.3.3. Factorizacin . . . . . . . . . . . . . . . . . .
11.3.4. Demostraciones por resolucin . . . . . . . .
11.3.5. Adecuacin y completitud de la resolucin .
11.3.6. Decisin de noconsecuencia por resolucin
Bibliografa

.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.

119
119
120
122
122
123
123
124
126
127
128

ndice general

Tema 1
Sintaxis y semntica de la lgica
proposicional
Contenido
1.1. Introduccin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

1.1.1. Panorama de la lgica . . . . . . . . . . . . . . . . . . . . . . . . .

1.1.2. Ejemplos de argumentos y formalizaciones . . . . . . . . . . . . .

1.2. Sintaxis de la lgica proposicional . . . . . . . . . . . . . . . . . . . . . .

1.2.1. El lenguaje de la lgica proposicional . . . . . . . . . . . . . . . .

1.2.2. Recursin e induccin sobre frmulas . . . . . . . . . . . . . . . .

1.2.3. rboles de anlisis (o de formacin) . . . . . . . . . . . . . . . . .

1.2.4. Eliminacin de parntesis . . . . . . . . . . . . . . . . . . . . . . .

1.2.5. Subfrmulas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

1.3. Semntica proposicional . . . . . . . . . . . . . . . . . . . . . . . . . . .

1.3.1. Valores y funciones de verdad . . . . . . . . . . . . . . . . . . . .

1.3.2. Interpretaciones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
1.3.3. Modelos, satisfacibilidad y validez . . . . . . . . . . . . . . . . . . 11
1.3.4. Algoritmos para satisfacibilidad y validez . . . . . . . . . . . . . 12
1.3.5. Seleccin de tautologas . . . . . . . . . . . . . . . . . . . . . . . . 14
1.3.6. Equivalencia lgica . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
1.3.7. Modelos de conjuntos de frmulas . . . . . . . . . . . . . . . . . . 15
1.3.8. Consistencia y consecuencia lgica . . . . . . . . . . . . . . . . . . 15
1.3.9. Argumentaciones y problemas lgicos . . . . . . . . . . . . . . . . 17

10

Tema 1. Sintaxis y semntica de la lgica proposicional

1.1.

Introduccin

1.1.1.

Panorama de la lgica

Objetivos de la lgica:
La formalizacin del lenguaje natural.
Los mtodos de razonamiento.
Sistemas lgicos:
Lgica proposicional.
Lgica de primer orden.
Lgicas de orden superior.
Lgicas modales.
Lgicas descriptivas.
Aplicaciones de la lgica en computacin:
Programacin lgica.
Verificacin y sntesis automtica de programas.
Representacin del conocimiento y razonamiento.
Modelizacin y razonamiento sobre sistemas.
Lgica informtica = Representacin del conocimiento +
Razonamiento

1.1.2.

Ejemplos de argumentos y formalizaciones

Ejemplos de argumentos:
Ejemplo 1: Si el tren llega a las 7 y no hay taxis en la estacin, entonces Juan
llegar tarde a la reunin. Juan no ha llegado tarde a la reunin. El tren lleg
a las 7. Por tanto, haban taxis en la estacin.
Ejemplo 2: Si hay corriente y la lmpara no est fundida, entonces est encendida. La lmpara no est encendida. Hay corriente. Por tanto, la lmpara est
fundida.
Formalizacin:

1.2. Sintaxis de la lgica proposicional

Simbolizacin:
Simb. Ejemplo 1
p
el tren llega a las 7
q
hay taxis en la estacin
r
Juan llega tarde a la reunin

11

Ejemplo 2
hay corriente
.
la lmpara est fundida
la lmpara est encendida

Si p y no q, entonces r. No r. p. Por tanto, q.


p q r, r, p |= q.

1.2.

Sintaxis de la lgica proposicional

1.2.1.

El lenguaje de la lgica proposicional

El lenguaje de la lgica proposicional


Alfabeto proposicional:
variables proposicionales: p0 , p1 , . . . ; p, q, r.
conectivas lgicas:

monaria: (negacin),
binarias: (conjuncin),
(disyuncin),
(condicional), (bicondicional).
smbolos auxiliares: ( y ).
Frmulas proposicionales:
Definicin:

Las variables proposicionales son frmulas (frmulas atmicas).


Si F y G son frmulas, entonces tambin lo son
F, ( F G ), ( F G ), ( F G ) y ( F G )
Ejemplos:

Frmulas: p, ( p q), ( p p), (( p q) (q p))


No frmulas: ( p), p q, ( p q)
Frmulas proposicionales (BNF)
Notaciones:
p, q, r, . . . representarn variables proposicionales.
F, G, H, . . . representarn frmulas.

12

Tema 1. Sintaxis y semntica de la lgica proposicional

VP representa el conjunto de los variables proposicionales.


Prop representa el conjunto de las frmulas.
representa una conectiva binaria.
Forma de Backus Naur (BNF) de las frmula proposicionales:
F ::= p | G | ( F G ) | ( F G ) | ( F G ) | ( F G ).

1.2.2.

Recursin e induccin sobre frmulas

Definiciones por recursin sobre frmulas


Nmero de parntesis de una frmula:
Def: El nmero de parntesis de una frmula F se define recursivamente por:

si F es atmica;

0,
np( F ) = np( G ),
si F es G;

2 + np( G ) + np( H ), si F es ( G H )
Ejemplos:

np( p) = 0
np(q) = 0
np(q) = 0
np((q p)) = 2
np(( p (q p))) = 4

Demostracin por induccin sobre frmulas


Principio de induccin sobre frmulas: Sea P una propiedad sobre las frmulas
que verifica las siguientes condiciones:
Todas las frmulas atmicas tienen la propiedad P .
Si F y G tienen la propiedad P , entonces F, ( F G ), ( F G ), ( F G ) y
( F G ), tienen la propiedad P .
Entonces todas las frmulas proposicionales tienen la propiedad P .
Propiedad: Todas las frmulas proposicionales tienen un nmero par de parntesis.
Demostracin por induccin sobre las frmulas.

1.2. Sintaxis de la lgica proposicional

13

Base: F atmica = np( F ) = 0 es par.


Paso: Supongamos que np( F ) y np( G ) es par (hiptesis de induccin).
Entonces,
np( F ) = np( F ) es par y
np(( F G )) = 2 + np( F ) + np( G ) es par,
para cualquier conectiva binaria ?.

1.2.3.

rboles de anlisis (o de formacin)

( p (q p))
p

(q p)
q

1.2.4.

Eliminacin de parntesis

Criterios de reduccin de parntesis


Pueden eliminarse los parntesis externos.
F G es una abreviatura de ( F G ).
Precedencia de asociacin de conectivas: , , , , .
F G F G es una abreviatura de (( F G ) ( F G )).
Cuando una conectiva se usa repetidamente, se asocia por la derecha.
FGH
abrevia ( F ( G H ))
F G H F G abrevia (( F ( G H )) ( F G ))

1.2.5.

Subfrmulas

Subfrmulas
Def: El conjunto Subf( F ) de las subfrmulas de una frmula F se define recursivamente por:

14

Tema 1. Sintaxis y semntica de la lgica proposicional

{ F },
Subf( F ) = { F } Subf( G ),

{ F } Subf( G ) Subf( H ),

si F es atmica;
si F es G;
si F es G H

Ejemplos:
Subf( p) = { p}
Subf(q) = {q}
Subf(q) = {q, q}
Subf(q p) = {q p, q, q, p}
Subf( p q p) = { p q p, p, q p, q, q}

1.3.

Semntica proposicional

1.3.1.

Valores y funciones de verdad

Valores de verdad (B): 1: verdadero y 0: falso.


Funciones de verdad:
(
H : {0, 1} {0, 1} t.q. H (i ) =

1,

si i = 0;

0, si i = 1.
(
1, si i = j = 1;
H : {0, 1}2 {0, 1} t.q. H (i, j) =
0, en otro caso.
(
0, si i = j = 0;
H : {0, 1}2 {0, 1} t.q. H (i, j) =
1, en otro caso.
(
0, si i = 1, j = 0;
H : {0, 1}2 {0, 1} t.q. H (i, j) =
1, en otro caso.
(
1, si i = j;
H : {0, 1}2 {0, 1} t.q. H (i, j) =
0, en otro caso.

1.3. Semntica proposicional

1.3.2.

15

Interpretaciones

Funciones de verdad mediante tablas de verdad:


i i
i j ij ij i j i j
1 0
1 1
1
1
1
1
0 1
0
1
0
0
1 0
0 1
0
1
1
0
0 0
0
0
1
1
Interpretacin:
Def.: Una interpretacin es una aplicacin I : VP B.
Prop: Para cada interpretacin I existe una nica aplicacin I 0 : Prop B tal
que:

si F es atmica;

I ( F ),
0
0
I ( F ) = H ( I ( G )),
si F = G;

H ( I 0 ( G ), I 0 ( H )), si F = G H
Se dice que I 0 ( F ) es el valor de verdad de F respecto de I.
Ejemplo: Sea F = ( p q) (q r )
valor de F en una interpretacin I1 tal que I1 ( p) = I1 (r ) = 1, I1 (q) = 0
( p q) (q r )
(1 0) (0 1)
1
(1
1)
1

1
1
valor de F en una interpretacin I2 tal que I2 (r ) = 1, I2 ( p) = I2 (q) = 0
( p q) (q r )
0 0 0 0
10 1 1
Prop.: Sea F una frmula y I1 , I2 dos interpretaciones. Si I1 ( p) = I2 ( p) para todos
las variables proposicionales de F, entonces I10 ( F ) = I20 ( F ).
Notacin: Se escribe I ( F ) en lugar de I 0 ( F ).

1.3.3.

Modelos, satisfacibilidad y validez

Modelos y satisfacibilidad
Modelo de una frmula
Def.: I es modelo de F si I ( F ) = 1.

16

Tema 1. Sintaxis y semntica de la lgica proposicional

Notacin: I |= F.
Ejemplo (continuacin del anterior):
si I1 ( p) = I1 (r ) = 1, I1 (q) = 0, entonces I1 |= ( p q) (q r )
si I2 (r ) = 1, I2 ( p) = I2 (q) = 0, entonces I2 6|= ( p q) (q r ).
Frmulas satisfacibles e insatisfacibles
Def.: F es satisfacible si F tiene algn modelo.
Ejemplo: ( p q) (q r ) es satisfacible
I ( p) = I (q) = I (r ) = 0.
Def.: F es insatisfacible si F no tiene ningn modelo.
Ejemplo: p p es insatisfacible
p p p p
1 0
0
0
0 1
Tautologas y contradicciones
Def.: F es una tautologa (o vlida) si toda interpretacin es modelo de F. Se representa por |= F.
Def.: F es una contradiccin si ninguna interpretacin es modelo de F.
Def.: F es contingente si no es tautologa ni contradiccin.
Ejemplos:
1. ( p q) (q p) es una tautologa.
2. ( p q) ( p q) es una contradiccin.
3. p q es contingente.
p
1
1
0
0

q p q q p ( p q) (q p) ( p q) ( p q) ( p q)
1
1
1
1
0
0
0
0
1
1
1
0
1
1
0
1
0
0
0
1
1
1
0
0

1.3. Semntica proposicional

17

Clasificaciones de frmulas
Todas las frmulas
Tautologas

Contigentes

Contradicciones

Verdadera en todas
las interpretaciones

Verdadera en
algunas
interpretaciones y
falsa en otras

Falsa en todas las


interpretaciones

(ej. p p)

(ej. p q)

(ej. p p)

Safisfacibles

Insatisfacibles

Todas las frmulas


Satisfacibilidad y validez
Los problemas SAT y TAUT:
Problema SAT: Dada F determinar si es satisfacible.
Problema TAUT: Dada F determinar si es una tautologa.
Relaciones entre satisfacibilidad y tautologicidad:
F es tautologa

F es insatisfacible.

F es tautologa

F es satisfacible.

F es satisfacible =
/ F es insatisfacible.
p q es satisfacible.
I ( p) = I (q) = 1
( p q) es satisfacible.
I ( p) = 1, I (q) = 0.

1.3.4.

Algoritmos para satisfacibilidad y validez

Tabla de verdad para |= ( p q) (q p):


p
1
1
0
0

q (p
1
0
1
0

q) (q p) ( p q) (q p)
1
1
1
0
1
1
1
0
1
1
1
1

18

Tema 1. Sintaxis y semntica de la lgica proposicional

Tabla de verdad simplificada para |= ( p q) (q p):


p
1
1
0
0

q ( p q)
1 1 1 1
0 1 0 0
1 0 1 1
0 0 1 0

(q
1 1
1 0
1 1
1 0

p)
1 1
1 1
0 0
1 0

Mtodo de Quine para |= ( p q) (q p)


( p q) (q p)
0
0
0
1
0
0
1
1
Mtodo de Quine para |= ( p q) (q p)
( p q) (q p)
0 0 1 0 1 0 0
1
Tablas de verdad para 6|= ( p q) (q p)
p
1
1
0
0

q (p
1
0
1
0

q) (q p) ( p q) (q p)
1
1
1
0
0
0
0
0
0
1
1
1

Mtodo de Quine para 6|= ( p q) (q p)

( p q) (q p)
0 0 1 0 1 0 0
1

1.3. Semntica proposicional

1.3.5.
1.
2.
3.
4.
5.
6.
7.
8.

1.3.6.

19

Seleccin de tautologas
FF
F F
( F F )
( F F ) F
F ( F G)
(( F G ) F ) F
( F G) F G
( F G) G F

(ley de identidad).
(ley del tercio excluido).
(principio de no contradiccin).
(ley de Clavius).
(ley de Duns Scoto).
(ley de Peirce).
(modus ponens).
(modus tollens).

Equivalencia lgica

Frmulas equivalentes
Def.: F y G son equivalentes si I ( F ) = I ( G ) para toda interpretacin I. Representacin: F G.
Ejemplos de equivalencias notables:
1. Idempotencia: F F F ; F F F.
2. Conmutatividad: F G G F ; F G G F.
3. Asociatividad: F ( G H ) ( F G ) H ;
F (G H ) ( F G) H
4. Absorcin: F ( F G ) F ; F ( F G ) F.
5. Distributividad: F ( G H ) ( F G ) ( F H ) ;
F ( G H ) ( F G ) ( F H ).
6. Doble negacin: F F.
7. Leyes de De Morgan: ( F G ) F G ;
( F G ) F G
8. Leyes de tautologas: Si F es una tautologa, F G G ; F G F.
9. Leyes de contradicciones: Si F es una contradiccin F G F ; F G G.
Propiedades de la equivalencia lgica
Relacin entre equivalencia y bicondicional:
F G syss |= F G.
Propiedades bsicas de la equivalencia lgica:

20

Tema 1. Sintaxis y semntica de la lgica proposicional

Reflexiva: F F.
Simtrica: Si F G, entonces G F.
Transitiva: Si F G y G H, entonces F H.
Principio de sustitucin de frmulas equivalentes:
Prop.: Si en la frmula F se sustituye una de sus subfrmulas G por una frmula G 0 lgicamente equivalente a G, entonces la frmula obtenida, F 0 , es
lgicamente equivalente a F.
Ejemplo: F
G
G0
F0

1.3.7.

= ( p q) ( p r )
= ( p q)
= p q
= ( p q) ( p r )

Modelos de conjuntos de frmulas

Notacin:
S, S1 , S2 , . . . representarn conjuntos de frmulas.
Modelo de un conjunto de frmulas:
Def.: I es modelo de S si para toda F S se tiene que I |= F.
Representacin: I |= S.
Ejemplo: Sea S = {( p q) (q r ), q r }
La interpretacin I1 tal que I1 ( p) = 1, I1 (q) = 0, I1 (r ) = 1 es modelo de S
(I1 |= S).
{( p q) ( q r ),
q r}
1 1 0 1 1 0 1 1
0 1 1
La interpretacin I2 tal que I2 ( p) = 0, I2 (q) = 1, I2 (r ) = 0 no es modelo de S
(I2 6|= S).
{( p q) ( q r ),
q r}
0 1 0 0 0 1 0 0
1 0 0

1.3.8.

Consistencia y consecuencia lgica

Conjunto consistente de frmulas


Def.: S es consistente si S tiene algn modelo.
Def.: S es inconsistente si S no tiene ningn modelo.

1.3. Semntica proposicional

21

Ejemplos:
{( p q) (q r ), p r } es consistente (con modelos I4 , I6 , I8 )
{( p q) (q r ), p r, r } es inconsistente
I1
I2
I3
I4
I5
I6
I7
I8

p
0
0
0
0
1
1
1
1

q
0
0
1
1
0
0
1
1

r ( p q) (q r ) ( p q) (q r ) p r r
0
0
1
0
1
1
1
0
1
0
1
0
0
1
0
0
1
1
1
1
1
1
1
0
0
1
1
1
0
1
1
1
1
1
1
0
0
1
0
0
0
1
1
1
1
1
1
0

Consecuencia lgica
Def.: F es consecuencia de S si todos los modelos de S son modelos de F.
Representacin: S |= F.
Ejemplos: { p q, q r } |= p r y { p} 6|= p q
I1
I2
I3
I4
I5
I6
I7
I8

p
0
0
0
0
1
1
1
1

q
0
0
1
1
0
0
1
1

r pq qr pr
0
1
1
1
1
1
1
1
0
1
0
1
1
1
1
1
0
0
1
0
1
0
1
1
0
1
0
0
1
1
1
1

p
1
1
0
0

q pq
1
1
0
0
1
0
0
0

Propiedades de la consecuencia
Propiedades bsicas de la relacin de consecuencia:
Reflexividad: S |= S.
Monotona: Si S1 |= F y S1 S2 , entonces S2 |= F.
Transitividad: Si S |= F y { F } |= G, entonces S |= G.
Relacin entre consecuencia, validez, satisfacibilidad y consistencia:

22

Tema 1. Sintaxis y semntica de la lgica proposicional

Las siguientes condiciones son equivalentes:


1.
2.
3.
4.

1.3.9.

{ F1 , . . . , Fn } |= G
|= F1 Fn G
( F1 Fn G ) es insatisfacible
{ F1 , . . . , Fn , G } es inconsistente

Argumentaciones y problemas lgicos

Ejemplo de argumentacin
Problema de los animales: Se sabe que
1. Los animales con pelo o que dan leche son mamferos.
2. Los mamferos que tienen pezuas o que rumian son ungulados.
3. Los ungulados de cuello largo son jirafas.
4. Los ungulados con rayas negras son cebras.
Se observa un animal que tiene pelos, pezuas y rayas negras. Por consiguiente,
se concluye que el animal es una cebra.
Formalizacin:
{ tiene_pelos da_leche es_mamfero,
es_mamfero (tiene_pezuas rumia) es_ungulado,
es_ungulado tiene_cuello_largo es_jirafa,
es_ungulado tiene_rayas_negras es_cebra,
tiene_pelos tiene_pezuas tiene_rayas_negras}
|= es_cebra
Problemas lgicos: veraces y mentirosos
Enunciado: En una isla hay dos tribus, la de los veraces (que siempre dicen la
verdad) y la de los mentirosos (que siempre mienten). Un viajero se encuentra con
tres isleos A, B y C y cada uno le dice una frase
1. A dice B y C son veraces syss C es veraz
2. B dice Si A y C son veraces, entonces B y C son veraces y A es mentiroso
3. C dice B es mentiroso syss A o B es veraz
Determinar a qu tribu pertenecen A, B y C.
Simbolizacin: a: A es veraz, b: B es veraz, c: C es veraz.

1.3. Semntica proposicional

23

Formalizacin:
F1 = a (b c c), F2 = b ( a c b c a) y F3 = c (b a b).
Modelos de { F1 , F2 , F3 }:
Si I es modelo de { F1 , F2 , F3 }, entonces I ( a) = 1, I (b) = 1, I (c) = 0.
Conclusin: A y B son veraces y C es mentiroso.

Bibliografa
1. C. Badesa, I. Jan y R. Jansana Elementos de lgica formal. (Ariel, 2000)
Cap. 0 (Introduccin), 6 (Sintaxis de la lgica proposicional), 7 (Semntica de
la lgica proposicional), 9 (Consecuencia lgica) y 11 (Lgica proposicional y
lenguaje natural).
2. M. BenAri, Mathematical logic for computer science (2nd ed.). (Springer, 2001)
Cap. 1 (Introduction) y 2 (Propositional calculus: formulas, models, tableaux).
3. J.A. Dez Iniciacin a la Lgica, (Ariel, 2002)
Cap. 2 (El lenguaje de la lgica proposicional) y 3 (Semntica formal. Consecuencia lgica).
4. M. Huth y M. Ryan Logic in computer science: modelling and reasoning about systems.
(Cambridge University Press, 2000)
Cap. 1 (Propositional logic).

24

Tema 1. Sintaxis y semntica de la lgica proposicional

Tema 2
Deduccin natural proposicional
Contenido
2.1. Reglas de deduccin natural . . . . . . . . . . . . . . . . . . . . . . . . . 19
2.1.1. Reglas de la conjuncin . . . . . . . . . . . . . . . . . . . . . . . . 19
2.1.2. Reglas de la doble negacin . . . . . . . . . . . . . . . . . . . . . . 19
2.1.3. Regla de eliminacin del condicional . . . . . . . . . . . . . . . . 20
2.1.4. Regla derivada de modus tollens (MT) . . . . . . . . . . . . . . . 20
2.1.5. Regla de introduccin del condicional . . . . . . . . . . . . . . . . 21
2.1.6. Reglas de la disyuncin . . . . . . . . . . . . . . . . . . . . . . . . 22
2.1.7. Regla de copia . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
2.1.8. Reglas de la negacin . . . . . . . . . . . . . . . . . . . . . . . . . 23
2.1.9. Reglas del bicondicional . . . . . . . . . . . . . . . . . . . . . . . . 25
2.2. Reglas derivadas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
2.2.1. Regla del modus tollens . . . . . . . . . . . . . . . . . . . . . . . . 25
2.2.2. Regla de introduccin de doble negacin . . . . . . . . . . . . . . 26
2.2.3. Regla de reduccin al absurdo . . . . . . . . . . . . . . . . . . . . 26
2.2.4. Ley del tercio excluido . . . . . . . . . . . . . . . . . . . . . . . . . 26
2.3. Resumen de reglas de deduccin natural . . . . . . . . . . . . . . . . . . 28

2.1.

Reglas de deduccin natural

2.1.1.

Reglas de la conjuncin

Regla de introduccin de la conjuncin:


25

FG

26

Tema 2. Deduccin natural proposicional

Reglas de eliminacin de la conjuncin:

FG
F

FG

e1

Ejemplo: p q, r ` q r:
1
p q premisa
2

premisa

e2 1

qr

i 2, 3

Adecuacin de las reglas de la conjuncin:


i : { F, G } |= F G
e1 : F G |= F
e2 : F G |= G

2.1.2.

Reglas de la doble negacin

Regla de eliminacin de la doble negacin:

Regla de introduccin de la doble negacin:

Ejemplo: p, (q r ) ` p r:
1
p
premisa
2

(q r ) premisa

i 1

qr

e 2

e2 4

p r

i 3, 5

Adecuacin de las reglas de la doble negacin:


e : { F } |= F
i : { F } |= F

2.1.3.

Regla de eliminacin del condicional

Regla de eliminacin del condicional:

FG
G

e2

2.1. Reglas de deduccin natural

27

Ejemplo: p q, p q r p ` r p:
1
p q
premisa
2

p q r p premisa

r p

e 1, 2

Ejemplo: p, p q, p (q r ) ` r:
1

premisa

pq

premisa

p (q r )

premisa

e 1, 2

qr

e 1, 3

e 4, 5

Adecuacin de la eliminacin del condicional: { F, F G } |= G

2.1.4.

Regla derivada de modus tollens (MT)

Regla derivada de modus tollens:


Ejemplo: p (q r ), p, r ` q:
1

p (q r )

premisa

premisa

premisa

qr

e 1, 2

MT 3, 4

Ejemplo: p q, q ` p:
1

p q premisa

premisa

MT 1, 2

e 3

FG

MT

28

Tema 2. Deduccin natural proposicional

2.1.5.

Regla de introduccin del condicional

Regla de introduccin del condicional:

F
..
.
G
FG

Ejemplo: p q ` q p:
1

pq

premisa

supuesto

MT 1, 2

q p i 2 3

Adecuacin de la regla de introduccin del condicional: Si F |= G, entonces |=


F G.
Ejemplo: q p ` p q:
1

q p premisa

supuesto

i 2

MT 1, 3

p q

i 2 4

Ejemplo (de teorema): ` p p:


1

supuesto

pp

i 1 1

Ejemplo: ` (q r ) ((q p) ( p r )):

2.1. Reglas de deduccin natural

2.1.6.

29

qr

supuesto

q p

supuesto

supuesto

i 3

MT 2, 4

e 5

e 1, 6

pr

i 3 7

(q p) ( p r )

i 2 8

10

(q r ) ((q p) ( p r )) i 1 9

Reglas de la disyuncin

Reglas de introduccin de la disyuncin:

Regla de eliminacin de la disyuncin:


Ejemplo: p q ` q p:
1

pq

premisa

supuesto

qp

i2 2

supuesto

qp

i1 4

qp

e 1, 2 3, 4 5

Ejemplo: q r ` p q p r:

F
FG

FG

i1

G
FG

F
..
.

G
..
.

i2

30

Tema 2. Deduccin natural proposicional

2.1.7.

qr

premisa

pq

supuesto

supuesto

pr

i1 3

supuesto

e 1, 5

pr

i2 6

pr

e 2, 3 4, 5 7

pq pr

i 2 8

Regla de copia

Ejemplo (usando la regla hyp): ` p (q p):

2.1.8.

supuesto

supuesto

hyp 1

qp

i 2 3

p (q p)

i 1 4

Reglas de la negacin

Extensiones de la lgica para usar falso:


Extensin de la sintaxis: es una frmula proposicional.
Extensin de la semntica: I () = 0 en cualquier interpretacin I.
Reglas de la negacin:
Regla de eliminacin de lo falso:

Regla de eliminacin de la negacin:


Adecuacin de las reglas de la negacin:
|= F

e
F

2.1. Reglas de deduccin natural

31

{ F, F } |=
Ejemplo: p q ` p q:
1

p q premisa

supuesto

supuesto

e 2, 3

e 4

supuesto

e 1, 3 5, 6 6

pq

i 2 7

Regla de introduccin de la negacin:

F
..
.

Adecuacin: Si F |= , entonces |= F.
Ejemplo: p q, p q ` p:

2.1.9.

pq

premisa

p q

premisa

supuesto

e 1, 3

e 2, 3

e 4, 5

i 3 6

Reglas del bicondicional

Regla de introduccin del bicondicional:


Ejemplo: p q q p:

FG

GF

FG

32

Tema 2. Deduccin natural proposicional

pq

supuesto

e1 1

e2 1

qp

i 2, 3

pq qp

i 1 4

qp

supuesto

e2 6

e1 6

pq

i 7, 8

10

qp pq

i 6 9

11

pq qp

i 5, 10

Eliminacin del bicondicional:

FG
FG

e1

FG
GF

e2

Ejemplo: p q, p q ` p q:
1

pq

premisa

pq

premisa

supuesto q

supuesto

pq

e1 1

qp

e2 1

e 4, 3

e 40 , 30

pq

i 3, 5

pq

i 30 , 50

pq

2.2.

Reglas derivadas

2.2.1.

Regla del modus tollens

e 2, 3 6, 30 60

Regla derivada de modus tollens (MT):


Derivacin:

FG

MT

2.2. Reglas derivadas

2.2.2.

33

FG

premisa

premisa

supuesto

e 1, 3

e 2, 4

i 2 4

Regla de introduccin de doble negacin


F

Regla de introduccin de la doble negacin:


Derivacin:
1
F

2.2.3.

premisa

supuesto

e 1, 2

F i 2 3

Regla de reduccin al absurdo

Regla de reduccin al absurdo:

F
..
.

Derivacin:
1
F

2.2.4.

RAA

premisa

supuesto

e 1, 2

i 2 3

e 4

Ley del tercio excluido

Ley del tercio excluido (LEM):

F F

LEM

34

Tema 2. Deduccin natural proposicional

Derivacin:
1
( F F )

supuesto

supuesto

F F

i1 2

e 1, 3

i 2 4

F F

i2 5

e 1, 6

F F

RAA 1 7

Ejemplo: p q ` p q:
1

pq

premisa

p p

LEM

supuesto

e 1, 3

p q

i2 4

supuesto

p q

i1 6

p q

e 2, 3 5, 6 7

2.3. Resumen de reglas de deduccin natural

2.3.

35

Resumen de reglas de deduccin natural


Introduccin
F

FG
F
FG

FG

i1

Eliminacin

FG

i2

FG

G
FG

F
..
.

G
..
.

F
F

FG

GF

FG

FG
FG

e2

FG

F
..
.

F
..
.

FG

e1

e1

e
FG
GF

e2

Adecuacin y completitud del clculo de deduccin natural.

Bibliografa
1. C. Badesa, I. Jan y R. Jansana Elementos de lgica formal. (Ariel, 2000).
Cap. 16: Clculo deductivo.
2. R. Bornat Using ItL Jape with X (Department of Computer Science, QMW, 1998).
3. J.A. Dez Iniciacin a la Lgica, (Ariel, 2002).

36

Tema 2. Deduccin natural proposicional

Cap. 4: Clculo deductivo. Deducibilidad.


4. M. Huth y M. Ryan Logic in computer science: modelling and reasoning about systems.
(Cambridge University Press, 2000)
Cap. 1: Propositional logic.
5. E. Paniagua, J.L. Snchez y F. Martn Lgica computacional (Thomson, 2003)
Cap. 3.6: El mtodo de la deduccin natural.

Tema 3
Tableros semnticos
Contenido
3.1. Bsqueda de modelos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
3.2. Notacin uniforme . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33
3.3. Procedimiento de completacin de tableros . . . . . . . . . . . . . . . . 34
3.4. Modelos por tableros semnticos . . . . . . . . . . . . . . . . . . . . . . 35
3.5. Consistencia mediante tableros . . . . . . . . . . . . . . . . . . . . . . . 36
3.6. Teorema por tableros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36
3.7. Deduccin por tableros . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36
3.8. Tableros en notacin reducida . . . . . . . . . . . . . . . . . . . . . . . . 37

3.1.

Bsqueda de modelos

Bsqueda exitosa de modelos


Bsqueda de modelos de ( p q ( p r ))
I |= ( p q ( p r ))
syss I |= {( p q ( p r ))}
syss I |= { p q, ( p r )}
syss I |= { p q, p r }
syss I |= { p, r, p q}
syss I |= { p, r, p} I |= { p, r, q}
syss I |= {} I |= { p, r, q}
Modelos de ( p q ( p r )):
Las interpretaciones I tales que I ( p) = 1, I (q) = 0 e I (r ) = 1.
37

38

Tema 3. Tableros semnticos

Bsqueda exitosa de modelos por tableros semnticos

(( p q) ( p r ))
p q, ( p r )
p q, p r
p q, p, r
p, p, r

q, p, r

Bsqueda fallida de modelos


Bsqueda de modelos de ( p q ( p q)).
I |= ( p q ( p q))
syss I |= {( p q ( p q))}
syss I |= { p q, ( p q)}
syss I |= { p q, p q}
syss I |= { p, q, p q}
syss I |= { p, q, p} I |= { p, q, q}
syss I |= {} I |= {}
La frmula ( p q ( p q)) no tiene modelos (es insatisfacible).
Bsqueda fallida de modelos por tableros semnticos

(( p q) ( p q))
p q, ( p q)
p q, p q
p q, p, q
p, p, q

q, p, q

3.2. Notacin uniforme

3.2.

39

Notacin uniforme

Literales y dobles negaciones


Literales
Un literal es un tomo o la negacin de un tomo (p.e. p, p, q, q, . . . ).
I |= p syss I ( p) = 1.
I |= p syss I ( p) = 0.
Dobles negaciones
F es una doble negacin si es de la forma G.
I |= G syss I |= G.
Reduccin de modelos:
I |= F G syss I |= F e I |= G.
I |= F G syss I |= F I |= G.
Frmulas alfa y beta
Las frmulas alfa, junto con sus componentes, son
F
F1
F2
A1 A2
( A1 A2 )
( A1 A2 )
A1 A2

A1
A1
A1
A1 A2

A2
A2
A2
A2 A1

Si F es alfa con componentes F1 y F2 , entonces F F1 F2 .


Las frmulas beta, junto con sus componentes, son
F
F1
F2
B1 B2
B1 B2
( B1 B2 )
( B1 B2 )

B1
B1
B1
( B1 B2 )

B2
B2
B2
( B2 B1 )

Si F es beta con componentes F1 y F2 , entonces F F1 F2 .

40

3.3.

Tema 3. Tableros semnticos

Procedimiento de completacin de tableros

Tablero del conjunto de frmulas S


Un tablero del conjunto de frmulas S es un rbol construido mediante las reglas:
El rbol cuyo nico nodo tiene como etiqueta S es un tablero de S.
Sea T un tablero de S y S1 la etiqueta de una hoja de T .
1. Si S1 contiene una frmula y su negacin, entonces el rbol obtenido aadiendo como hijo de S1 el nodo etiquetado con {} es un tablero de S.
2. Si S1 contiene una doble negacin F, entonces el rbol obtenido aadiendo
como hijo de S1 el nodo etiquetado con (S1 r { F }) { F } es un tablero de
S.
3. Si S1 contiene una frmula alfa F de componentes F1 y F2 , entonces el rbol
obtenido aadiendo como hijo de S1 el nodo etiquetado con (S1 r { F }) { F1 , F2 }
es un tablero de S.
4. Si S1 contiene una frmula beta F de componentes F1 y F2 , entonces el rbol
obtenido aadiendo como hijos de S1 los nodos etiquetados con (S1 r { F }) { F1 }
y (S1 r { F }) { F2 } es un tablero de S.
No unicidad del tablero de un conjunto de frmulas
Un tablero completo de ( p q) ( p q) es

( p q) ( p q)
p q, p q
p, p q

q, p q

p, p, q

q, p, q

Otro tablero completo de ( p q) ( p q) es

3.4. Modelos por tableros semnticos

41

( p q) ( p q)
p q, p q
p q, p, q

3.4.

p, p, q

q, p, q

Modelos por tableros semnticos


Def.: Sea S un conjunto de frmulas, T un tablero de S.
Una hoja de T es cerrada si contiene una frmula y su negacin o es de la
forma {}.
Una hoja de T es abierta si es un conjunto de literales y no contiene un literal
y su negacin.
Def.: Un tablero completo de S es un tablero de S tal que todas sus hojas son
abiertas o cerradas.
Def.: Un tablero es cerrado si todas sus hojas son cerradas.
Reduccin de modelos:
I |= F G syss I |= F e I |= G.
I |= F G syss I |= F I |= G.
Propiedades:
1. Si las hojas de un tablero del conjunto de frmulas { F1 , . . . , Fn } son
{ G1,1 , . . . , G1,n1 }, . . . , { Gm,1 , . . . , Gm,nm }, entonces
F1 Fn ( G1,1 G1,n1 ) ( Gm,1 Gm,nm ).
2. Prop.: Sea S un conjunto de frmulas, T un tablero de S e I una interpretacin. Entonces, I |= S syss existe una hoja S1 de T tal que I |= S1 .

42

3.5.

Tema 3. Tableros semnticos

Consistencia mediante tableros


Prop.: Si { p1 , . . . , pn , q1 , . . . , qm } es una hoja abierta de un tablero del conjunto de frmulas S, entonces la interpretacin I tal que I ( p1 ) = 1, . . . , I ( pn ) = 1,
I (q1 ) = 0, . . . , I (qm ) = 0 es un modelo de S.
Prop.: Un conjunto de frmulas S es consistente syss S tiene un tablero con alguna
hoja abierta.
Prop.: Un conjunto de frmulas S es inconsistente syss S tiene un tablero completo
cerrado.

3.6.

Teorema por tableros


Def.: Una frmula F es un teorema (mediante tableros semnticos) si tiene una
prueba mediante tableros; es decir, si { F } tiene un tablero completo cerrado.
Se representa por ` Tab F.
Ejemplos: ` Tab p q ( p q)
6` Tab p q ( p r )
Teor.: El clculo de tableros semnticos es adecuado y completo; es decir,
Adecuado: ` Tab F |= F
Completo: |= F
` Tab F

3.7.

Deduccin por tableros


Def.: La frmula F es deducible (mediante tableros semnticos) a partir del conjunto de frmulas S si existe un tablero completo cerrado de S { F }. Se representa
por S ` Tab F.
Ejemplo: { p q, q r } ` Tab p r
p q, q r, ( p r )
p q, q r, p, r
p q, q, p, r

p q, r, p, r

p, q, p, r

q, q, p, r

3.8. Tableros en notacin reducida

43

Ejemplo: { p q} 6` Tab p q
p q, ( p q)
p, ( p q)
p, p

q, ( p q)

p, q

q, p

q, q

Contramodelos de { p q} 6` Tab p q
las interpretaciones I1 tales que I1 ( p) = 1 e I1 (q) = 0
las interpretaciones I2 tales que I2 ( p) = 0 e I2 (q) = 1
Teor.: S ` Tab F syss S |= F.

3.8.

Tableros en notacin reducida


Ejemplo: { p q} 6` Tab p q
1. p q
2. ( p q)
3. p (1)

4. q (1)

5. p (2) 6. q (2) 7. p (2) 8. q (2)


Cerrada
(5,3)

Abierta
{ p, q}

Abierta
{ p, q}

Cerrada
(8,4)

Bibliografa
1. BenAri, M. Mathematical Logic for Computer Science (2nd ed.) (Springer, 2001)
Cap. 2: Propositional calculus: formulas, models, tableaux
2. Fitting, M. First-Order Logic and Automated Theorem Proving (2nd ed.) (Springer,
1995)
Cap. 3: Semantic tableaux and resolution

44

Tema 3. Tableros semnticos

3. Hortal, M.T.; Leach, J. y Rogrguez, M. Matemtica discreta y lgica matemtica (Ed.


Complutense, 1998)
Cap. 7.9: Tableaux semnticos para la lgica de proposiciones
4. Nerode, A. y Shore, R.A. Logic for Applications (Springer, 1997)
Cap. 1.4: Tableau proofs in propositional calculus
5. E. Paniagua, J.L. Snchez y F. Martn Lgica computacional (Thomson, 2003)
Cap. 4.3: Mtodos de las tablas semnticas
* Un ejemplo de no consecuencia con ms de un contramodelo.

Tema 4
Formas normales
Contenido
4.1. Forma normal conjuntiva . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
4.1.1. Definicin de forma normal conjuntiva . . . . . . . . . . . . . . . 39
4.1.2. Algoritmo de clculo de forma normal conjuntiva . . . . . . . . . 39
4.1.3. Decisin de validez mediante FNC . . . . . . . . . . . . . . . . . . 41
4.2. Forma normal disyuntiva . . . . . . . . . . . . . . . . . . . . . . . . . . . 42
4.2.1. Definicin de forma normal disyuntiva . . . . . . . . . . . . . . . 42
4.2.2. Algoritmo de clculo de forma normal disyuntiva . . . . . . . . . 42
4.2.3. Decisin de satisfacibilidad mediante FND . . . . . . . . . . . . . 43
4.3. Clculo de formas normales mediante tableros semnticos . . . . . . . 44
4.3.1. Forma normal disyuntiva por tableros . . . . . . . . . . . . . . . . 44
4.3.2. Forma normal conjuntiva por tableros . . . . . . . . . . . . . . . . 44

4.1.

Forma normal conjuntiva

4.1.1.

Definicin de forma normal conjuntiva

tomos y literales:
Def.: Un tomo es una variable proposicional (p.e. p, q, . . . ).
Def.: Un literal es un tomo o su negacin (p.e. p, p, q, q, . . . ).
Notacin: L, L1 , L2 , . . . representarn literales.
Forma normal conjuntiva:
45

46

Tema 4. Formas normales

Def.: Una frmula est en forma normal conjuntiva (FNC) si es una conjuncin de disyunciones de literales; es decir, es de la forma
( L1,1 L1,n1 ) ( Lm,1 Lm,nm ).
Ejemplos: ( p q) (q p) est en FNC.
( p q) (q p) no est en FNC.
Def.: Una frmula G es una forma normal conjuntiva (FNC) de la frmula F
si G est en forma normal conjuntiva y es equivalente a F.
Ejemplo: Una FNC de ( p (q r )) es ( p q) ( p r ).

4.1.2.

Algoritmo de clculo de forma normal conjuntiva

Algoritmo: Aplicando a una frmula F los siguientes pasos se obtiene una forma
normal conjuntiva de F, FNC( F ):
1. Eliminar los bicondicionales usando la equivalencia
A B ( A B) ( B A)

(1)

2. Eliminar los condicionales usando la equivalencia


A B A B

(2)

3. Interiorizar las negaciones usando las equivalencias


( A B) A B
( A B) A B
A A

(3)
(4)
(5)

4. Interiorizar las disyunciones usando las equivalencias


A ( B C ) ( A B) ( A C )
( A B) C ( A C ) ( B C )

(6)
(7)

Ejemplos de clculo de forma normal conjuntiva


Ejemplo de clculo de una FNC de ( p (q r )):
( p (q r ))
( p (q r ))
[por (2)]
p (q r )
[por (3)]
p (q r )
[por (4)]
p ( q r )
[por (5)]
( p q) ( p r ) [por (6)]
Ejemplo de clculo de una FNC de ( p q) (q p):
( p q) (q p)
( p q) (q p) [por (2)]
p q q p

4.1. Forma normal conjuntiva

47

Ejemplo de clculo de una FNC de ( p q) r:


( p q) r
( p q) (q p) r
(( p q) (q p)) r
(( p q) (q p)) r
(( p q) (q p)) r
(( p q) (q p)) r
(( p q) (q p)) r
((( p q) q) (( p q) p)) r
((( p q) (q q)) (( p p) (q p))) r
((( p q) (q q)) r ) ((( p p) (q p)) r )
((( p q) r ) ((q q) r )) ((( p p) r ) ((q p) r ))
( p q r ) (q q r ) ( p p r ) (q p r )
( p q r ) (q p r )

4.1.3.

[(1)]
[(2)]
[(2)]
[(3)]
[(4)]
[(5)]
[(6)]
[(7)]
[(7)]
[(7)]

Decisin de validez mediante FNC

Procedimiento de decisin de validez mediante FNC


Literales complementarios:
El complementario de un literal L es

Lc

p
p

si L = p;
si L = p.

Propiedades de reduccin de tautologas:


F1 Fn es una tautologa syss F1 , . . . , Fn lo son.
L1 Ln es una tautologa syss { L1 , . . . , Ln } contiene algn par de literales complementarios (i.e. existen i, j tales que Li = Lcj ).
Algoritmo de decisin de tautologas mediante FNC
Entrada: Una frmula F.
Procedimiento:
1. Calcular una FNC de F.
2. Decidir si cada una de las disyunciones de la FNC tiene algn par de
literales complementarios.
Ejemplos de decisin de validez mediante FNC

48

Tema 4. Formas normales

( p (q r )) no es tautologa:
FNC(( p (q r ))) = ( p q) ( p r )
Contramodelos de ( p (q r )):
I1 tal que I1 ( p) = 1 y I1 (q) = 0
I2 tal que I2 ( p) = 1 y I2 (r ) = 1
( p q) (q p) es tautologa:
FNC(( p q) (q p)) = p q q p
( p q) r no es tautologa:
FNC(( p q) r ) = ( p q r ) (q p r )
Contramodelos de ( p q) r:
I1 tal que I1 ( p) = 0, I1 (q) = 0 y I1 (r ) = 0
I2 tal que I2 ( p) = 1, I2 (q) = 1 y I2 (r ) = 0

4.2.

Forma normal disyuntiva

4.2.1.

Definicin de forma normal disyuntiva

Def.: Una frmula est en forma normal disyuntiva (FND) si es una disyuncin de
conjunciones de literales; es decir, es de la forma
( L1,1 L1,n1 ) ( Lm,1 Lm,nm ).
Ejemplos: ( p q) (q p) est en FND.
( p q) (q p) no est en FND.
Def.: Una frmula G es una forma normal disyuntiva (FND) de la frmula F si G
est en forma normal disyuntiva y es equivalente a F.
Ejemplo: Una FND de ( p (q r )) es p (q r ).

4.2.2.

Algoritmo de clculo de forma normal disyuntiva

Algoritmo de clculo de forma normal disyuntiva


Algoritmo: Aplicando a una frmula F los siguientes pasos se obtiene una forma
normal disyuntiva de F, FND( F ):
1. Eliminar los bicondicionales usando la equivalencia
A B ( A B) ( B A)

(1)

2. Eliminar los condicionales usando la equivalencia


A B A B

(2)

4.2. Forma normal disyuntiva

49

3. Interiorizar las negaciones usando las equivalencias


( A B) A B
( A B) A B
A A

(3)
(4)
(5)

4. Interiorizar las conjunciones usando las equivalencias


A ( B C ) ( A B) ( A C )
( A B) C ( A C ) ( B C )

(6)
(7)

Ejemplos de clculo de forma normal disyuntiva


Ejemplo de clculo de una FND de ( p (q r )):
( p (q r ))
( p (q r )) [por (2)]
p (q r )
[por (3)]
p (q r ) [por (4)]
p ( q r )
[por (5)]
Ejemplo de clculo de una FND de ( p q ( p q)):
( p q ( p q))
(( p q) ( p q))
[por (2)]
( p q) ( p q)
[por (4)]
( p q) ( p q)
[por (5)]
( p ( p q)) (q ( p q)) [por (7)]
( p p q) (q p q)

4.2.3.

Decisin de satisfacibilidad mediante FND

Procedimiento de decisin de satisfacibilidad mediante FND


Propiedades de reduccin de satisfacibilidad:
F1 Fn es satisfacible syss alguna de las frmulas F1 , . . . , Fn lo es.
L1 Ln es satisfacible syss { L1 , . . . , Ln } no contiene ningn par de literales complementarios.
Algoritmo de decisin de satisfacibilidad mediante FND:
Entrada: Una frmula F.
Procedimiento:
1. Calcular una FND de F.
2. Decidir si alguna de las conjunciones de la FND no tiene un par de literales complementarios.

50

Tema 4. Formas normales

Ejemplos de decisin de satisfacibilidad mediante FND

( p (q r )) es satisfacible:
FND(( p (q r ))) = p (q r )
Modelos de ( p (q r )):
I1 tal que I1 ( p) = 0
I2 tal que I2 (q) = 1 y I2 (r ) = 0
( p q ( p q)) es insatisfacible:
FND(( p q ( p q))) = ( p p q) (q p q)

4.3.

Clculo de formas normales mediante tableros semnticos

4.3.1.

Forma normal disyuntiva por tableros

Prop.: Sea F una frmula. Si las hojas abiertas de un tablero completo de { F } son
{ L1,1 , . . . , L1,n1 }, . . . , { Lm,1 , . . . , Lm,nm }, entonces una forma normal disyuntiva de
F es ( L1,1 L1,n1 ) ( Lm,1 Lm,nm ).
Ejemplo: Forma normal disyuntiva de ( p q p q).

( p q p q)
p q, ( p q)
p, ( p q)
p, p

p, q

q, ( p q)
q, p

q, q

Una forma normal disyuntiva de ( p q p q) es ( p q) (q p).

4.3.2.

Forma normal conjuntiva por tableros

Prop.: Sea F una frmula. Si las hojas abiertas de un tablero completo de { F } son
{ L1,1 , . . . , L1,n1 }, . . . , { Lm,1 , . . . , Lm,nm }, entonces una forma normal conjuntiva de F
c Lc ) ( Lc Lc
es ( L1,1
m,nm ).
1,n1
m,1
Ejemplo: Forma normal conjuntiva de p q p q.

4.3. Clculo de formas normales mediante tableros semnticos

51

Un rbol completo ( p q p q) est en la transparencia anterior.


Una forma normal disyuntiva de ( p q p q) es ( p q) (q p).
Una forma normal conjuntiva de p q p q es ( p q) (q p).
p q p q ( p q p q)
(( p q) (q p))
( p q) (q p))
( p q) (q p))
( p q) (q p))

Bibliografa
1. C. Badesa, I. Jan y R. Jansana Elementos de lgica formal. (Ariel, 2000)
Cap. 8 (Equivalencia lgica) y 10 (Formas normales).
2. M. BenAri, Mathematical logic for computer science (2nd ed.). (Springer, 2001)
Cap. 2 (Propositional calculus: formulas, models, tableaux).
3. J.A. Dez Iniciacin a la Lgica, (Ariel, 2002)
Cap. 3 (Semntica formal. Consecuencia lgica).
4. M. Huth y M. Ryan Logic in computer science: modelling and reasoning about systems.
(Cambridge University Press, 2000)
Cap. 1 (Propositional logic).
5. E. Paniagua, J.L. Snchez y F. Martn Lgica computacional (Thomson, 2003)
Cap. 4.4 (Formas normales).
* Aadir ejemplos de ltimos algoritmos.
* 13-Mar-05: Cambiar a estilo con color p. 1-7. * 14-Mar-05: Cambiar a estilo con
color p. 7-15.

52

Tema 4. Formas normales

Tema 5
Resolucin proposicional
Contenido
5.1. Lgica de clusulas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47
5.1.1. Sintaxis de la lgica clausal . . . . . . . . . . . . . . . . . . . . . . 47
5.1.2. Semntica de la lgica clausal . . . . . . . . . . . . . . . . . . . . . 47
5.1.3. Equivalencias entre clusulas y frmulas . . . . . . . . . . . . . . 48
5.1.4. Modelos, consistencia y consecuencia entre clusulas . . . . . . . 49
5.1.5. Reduccin de consecuencia a inconsistencia de clusulas . . . . . 49
5.2. Demostraciones por resolucin . . . . . . . . . . . . . . . . . . . . . . . . 50
5.2.1. Regla de resolucin proposicional . . . . . . . . . . . . . . . . . . 50
5.2.2. Demostraciones por resolucin . . . . . . . . . . . . . . . . . . . . 50
5.3. Algoritmos de resolucin . . . . . . . . . . . . . . . . . . . . . . . . . . . 53
5.3.1. Algoritmo de resolucin por saturacin . . . . . . . . . . . . . . . 53
5.3.2. Algoritmo de saturacin con simplificacin . . . . . . . . . . . . . 54
5.4. Refinamientos de resolucin . . . . . . . . . . . . . . . . . . . . . . . . . 55
5.4.1. Resolucin positiva . . . . . . . . . . . . . . . . . . . . . . . . . . . 55
5.4.2. Resolucin negativa . . . . . . . . . . . . . . . . . . . . . . . . . . 56
5.4.3. Resolucin unitaria . . . . . . . . . . . . . . . . . . . . . . . . . . . 57
5.4.4. Resolucin por entradas . . . . . . . . . . . . . . . . . . . . . . . . 57
5.4.5. Resolucin lineal . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58
5.5. Argumentacin por resolucin . . . . . . . . . . . . . . . . . . . . . . . . 58
5.5.1. Formalizacin de argumentacin por resolucin . . . . . . . . . . 58
5.5.2. Decisin de argumentacin por resolucin . . . . . . . . . . . . . 59

53

54

Tema 5. Resolucin proposicional

5.1.

Lgica de clusulas

5.1.1.

Sintaxis de la lgica clausal

Un tomo es una variable proposicional.


Variables sobre tomos: p, q, r, . . . , p1 , p2 , . . ..
Un literal es un tomo (p) o la negacin de un tomo ( p).
Variables sobre literales: L, L1 , L2 , . . ..
Una clusula es un conjunto finito de literales.
Variables sobre clusulas: C, C1 , C2 , . . ..
La clusula vaca es el conjunto vaco de literales.
La clusula vaca se representa por .
Conjuntos finitos de clusulas.
Variables sobre conjuntos finitos de clusulas: S, S1 , S2 , . . ..

5.1.2.

Semntica de la lgica clausal

Una interpretacin es una aplicacin I : VP B.


El valor de un literal positivo p en una interpretacin I es I ( p).
El valor de un
( literal negativo p en una interpretacin I es
1, si I ( p) = 0;
I ( p) =
0, si I ( p) = 1.
El valor de (
una clusula C en una interpretacin I es
1, si existe un L C tal que I ( L) = 1;
I (C ) =
0, en caso contrario.
El valor de(
un conjunto de clusulas S en una interpretacin I es
1, si para toda C S, I (C ) = 1
I (S) =
0, en caso contrario.
Prop.: En cualquier interpretacin I, I () = 0.

5.1. Lgica de clusulas

5.1.3.

55

Equivalencias entre clusulas y frmulas

Clusulas y frmulas
Equivalencias entre clusulas y frmulas
Def.: Una clusula C y una frmula F son equivalentes si I (C ) = I ( F ) para
cualquier interpretacin I.
Def.: Un conjunto de clusulas S y una frmula F son equivalentes si I (S) =
I ( F ) para cualquier interpretacin I.
Def.: Un conjunto de clusulas S y un conjunto de frmulas { F1 , . . . , Fn } son
equivalentes si, para cualquier interpretacin I, I (S) = 1 syss I es un modelo
de { F1 , . . . , Fn }.
De clusulas a frmulas
Prop.: La clusula { L1 , L2 , . . . , Ln } es equivalente a la frmula L1 L2
Ln .
Prop.: El conjunto de clusulas {{ L1,1 , . . . , L1,n1 }, . . . , { Lm,1 , . . . , Lm,nm }} es equivalente a la frmula ( L1,1 L1,n1 ) ( Lm,1 Lm,nm ).
De frmulas a clusulas (forma clausal)
Def.: Una forma clausal de una frmula F es un conjunto de clusulas equivalente
a F.
Prop.: Si ( L1,1 L1,n1 ) ( Lm,1 Lm,nm ) es una forma normal conjuntiva de la frmula F. Entonces, una forma clausal de F es
{{ L1,1 , . . . , L1,n1 }, . . . , { Lm,1 , . . . , Lm,nm }}.
Ejemplos:
Una forma clausal de ( p (q r )) es {{ p, q}, { p, r }}.
Una forma clausal de p q es {{ p, q}}.
El conjunto {{ p, q}, {r }} es una forma clausal de las frmulas ( p q) r
y r (q p).
Def.: Una forma clausal de un conjunto de frmulas S es un conjunto de clusulas
equivalente a S.
Prop.: Si S1 , . . . , Sn son formas clausales de F1 , . . . , Fn , entonces S1 Sn es una
forma clausal de { F1 , . . . , Fn }.

56

Tema 5. Resolucin proposicional

5.1.4.

Modelos, consistencia y consecuencia entre clusulas

Def.: Una interpretacin I es modelo de un conjunto de clusulas S si I (S) = 1.


Ej.: La interpretacin I tal que I ( p) = I (q) = 1 es un modelo de {{ p, q}, { p, q}}.
Def.: Un conjunto de clusulas es consistente si tiene modelos e inconsistente, en
caso contrario.
Ejemplos:
{{ p, q}, { p, q}} es consistente.
{{ p, q}, { p, q}, { p, q}, { p, q}} es inconsistente.
Prop.: Si  S, entonces S es inconsistente.
Def.: S |= C si para todo modelo I de S, I (C ) = 1.

5.1.5.

Reduccin de consecuencia a inconsistencia de clusulas

Prop: Sean S1 , . . . , Sn formas clausales de las frmulas F1 , . . . , Fn .


{ F1 , . . . , Fn } es consistente syss S1 Sn es consistente.
Si S es una forma clausal de G, entonces son equivalentes
1. { F1 , . . . , Fn } |= G.
2. { F1 , . . . , Fn G } es inconsistente.
3. S1 Sn S es inconsistente.
Ejemplo: { p q, q r } |= p r syss
{{ p, q}, {q, r }, { p}, {r }} es inconsistente.

5.2.

Demostraciones por resolucin

5.2.1.

Regla de resolucin proposicional

Reglas habituales:
Modus Ponens:
Modus Tollens:
Encadenamiento:

p q, p
q
p q, q
p
p q, q r
pr

{ p, q}, { p}
{q}
{ p, q}, {q}
{ p}
{ p, q}, {q, r }
{ p, r }

5.2. Demostraciones por resolucin

57

Regla de resolucin proposicional:


{ p1 , . . . , r, . . . , pm }, {q1 , . . . , r, . . . , qn }
{ p1 , . . . , p m , q1 , , . . . , q n }
Def.: Sean C1 una clusula, L un literal de C1 y C2 una clusula que contiene el
complementario de L. La resolvente de C1 y C2 respecto de L es
Res L (C1 , C2 ) = (C1 r { L}) (C2 r { Lc })
Ejemplos: Resq ({ p, q}, {q, r })
Resq ({q, p}, { p, q})
Res p ({q, p}, { p, q})
Res p ({q, p}, {q, p})
Res p ({ p}, { p})

= { p, r }
= { p, p}
= {q, q}
= {q}
=

Def.: Res(C1 , C2 ) es el conjunto de las resolventes entre C1 y C2


Ejemplos: Res({ p, q}, { p, q}) = {{ p, p}, {q, q}}
Res({ p, q}, { p, q})
= {{q}}
Res({ p, q}, {q, r })
=
Nota:  6 Res({ p, q}, { p, q})

5.2.2.

Demostraciones por resolucin

Ejemplo de refutacin por resolucin


Refutacin de {{ p, q}, { p, q}, { p, q}, { p, q}} :
1 { p, q}
Hiptesis
2 { p, q}
Hiptesis
3 { p, q}
Hiptesis
4 { p, q} Hiptesis
5 {q}
Resolvente de 1 y 2
6 {q}
Resolvente de 3 y 4
7 
Resolvente de 5 y 6
Ejemplo de grafo de refutacin por resolucin
Grafo de refutacin de {{ p, q}, { p, q}, { p, q}, { p, q}} :

58

Tema 5. Resolucin proposicional

Demostraciones por resolucin entre clusulas


Sea S un conjunto de clusulas.
La sucesin (C1 , . . . , Cn ) es una demostracin por resolucin de la clusula C a
partir de S si C = Cn y para todo i {1, ..., n} se verifica una de las siguientes
condiciones:
Ci S;
existen j, k < i tales que Ci es una resolvente de Cj y Ck
La clusula C es demostrable por resolucin a partir de S si existe una demostracin por resolucin de C a partir de S. Se representa por S ` Res C
Una refutacin por resolucin de S es una demostracin por resolucin de la clusula vaca a partir de S.
Se dice que S es refutable por resolucin si existe una refutacin por resolucin a
partir de S. Se representa por S ` Res 
Demostraciones por resolucin entre frmulas
Def.: Sean S1 , . . . , Sn formas clausales de las frmulas F1 , . . . , Fn y
S una forma clausal de F
Una demostracin por resolucin de F a partir de { F1 , . . . , Fn } es una refutacin
por resolucin de S1 Sn S.
Def.: La frmula F es demostrable por resolucin a partir de { F1 , . . . , Fn } si existe
una demostracin por resolucin de F a partir de { F1 , . . . , Fn }. Se representa por
{ F1 , . . . , Fn } ` Res F.

5.3. Algoritmos de resolucin

Ejemplo: { p q, p q} ` Res p q
1 { p, q}
Hiptesis
2 { p, q}
Hiptesis
3 { p, q}
Hiptesis
4 { p, q} Hiptesis
5 {q}
Resolvente de 1 y 2
6 {q}
Resolvente de 3 y 4
7 
Resolvente de 5 y 6
Adecuacin y completitud de la resolucin
Prop.: Si C es una resolvente de C1 y C2 , entonces {C1 , C2 } |= C.
Prop.: Si  S, entonces S es inconsistente.
Prop.: Sea S un conjunto de clusulas.
(Adecuacin) Si S ` Res , entonces S es inconsistente.
(Completitud) Si S es inconsistente, entonces S ` Res .
Prop.: Sean S un conjunto de frmulas y F es una frmula.
(Adecuacin) Si S ` Res F, entonces S |= F.
(Completitud) Si S |= F, entonces S ` Res F.
Nota: Sean C1 y C2 las clusulas { p} y { p, q}, respectivamente. Entonces,
{C1 } |= C2 .
C2 no es demostrable por resolucin a partir de {C1 }.
La frmula de forma clausal C1 es F1 = p.
La frmula de forma clausal C2 es F2 = p q.
{ F1 } ` Res F2 .

5.3.

Algoritmos de resolucin

5.3.1.

Algoritmo de resolucin por saturacin

Def.: Sea S un conjunto de clusulas.


S
Res(S) = S ( { Res(C1 , C2 ) : C1 , C2 S}).
Algoritmo de resolucin por saturacin

59

60

Tema 5. Resolucin proposicional

Entrada: Un conjunto finito de clusulas, S.


Salida: Consistente, si S es consistente;
Inconsistente, en caso contrario.
S0 :=
mientras ( 6 S) y (S 6= S0 ) hacer
S0 := S
S := Res(S)
fmientras
si ( S) entonces
Devolver Inconsistente
en caso contrario
Devolver Consistente
fsi
Prop.: El algoritmo de resolucin por saturacin es correcto.
Ejemplo de grafo de resolucin por saturacin
Grafo de {{ p, q}, { p, q}, { p, q}, { p, q}} :

Traza:
Paso
0
1
2

5.3.2.

S
{1, 2, 3, 4}
{1, 2, 3, 4, 5, 6, 7, 8, 9, 10}
{1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11}

S0

{1, 2, 3, 4}
{1, 2, 3, 4, 5, 6, 7, 8, 9, 10}

Algoritmo de saturacin con simplificacin

Prop.: Si S1 S2 y S2 es consistente, entonces S1 es consistente.


Prop.: Una clusula es una tautologa syss contiene un literal y su complementario.
Prop.: Sea C S una tautologa.
Entonces S es consistente syss S \ {C } es consistente.

5.3. Algoritmos de resolucin

61

Def.: La clusula C subsume a la clusula D si C D (es decir, C D y C 6= D).


Prop.: Si C subsume a D, entonces C |= D.
Prop.: Sean C, D S tales que C subsume a D.
Entonces S es consistente syss S \ { D } es consistente.
Def.: El simplificado de un conjunto finito de clusulas S es el conjunto obtenido
de S suprimiendo las tautologas y las clusulas subsumidas por otras; es decir,
Simp(S) = S {C S : (C es una tautologa)
(existe D S tal que D C)}
Algoritmo de saturacin con simplificacin
Algoritmo de resolucin por saturacin con simplificacin:
Entrada: Un conjunto finito de clusulas, S.
Salida: Consistente, si S es consistente;
Inconsistente, en caso contrario.
S0 :=
mientras ( 6 S) y (S 6= S0 ) hacer
S0 := S
S := Simp( Res(S))
fmientras
si ( S) entonces
Devolver Inconsistente
en caso contrario
Devolver Consistente
fsi
Prop.: El algoritmo de resolucin por saturacin con simplificacin es correcto.
Grafo de resolucin por saturacin con simplificacin
Resolucin de {{ p, q}, { p, q}, { p, q}, { p, q}} :

62

Tema 5. Resolucin proposicional

Traza:
Paso
0
1
2

S
{1, 2, 3, 4}
{5, 6, 7, 8}
{9}

S0

{1, 2, 3, 4}
{5, 6, 7, 8}

Grafo de resolucin por saturacin con simplificacin


Resolucin de {{ p}, { p, q}, {q, r }} :

Traza:
Paso S
S0
0
{1, 2, 3}

1
{1, 3, 4, 5} {1, 2, 3}
2
{1, 4, 6}
{1, 3, 4, 5}
3
{1, 4, 6}
{1, 4, 5, 6}
Modelo: I ( p) = 1, I (q) = 1, I (r ) = 0.

5.4.

Refinamientos de resolucin

5.4.1.

Resolucin positiva

Def.: Un literal positivo es un tomo.


Def.: Una clusula positiva es un conjunto de literales positivos.
Def.: Una demostracin por resolucin positiva es una demostracin por resolucin en la que en cada resolvente interviene una clusula positiva.

5.4. Refinamientos de resolucin

63

La clusula C es demostrable por resolucin positiva a partir del conjunto de clusulas S si existe una demostracin por resolucin positiva de C a partir de S. Se
representa por S ` ResPos C.
Prop.: Sea S un conjunto de clusulas.
(Adecuacin) Si S ` ResPos , entonces S es inconsistente.
(Completitud) Si S es inconsistente, entonces S ` ResPos .
Grafo de resolucin positiva
Grafo de {{ p, q}, { p, q}, { p, q}, { p, q}} :

Traza: Paso
0
1
2
3

5.4.2.

S
{1, 2, 3, 4}
{4, 5, 6}
{5, 6, 7, 8}
{9}

S0

{1, 2, 3, 4}
{4, 5, 6}
{5, 6, 7, 8}

Resolucin negativa

Def.: Un literal negativo es la negacin de un tomo.


Def.: Una clusula negativa es un conjunto de literales negativos.
Def.: Una demostracin por resolucin negativa es una demostracin por resolucin en la que en cada resolvente interviene una clusula negativa.
La clusula C es demostrable por resolucin negativa a partir del conjunto de clusulas S si existe una demostracin negativa por resolucin de C a partir de S. Se
representa por S ` ResNeg C.
Prop.: Sea S un conjunto de clusulas.

64

Tema 5. Resolucin proposicional

(Adecuacin) Si S ` ResNeg , entonces S es inconsistente.


(Completitud) Si S es inconsistente, entonces S ` ResNeg .

5.4.3.

Resolucin unitaria

Def.: Una clusula unitaria es un conjunto formado por un nico literal.


Def.: Una demostracin por resolucin unitaria es una demostracin por resolucin en la que en cada resolvente interviene una clusula unitaria.
La clusula C es demostrable por resolucin unitaria a partir del conjunto de clusulas S si existe una demostracin por resolucin unitaria de C a partir de S. Se
representa por S ` ResUni C.
Prop.: (Adecuacin) Sea S un conjunto de clusulas.
Si S ` ResUni , entonces S es inconsistente.
Existen conjuntos de clusulas S tales que S es inconsistente y S 6` ResUni .
Dem.: S = {{ p, q}, { p, q}, { p, q}, { p, q}}
Def.: Una clusula de Horn es un conjunto de literales con un literal positivo como
mximo.
Ejemplos: { p, q, r }, { p} y { p, q} son clusulas de Horn.
{ p, q, r } y { p, r } no son clusulas de Horn.
Prop.: Si S es un conjunto inconsistente de clusulas de Horn, entonces S ` ResUni
.

5.4.4.

Resolucin por entradas

Def.: Una demostracin por resolucin por entradas a partir de S es una demostracin por resolucin en la que en cada resolvente interviene una clusula de S.
La clusula C es demostrable por resolucin por entradas a partir del conjunto de
clusulas S si existe una demostracin por resolucin por entradas de C a partir
de S. Se representa por S ` ResEnt C.
Prop.: (Adecuacin) Sea S un conjunto de clusulas.
Si S ` ResEnt , entonces S es inconsistente.
Existen conjuntos de clusulas S tales que S es inconsistente y S 6` ResEnt .
Dem.: S = {{ p, q}, { p, q}, { p, q}, { p, q}}
Prop.: Si S es un conjunto inconsistente de clusulas de Horn, entonces S ` ResEnt
.

5.5. Argumentacin por resolucin

5.4.5.

65

Resolucin lineal

Sea S un conjunto de clusulas.


La sucesin (C0 , C1 , . . . , Cn ) es una resolucin lineal a partir de S si se cumplen las siguientes condiciones:
1. C0 S;
2. para todo i {1, . . . , n}, existe un B S {C0 , . . . , Ci1 } tal que Ci
Res(Ci1 , B).
La clusula C0 se llama clusula base, las Ci se llaman clusulas centrales y
las B se llaman clusulas laterales.
La clusula C es deducible por resolucin lineal a partir de S si existe una
deduccin por resolucin lineal a partir de S, (C0 , . . . , Cn ), tal que Cn = C. Se
representa por S ` ResLin C.
Prop.: Sea S un conjunto de clusulas.
(Adecuacin) Si S ` ResLin , entonces S es inconsistente.
(Completitud) Si S es inconsistente, entonces S ` ResLin .
Ejemplo: Resolucin lineal de {{ p, q}, { p, q}, { p, q}, { p, q}}
1 { p, q} 2 { p, q} 3 { p, q} 4 { p, q}
5 {q}
6 { p}
7 {q}
8

5.5.

Argumentacin por resolucin

5.5.1.

Formalizacin de argumentacin por resolucin

Problema de los animales: Se sabe que


1. Los animales con pelo o que dan leche son mamferos.
2. Los mamferos que tienen pezuas o que rumian son ungulados.
3. Los ungulados de cuello largo son jirafas.

66

Tema 5. Resolucin proposicional

4. Los ungulados con rayas negras son cebras.


Se observa un animal que tiene pelos, pezuas y rayas negras. Por consiguiente,
se concluye que el animal es una cebra.
Formalizacin:
{ tiene_pelos da_leche es_mamfero,
es_mamfero (tiene_pezuas rumia) es_ungulado,
es_ungulado tiene_cuello_largo es_jirafa,
es_ungulado tiene_rayas_negras es_cebra,
tiene_pelos tiene_pezuas tiene_rayas_negras }
` Res es_cebra

5.5.2.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16

Decisin de argumentacin por resolucin


{ tiene_pelos, es_mamfero}
{ da_leche, es_mamfero}
{es_mamfero, tiene_pezuas, es_ungulado}
{es_mamfero, rumia, es_ungulado}
{es_ungulado, tiene_cuello_largo, es_jirafa}
{es_ungulado, tiene_rayas_negras, es_cebra}
{tiene_pelos}
{tiene_pezuas}
{tiene_rayas_negras}
{es_cebra}
{es_mamfero}
{tiene_pezuas, es_ungulado}
{es_ungulado}
{tiene_rayas_negras, es_cebra}
{es_cebra}


Hiptesis
Hiptesis
Hiptesis
Hiptesis
Hiptesis
Hiptesis
Hiptesis
Hiptesis
Hiptesis
Hiptesis
Resolvente de 1 y 7
Resolvente de 11 y 3
Resolvente de 12 y 8
Resolvente de 13 y 6
Resolvente de 14 y 9
Resolvente de 15 y 10

Bibliografa
1. M. BenAri, Mathematical logic for computer science (2nd ed.). (Springer, 2001).
Cap. 4: Propositional calculus: resolution and BDDs.
2. C.L. Chang y R.C.T. Lee Symbolic Logic and Mechanical Theorem Proving (Academic Press, 1973).
Cap. 5.2: The resolution principle for the proposicional logic.

5.5. Argumentacin por resolucin

3. N.J. Nilsson Inteligencia artificial (Una nueva sntesis) (McGrawHill, 2001).


Cap. 14: La resolucin en el clculo proposicional.
4. E. Paniagua, J.L. Snchez y F. Martn Lgica computacional (Thomson, 2003).
Cap. 5.7: El principio de resolucin en lgica proposicional.
5. U. Schning Logic for Computer Scientists (Birkuser, 1989).
Cap. 1.5: Resolution.
* Captulo de Ben-Ari.

67

68

Tema 5. Resolucin proposicional

Tema 6
Sintaxis y semntica de la lgica de
primer orden
Contenido
6.1. Representacin del conocimiento en lgica de primer orden . . . . . . 61
6.1.1. Representacin de conocimiento geogrfico . . . . . . . . . . . . . 61
6.1.2. Representacin del mundo de los bloques . . . . . . . . . . . . . . 62
6.1.3. Representacin de conocimiento astronmico . . . . . . . . . . . 63
6.2. Sintaxis de la lgica de primer orden . . . . . . . . . . . . . . . . . . . . 64
6.2.1. Lenguaje de primer orden . . . . . . . . . . . . . . . . . . . . . . . 64
6.2.2. Trminos y frmulas de primer orden . . . . . . . . . . . . . . . . 66
6.2.3. Subfrmulas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67
6.2.4. Variables libres y ligadas . . . . . . . . . . . . . . . . . . . . . . . . 69
6.3. Semntica de la lgica de primer orden . . . . . . . . . . . . . . . . . . . 70
6.3.1. Estructuras, asignaciones e interpretaciones . . . . . . . . . . . . 70
6.3.2. Evaluacin de trminos y frmulas . . . . . . . . . . . . . . . . . . 72
6.3.3. Modelo, satisfacibilidad y validez de frmulas . . . . . . . . . . . 75
6.3.4. Modelo y consistencia de conjuntos de frmulas . . . . . . . . . . 77
6.3.5. Consecuencia lgica . . . . . . . . . . . . . . . . . . . . . . . . . . 78
6.3.6. Equivalencia lgica . . . . . . . . . . . . . . . . . . . . . . . . . . . 79

69

70

Tema 6. Sintaxis y semntica de la lgica de primer orden

6.1.

Representacin del conocimiento en lgica de primer


orden

6.1.1.

Representacin de conocimiento geogrfico

Ejemplo 1: Si Sevilla es vecina de Cdiz, entonces Cdiz es vecina de Sevilla. Sevilla es


vecina de Cdiz. Por tanto, Cdiz es vecina de Sevilla
Representacin en lgica proposicional:
{SvC CvS, SvC } |= CvS
Ejemplo 2: Si una ciudad es vecina de otra, entonces la segunda es vecina de la primera.
Sevilla es vecina de Cdiz. Por tanto, Cdiz es vecina de Sevilla
Representacin en lgica proposicional: Imposible
Representacin en lgica de primer orden:
{ x y [vecina( x, y) vecina(y, x )], vecina(Sevilla, Cadiz)}
|= vecina(Cadiz, Sevilla)

6.1.2.

Representacin del mundo de los bloques

Simbolizacin:
sobre( x, y) se verifica si el bloque x est colocado sobre el bloque y
sobre_mesa( x ) se verifica si el bloque x est sobre la mesa
Situacin del ejemplo:
sobre( a, b), sobre(b, c), sobre_mesa(c), sobre(d, e), sobre_mesa(e)
Definiciones:
bajo( x, y) se verifica si el bloque x est debajo del bloque y
x y [bajo( x, y) sobre(y, x )]

6.1. Representacin del conocimiento en lgica de primer orden

71

encima( x, y) se verifica si el bloque x est encima del bloque y pudiendo haber otros bloques entre ellos
x y [ encima( x, y)
sobre( x, y) z [sobre( x, z) encima(z, y)]]
libre( x ) se verifica si el bloque x no tiene bloques encima
x [libre( x ) y sobre(y, x )]
pila( x, y, z) se verifica si el bloque x est sobre el y, el y sobre el z y el z sobre
la mesa
x y z [ pila( x, y, z)
sobre( x, y) sobre(y, z) sobre_mesa(z)]
Propiedades:
Si z, y, z es una pila entonces y no est libre
x y z [pila( x, y, z) libre(y)]
Representacin del mundo de los bloques con funciones e igualdad
Simbolizacin:
es_bloque( x ) se verifica si x es un bloque.
superior( x ) es el bloque que est sobre el bloque x.
Situacin del ejemplo:
es_bloque( a), es_bloque(b), es_bloque(c), es_bloque(d), es_bloque(e)
superior(b) = a, superior(c) = b, superior(e) = d
Definiciones:
sobre_mesa( x ) se verifica si el bloque x est sobre la mesa
x [sobre_mesa( x ) es_bloque( x ) y superior(y) = x ]
libre( x ) se verifica si el bloque x no tiene bloques encima
x [libre( x ) y superior( x ) = y]
tope( x ) es el bloque libre que est encima de x
x [ (libre( x ) tope( x ) = x )
( libre( x ) tope( x ) = tope(superior( x )))]

72

Tema 6. Sintaxis y semntica de la lgica de primer orden

6.1.3.

Representacin de conocimiento astronmico

La Tierra es un planeta:
planeta(Tierra)
La Luna no es un planeta:
planeta(Luna)
La Luna es un satlite:
satlite(Luna)
La Tierra gira alrededor del Sol:
gira(Tierra, Sol)
Todo planeta es un satlite:
x [planeta( x ) satlite( x )]
Todo planeta gira alrededor del Sol:
x [planeta( x ) gira( x, Sol)]
Algn planeta gira alrededor de la Luna:
x [planeta( x ) gira( x, Luna)]
Hay por lo menos un satlite:
x satlite( x )
Ningn planeta es un satlite:
x [planeta( x ) satlite( x )]
Ningn objeto celeste gira alrededor de s mismo:
x gira( x, x )
Alrededor de los satlites no giran objetos:
x [satlite( x ) y gira(y, x )]
Hay exactamente un satlite:
x [satlite( x ) y [satlite(y) x = y]]
La Luna es un satlite de la Tierra:
satlite(Luna, Tierra)
Todo planeta tiene un satlite:
x [planeta( x ) y satlite(y, x )]
La Tierra no tiene satlites:
x satlite( x, Tierra)

6.2. Sintaxis de la lgica de primer orden

Algn planeta no tiene satlites:


x [planeta( x ) y satlite(y, x )]
Slo los planetas tienen satlites:
x [y satlite(y, x ) planeta( x )]
Todo satlite es satlite de algn planeta:
x [satlite( x ) y (planeta(y) satlite( x, y))]
La Luna no gira alrededor de dos planetas diferentes:
x y [ planeta( x ) planeta(y)
gira(Luna, x ) gira(Luna, y) x 6= y]
Hay exactamente dos planetas:
x y [ planeta( x ) planeta(y) x 6= y
z [planeta(z) z = x z = y]]

6.2.

Sintaxis de la lgica de primer orden

6.2.1.

Lenguaje de primer orden

Lenguaje de primer orden


Smbolos lgicos:
Variables: x, y, z, . . . , x1 , x2 , . . ..
Conectivas: , , , , .
Cuantificadores: , .
Smbolo de igualdad: =.
Smbolos propios:
Smbolos de constantes: a, b, c, . . . , a1 , a2 , . . ..
Smbolos de predicado (con aridad): P, Q, R, . . . , P1 , P2 , . . ..
Smbolos de funcin (con aridad): f , g, h, . . . , f 1 , f 2 , . . ..
Smbolos auxiliares: (, ), ,.
Notacin:
L, L1 , L2 , . . . representan lenguajes de primer orden.
Var representa el conjunto de las variables.
Los smbolos de predicados de aridad mayor que 1 se llaman de relaciones.

73

74

Tema 6. Sintaxis y semntica de la lgica de primer orden

Ejemplos de lenguajes de primer orden


Lenguaje del mundo de los bloques:
Smbolos de constantes: a, b, c, d, e
Smbolos de predicado (y de relacin):
de aridad 1: sobre_mesa, libre, es_bloque
de aridad 2: sobre, bajo, encima
de aridad 3: pila
Smbolos de funcin (de aridad 1): superior, tope
Lenguaje de la aritmtica:
Smbolos de constantes: 0, 1
Smbolos de funcin:
monaria: s (siguiente)
binarias: +,
Smbolo de predicado binario: <

6.2.2.

Trminos y frmulas de primer orden

Trminos
Def. de trmino de un lenguaje de primer orden L:
Las variables son trminos de L.
Las constantes de L son trminos de L.
Si f es un smbolo de funcin naria de L y t1 , . . . , tn son trminos de L, entonces f (t1 , . . . , tn ) es un trmino de L.
Ejemplos:
En el lenguaje de la aritmtica,

+(( x, 1), s(y)) es un trmino, que se suele escribir como ( x 1) + s(y)


+(( x, <), s(y)) no es un trmino
En el lenguaje del mundo de los bloques,
superior(superior(c)) es un trmino.
libre(superior(c)) no es un trmino.
Notacin:
s, t, t1 , t2 , . . . representan trminos.
Trm( L) representa el conjunto de los trminos de L

6.2. Sintaxis de la lgica de primer orden

75

Frmulas atmicas
Def. de frmula atmica de un lenguaje de primer orden L:
Si t1 y t2 son trminos de L, entonces t1 = t2 es una frmula atmica de L.
Si P es un smbolo de relacin naria de L y t1 , . . . , tn son trminos de L,
entonces P(t1 , . . . , tn ) es una frmula atmica de L.
Ejemplos:
En el lenguaje de la aritmtica,

< (( x, 1), s(y)) es una frmula atmica que se suele escribir como x 1 <
s(y)
+( x, y) = ( x, y) es una frmula atmica que se suele escribir como x +
y = xy
En el lenguaje del mundo de los bloques,

libre(superior(c)) es una frmula atmica.


tope(c) = superior(b) es una frmula atmica.
Notacin:
A, B, A1 , A2 , . . . representan frmulas atmicas.
Atm( L) representa el conjunto de las frmulas atmicas de L.
Frmulas
Definicin de las frmulas de L:
Las frmulas atmicas de L son frmulas de L.
Si F y G son frmulas de L, entonces F, ( F G ), ( F G ), ( F G ) y ( F G )
son frmulas de L.
Si F es una frmula de L, entonces x F y x F son frmulas de L.
Ejemplos:
En el lenguaje de la aritmtica,

x y < ( x, y) es una frmula que se escribe como x y x < y


x y + ( x, y) no es una frmula.
En el lenguaje del mundo de los bloques,

x (tope( x ) = x libre( x )) es una frmula.

76

Tema 6. Sintaxis y semntica de la lgica de primer orden

Notacin:
F, G, H, F1 , F2 , . . . representan frmulas.
Frm( L) representa el conjunto de las frmulas de L.

6.2.3.

Subfrmulas

rboles de anlisis (o de formacin)


x ( R( x, c) P( f (y)))
x

R( x, c) P( f (y))

R( x, c) P( f (y))

c f (y)

R
x

P
c

f
y

Subfrmulas
Def: El conjunto Subf( F ) de las subfrmulas de una frmula F se define recursivamente por:

{ F },
si F es una frmula atmica;

si F = G;

{ F } Subf( G ),
Subf( F ) = { F } Subf( G ) Subf( H ), si F = G H;

{ F } Subf( G ),
si F = x G;

{ F } Subf( G ),
si F = x G
Ejemplo:
Subf( x ( R( x, c) P( f (y)))) = { x ( R( x, c) P( f (y))),
( R( x, c) P( f (y))),
R( x, c),
P( f (y))}
Criterios de reduccin de parntesis

6.2. Sintaxis de la lgica de primer orden

77

Pueden eliminarse los parntesis externos.


F G es una abreviatura de ( F G )
Precedencia de asociacin de conectivas y cuantificadores: , , , , , , .
x P( x ) Q( x ) es una abreviatura de ( x P( x )) Q( x )
Cuando una conectiva se usa repetidamente, se asocia por la derecha.
FGH
es una abreviatura de ( F ( G H ))
F G H F G es una abreviatura de (( F ( G H )) ( F G ))
Los smbolos binarios pueden escribirse en notacin infija.
x + y es una abreviatura de +( x, y)
x < y es una abreviatura de < ( x, y)

6.2.4.

Variables libres y ligadas

Conjuntos de variables
Def.: El conjunto de las variables del trmino t es

si t es una constante;

,
V( t ) = { x },
si t es una variable x;

V(t1 ) V(tn ), si t es f (t1 , . . . , tn )


Def.: El conjunto
de las variables de la frmula F es

V( t1 ) V( t2 ),
si F es t1 = t2 ;

V(t1 ) V(tn ), si F es P(t1 , . . . , tn );

V( G ),
si F es G;
V( F ) =

V( G ) V( H ),
si F es G H;

V( G ),
si F es x G;

V( G ),
si F es x G
Ejemplos:
El conjunto de las variables de x ( R( x, c) P( f (y))) es { x, y}.
El conjunto de las variables de x ( R( a, c) P( f (y))) es {y}.
Apariciones libres y ligadas
Def.: Una aparicin (u ocurrencia) de la variable x en la frmula F es ligada si es
en una subfrmula de F de la forma x G x G.

78

Tema 6. Sintaxis y semntica de la lgica de primer orden

Def.: Una aparicin (u ocurrencia) de la variable x en la frmula F es libre si no es


ligada.
Ejemplo: Las apariciones ligadas son las subrayadas:
x ( P( x ) R( x, y)) (y P(y) R(z, x ))
x R( x, y) y P(y)
x ( P( x ) y R( x, y))
P( x ) R( x, y)
Variables libres y ligadas
La variable x es libre en F si tiene una aparicin libre en F.
La variable x es ligada en F si tiene una aparicin ligada en F.
El conjunto de
las variables libres de una frmula F es:

V( t1 ) V( t2 ),
si F es t1 = t2 ;

V(t1 ) V(tn ), si F es P(t1 , . . . , tn );

VL( G ),
si F es G;
VL( F ) =

VL( G ) VL( H ),
si F es G H;

VL( G ) \ { x },
si F es x G;

VL( G ) \ { x },
si F es x G
Ejemplo:
Frmula
Ligadas Libres
x ( P( x ) R( x, y)) (y P(y) R( x, z)) x, y
x, y, z
x ( P( x ) y R( x, y))
x, y
z ( P( x ) R( x, y))
x, y
Frmulas cerradas y abiertas
Frmula cerradas:
Def.: Una frmula cerrada (o sentencia) es una frmula sin variables libres.
Ejemplos: x ( P( x ) y R( x, y))
x R( x, y) y P(y)

es cerrada.
no es cerrada.

Frmulas abiertas:
Def.: Una frmula abierta es una frmula con variables libres.
Ejemplos: x ( P( x ) y R( x, y))
x R( x, y) y P(y)

no es abierta.
es abierta.

6.3. Semntica de la lgica de primer orden

6.3.

Semntica de la lgica de primer orden

6.3.1.

Estructuras, asignaciones e interpretaciones

79

Estructuras, asignaciones e interpretaciones


Una estructura del lenguaje L es un par I = (U, I ) tal que:
U es un conjunto no vaco, denominado universo de la estructura;
I es una funcin con dominio el conjunto de smbolos propios de L tal que

si c es una constante de L, entonces I (c) U;


si f es un smbolo de funcin naria de L, entonces I ( f ) : U n U;
si P es un smbolo de relacin 0aria de L, entonces I ( P) {1, 0};
si R es un smbolo de relacin naria (n > 0) de L, entonces I ( R) U n ;

Una asignacin A en una estructura (U, I ) es una funcin A : Var U que hace
corresponder a cada variable del alfabeto un elemento del universo de la estructura.
Una interpretacin de L es un par (I , A) formado por una estructura I de L y una
asignacin A en I .
Notacin: A veces se usa para los valores de verdad V y F en lugar de 1 y 0.
Ejemplos de estructuras
Sea L el lenguaje de la aritmtica cuyos smbolos propios son:
constante: 0;
smbolo de funcin monaria: s;
smbolo de funcin binaria: + y
smbolo de relacin binaria:
Primera estructura de L:
U1 = N
I1 (0) = 0
I1 (s) = {(n, n + 1) : n N} (sucesor)
I1 (+) = {( a, b, a + b) : a, b N} (suma)
I1 () = {(n, m) : n, m N, n m} (menor o igual)
Segunda estructura de L:
U2 = {0, 1} (cadenas de 0 y 1)
I2 (0) = e (cadena vaca)
I2 (s) = {(w, w1) : w {0, 1} } (siguiente)

80

Tema 6. Sintaxis y semntica de la lgica de primer orden

I2 (+) = {(w1 , w2 , w1 w2 ) : w1 , w2 {0, 1} } (concatenacin)


I2 () = {(w1 , w2 ) : w1 , w2 {0, 1} , w1 es prefijo de w2 } (prefijo)
Tercera estructura de L:
U3 = { abierto, cerrado }
I3 (0) = cerrado
I3 (s) = {( abierto, cerrado ), (cerrado, abierto )}
I3 (+) = { ( abierto, abierto, abierto ), ( abierto, cerrado, abierto ),
(cerrado, abierto, abierto ), (cerrado, cerrado, cerrado )}
I3 () = { ( abierto, abierto ), (cerrado, abierto ), (cerrado, cerrado )}
I3 (s)(e)
e
abierto cerrado
cerrado abierto
I3 () abierto cerrado
I3 (+) abierto cerrado
abierto abierto abierto
abierto
1
0
cerrado abierto cerrado
cerrado
1
1

6.3.2.

Evaluacin de trminos y frmulas

Ejemplo de evaluacin de trminos


Sean L el lenguaje de la pgina 71 y t el trmino s( x + s(0)).
Si I es la primera estructura y A( x ) = 3, entonces
I A (t) = I A (s( x + s(0))) = s I (3 + I s I (0 I )) =
= s I (3 + I s I (0))
= s I (3 + I 1) =
= s I (4)
=5
Si I es la segunda estructura y A( x ) = 10, entonces
I A (t) = I A (s( x + s(0))) = s I (10 + I s I (0 I )) =
= s I (10 + I s I (e)) = s I (10 + I 1) =
= s I (101)
= 1011
Si I es la tercera estructura y A( x )
I A (t) = I A (s( x + s(0)))
= s I ( abierto + I s I (cerrado ))
= s I ( abierto )

= abierto, entonces
= s I ( abierto + I s I (0 I )) =
= s I ( abierto + I abierto ) =
= cerrado

Evaluacin de trminos
Def.: Dada una estructura I = (U, I ) de L y una asignacin A en I , se define la
funcin de evaluacin de trminos I A : Trm( L) U por

6.3. Semntica de la lgica de primer orden

81

si t es una constante c;

I ( c ),
I A ( t ) = A ( x ),
si t es una variable x;

I ( f )(I A (t1 ), . . . , I A (tn )), si t es f (t1 , . . . , tn )

I A (t) se lee el valor de t en I respecto de A.


Ejemplo: Sean L el lenguaje de la pgina 71, t el trmino s(+( x, s(0))), I la primera
estructura y A( x ) = 3.
I A (t) = I A (s(+( x, s(0))))
= I (s)(I A (+( x, s(0)))) =
= I (s)( I (+)(I A ( x ), I A (s(0)))) = I (s)( I (+)( A( x ), I A (s(0)))) =
= I (s)( I (+)(3, I (s)(I A (0))))
= I (s)( I (+)(3, I (s)( I (0)))) =
= I (s)( I (+)(3, I (s)(0)))
= I (s)( I (+)(3, 1)) =
= I (s)(4)
=5
Evaluacin de frmulas
Def.: Dada una estructura I = (U, I ) de L y una asignacin A sobre I , se define la
funcin de evaluacin de frmulas I A : Frm( L) B por
Si F es t1 = t2 ,
I A ( F ) = H= (I A (t1 ), I A (t2 ))
Si F es P(t1 , . . . , tn ), I A ( F ) = H I ( P) (I A (t1 ), . . . , I A (tn ))
Si F es G,
I A ( F ) = H (I A ( G ))
Si F es G H,
I A ( F ) = H (I A ( G ), I A ( H ))

1, si para todo u U se tiene


Si F es x G,
I A ( F) =
I A[x/u] ( G ) = 1;

0, en caso contrario

1, si existe algn u U tal que


Si F es x G,
I A ( F) =
I A[x/u] ( G ) = 1;

0, en caso contrario

I A ( F ) se lee el valor de F en I respecto de A.


Conceptos auxilares para la evaluacin de frmulas
2
La funcin de verdad
( de la igualdad en U es la funcin H= : U B definida por
1, si u1 = u2 ;
H= (u1 , u2 ) =
0, en caso contrario

Funcin de verdad de una relacin: Si R es una relacin naria en U (i.e. R U n ),


n
entonces la funcin de
( verdad de R es la funcin HR : U B definida por
1, si (u1 , . . . , un ) R;
HR ( u1 , . . . , u n ) =
0, en caso contrario

82

Tema 6. Sintaxis y semntica de la lgica de primer orden

Variante de una asignacin: Sea A una asignacin en la estructura (U, I ) y u U.


Mediante A[ x/u
] se representa la asignacin definida por
u,
si y es x;
A[ x/u](y) =
A(y) si y es distinta de x
Ejemplo de evaluacin de frmula
Evaluacin de x y P( x, y) en la estructura I = (U, I ) tal que U = {1, 2} e
I ( P) = {(1, 1), (2, 2)}
I A ( x y P( x, y)) = V I A[x/1] (y P( x, y)) = V y
I A[x/2] (y P( x, y)) = V

I A[x/1] (y P( x, y)) = V I A[x/1,y/1] P( x, y) = V


I A[x/1,y/2] P( x, y) = V
I A[x/1,y/1] P( x, y) = P I (1, 1) = V
Luego, I A[ x/1] (y P( x, y)) = V.
I A[x/2] (y P( x, y)) = V I A[x/2,y/1] P( x, y) = V
I A[x/2,y/2] P( x, y) = V
I A[x/2,y/2] P( x, y) = P I (2, 2) = V
Luego, I A[ x/2] (y P( x, y)) = V.
Por tanto, I A ( x y P( x, y)) = V
Ejemplo de evaluacin de frmulas
Evaluacin de x g( g( x )) = x en la estructura I = (U, I ) tal que U = {1, 2} e
I ( g) = {(1, 2), (2, 1)}.
I A ( x g( g( x )) = x ) = V I A[x/1] g( g( x )) = x = V y
I A[x/2] g( g( x )) = x = V

I A[x/1] ( g( g( x )) = x ) = ( g I ( g I (1)) = 1)
= ( g I (2) = 1)
= (1 = 1)
=V
I A[x/2] ( g( g( x )) = x ) = ( g I ( g I (2)) = 2)
= ( g I (1) = 2)
= (2 = 2)
=V
Por tanto, I A ( x g( g( x )) = x ) = V.

Dependencias en la evaluacin de frmulas

6.3. Semntica de la lgica de primer orden

83

Ejemplo de dependencia del universo: Sea G la frmula x y R(y, x ), entonces


I A ( G ) = V, siendo I = (Z, I ), I ( R) = < y A una asignacin en I .
I A ( G ) = F, siendo I = (N, I ), I ( R) = < y A una asignacin en I .
Ejemplo de dependencia de la estructura: Sea G la frmula x y R( x, y), entonces
I A ( G ) = V, siendo I = (N, I ), I ( R) = y A una asignacin en I .
I A ( G ) = F, siendo I = (N, I ), I ( R) = y A una asignacin en I .
Ejemplo de dependencia de la asignacin: Sea G la frmula y R( x, y), entonces
I A ( G ) = V, siendo I = (N, I ), I ( R) = y A una asignacin en I tal que
A( x ) = 0.
I A ( G ) = F, siendo I = (N, I ), I ( R) = y A una asignacin en I tal que
A( x ) = 5.
Evaluacin y variables libres
Sea t un trmino de L e I una estructura de L.
Si A y B son dos asignaciones en I que coinciden sobre las variables de t,
entonces I A (t) = I B (t).
Si t no tiene variables, entonces I A (t) = I B (t) para cualesquiera asignaciones
A y B en I . Se suele escribir simplemente I(t).
Sea F una frmula de L e I una estructura de L.
Si A y B son dos asignaciones en I que coinciden sobre las variables libres de
F, entonces I A ( F ) = I B ( F ).
Si F es cerrada, entonces I A ( F ) = I B ( F ) para cualesquiera asignaciones A y
B en I . Se suele escribir simplemente I( F ).

6.3.3.

Modelo, satisfacibilidad y validez de frmulas

Modelo de una frmula


Sean F una frmula de L e I una estructura de L.
(I , A) es una realizacin de F si A es una asignacin en I tal que I A ( F ) = 1.
Se representa por I A |= F.
I es un modelo de F si, para todo asignacin A en I , I A ( F ) = 1.
Se representa por I |= F.

84

Tema 6. Sintaxis y semntica de la lgica de primer orden

Ejemplos: Sea I = (N, I ) una estructura tal que I ( f ) = + e I ( g) = .


Si A es una asignacin en I tal que A( x ) = A(y) = 2. Entonces
I A |= f ( x, y) = g( x, y),
Si B es una asignacin en I tal que B( x ) = 1, B(y) = 2. Entonces
I B 6|= f ( x, y) = g( x, y),
I 6|= f ( x, y) = g( x, y)
I |= f ( x, y) = f (y, x )
Satisfacibilidad y validez
Def.: Sea F una frmula de L.
F es vlida si toda estructura de L es modelo de F,
(i.e. para toda estructura I de L y toda asignacin A en I se tiene que I A ( F ) =
1).
Se representa por |= F.
F es satisfacible si tiene alguna realizacin
(i.e. existe alguna estructura I de L y alguna asignacin A en I tales que
I A ( F ) = 1).
F es insatisfacible si no tiene ninguna realizacin
(i.e. para toda estructura I de L y toda asignacin A en I se tiene que I A ( F ) =
0).
Ejemplos:
x P( x ) x P( x ) es vlida.
x P( x ) x P( x ) es satisfacible, pero no es vlida.
x P( x ) x P( x ) es insatisfacible.
F es vlida syss F es insatisfacible.
F es vlida
para toda estructura I y toda asignacin A se tiene que I A ( F ) = 1
para toda estructura I y toda asignacin A se tiene que I A ( F ) = 0
F es insatisfacible.
Si F es vlida, entonces F es satisfacible.
F es vlida
= para toda estructura I y toda asignacin A se tiene que I A ( F ) = 1
= existe una estructura I y una asignacin A tales que I A ( F ) = 1
= F es satisfacible.

6.3. Semntica de la lgica de primer orden

85

F es satisfacible =
/ F es insatisfacible.
x P( x ) y x P( x ) son satisfacibles.
Sea F una frmula de L y x1 , . . . , xn las variables libres de F.
F es vlida syss x1 . . . xn F es vlida.
[ x1 . . . xn F es el cierre universal de F].
F es satisfacible syss x1 . . . xn F es satisfacible.
[ x1 . . . xn F es el cierre existencial de F].

6.3.4.

Modelo y consistencia de conjuntos de frmulas

Modelo de un conjunto de frmulas


Notacin: S, S1 , S2 , . . . representarn conjuntos de frmulas.
Def.: Sean S un conjunto de frmulas de L, I una estructura de L y A una asignacin en I .
(I , A) es una realizacin de S si A es una asignacin en I tal que para toda
F S se tiene que I A ( F ) = 1. Se representa por I A |= S.
I es un modelo de S si para toda F S se tiene que I |= F
(i.e. para toda F S y toda asignacin A en I se tiene I A ( F ) = 1). Se representa por I |= S.
Ejemplo: Sea S = {y R( x, y), y f ( x, y) = y}.
(I , A) con I = (N, I ), R I = , f I = +, A( x ) = 0 es realizacin de S.
(I , A) con I = (N, I ), R I = <, f I = +, A( x ) = 0 no es realizacin de S.
Ejemplo: Sea S = { R(e, y), f (e, y) = y}.
I = (N, I ) con R I = , f I = +, e I = 0 es modelo de S.
I = (N, I ) con R I = <, f I = +, e I = 0 no es modelo de S.
Consistencia de un conjunto de frmulas
Def.: Sea S un conjunto de frmulas de L.
S es consistente si S tiene alguna realizacin
(i.e. existe alguna estructura I de L y alguna asignacin A en I tales que,
para toda F S, I A ( F ) = 1).

86

Tema 6. Sintaxis y semntica de la lgica de primer orden

S es inconsistente si S no tiene ninguna realizacin


(i.e. para toda estructura I de L y toda asignacin A en I , existe alguna F S,
tal que I A ( F ) = 0).
Ejemplos:
S = {y R( x, y), y f ( x, y) = y} es consistente.

(I , A) con I = (N, I ), R I = , f I = +, A( x ) = 0 es realizacin de S.


S = { P( x ) Q( x ), y P(y), Q( x )} es inconsistente.
Prop.: Sea S un conjunto de frmulas cerradas de L. Entonces S es consistente syss
S tiene algn modelo.

6.3.5.

Consecuencia lgica

Consecuencia lgica
Def.: Sean F una frmula de L y S un conjunto de frmulas de L.
F es consecuencia lgica de S si todas las realizaciones de S lo son de F.
(i.e. para toda estructura I de L y toda asignacin A en I ,
si I A |= S entonces I A |= F).
Se representa por S |= F.
Se escribe G |= F en lugar de { G } |= F.
Se escribe G 6|= F en lugar de { G } 6|= F.
Ejemplos:
x P( x ) |= P(y)
P(y) 6|= x P( x )

(I , A) con I = (U, I ), U = {1, 2}, P I = {1}, A(y) = 1.


{ x ( P( x ) Q( x )), P(c)} |= Q(c)
{ x ( P( x ) Q( x )), Q(c)} 6|= P(c)

(I , A) con I = (U, I ), U = {1, 2}, c I = 1, P I = {2}, Q I = {1, 2}.


{ x ( P( x ) Q( x )), Q(c)} |= P(c)
{ P(c), P(d)} |= c 6= d

6.3. Semntica de la lgica de primer orden

87

Consecuencia lgica e inconsistencia


S |= F syss S { F } es inconsistente.
S |= F
para toda estructura I de L y toda asignacin A en I ,
si, para todo G S, I A ( G ) = 1 entonces I A ( F ) = 1.
para toda estructura I de L y toda asignacin A en I ,
si, para todo G S, I A ( G ) = 1 entonces I A ( F ) = 0.
para toda estructura I de L y toda asignacin A en I ,
existe alguna H S { F } tal que I A ( H ) = 0.
S { F } es inconsistente.
Sean F una frmula cerrada de L y S un conjunto de frmulas cerradas de L. Entonces, son equivalentes
F es consecuencia lgica de S
todos los modelos de S lo son de F.

6.3.6.

Equivalencia lgica

Def.: Sean F y G frmulas de L. F y G son equivalentes si para toda estructura I


de L y toda asignacin A en I , I A ( F ) = I A ( G ).
Se representa por F G.
Ejemplos:
P ( x ) 6 P ( y ).
I = ({1, 2}, I ) con P I = {1} y A( x ) = 1, A(y) = 2.
x P ( x ) y P ( y ).
x ( P( x ) Q( x )) x P( x ) x Q( x ).
x ( P( x ) Q( x )) 6 x P( x ) x Q( x ).
I = ({1, 2}, I ) con P I = {1} y Q I = {2}.
Propiedades: Sean F y G frmulas cerradas de L.
F G syss |= F G.
F G syss F |= G y G |= F.
Propiedades bsicas de la equivalencia lgica:
Reflexiva: F F
Simtrica: Si F G, entonces G F

88

Tema 6. Sintaxis y semntica de la lgica de primer orden

Transitiva: Si F G y G H, entonces F H
Principio de sustitucin de frmulas equivalentes:
Prop.: Si en la frmula F1 se sustituye una de sus subfrmulas G1 por una
frmula G2 lgicamente equivalente a G1 , entonces la frmula obtenida, F2 ,
es lgicamente equivalente a F1 .
Ejemplo: F1
G1
G2
F2

= x P( x ) x Q( x )
= x P( x )
= y P(y)
= y P(y) x Q( x )

Bibliografa
1. C. Badesa, I. Jan y R. Jansana Elementos de lgica formal. (Ariel, 2000) pp. 195259
y 323326.
2. M.L. Bonet Apuntes de LPO. (Univ. Politcnica de Catalua, 2003) pp. 1726.
3. J.L. Fernndez, A. Manjarrs y F.J. Dez Lgica computacional. (UNED, 2003) pp.
6487.
4. J.H. Gallier Logic for computer science (foundations of automatic theorem Proving) (June
2003) pp. 146186.
5. M. Huth y M. Ryan Logic in computer science: modelling and reasoning about systems.
(Cambridge University Press, 2000) pp. 90109 y 128140.
6. M. Ojeda e I. Prez de Guzmn Lgica para la computacin (Vol. 2: Lgica de primer
orden) (gora, 1997) pp. 137 y 4951.
7. L. Paulson Logic and proof (U. Cambridge, 2002) pp. 2229.
Bibliografa complementaria

Tema 7
Deduccin natural en lgica de primer
orden
Contenido
7.1. Sustituciones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 81
7.1.1. Definicin de sustitucin . . . . . . . . . . . . . . . . . . . . . . . 81
7.1.2. Aplicacin de sustituciones a trminos . . . . . . . . . . . . . . . 81
7.1.3. Aplicacin de sustituciones a frmulas . . . . . . . . . . . . . . . 82
7.1.4. Sustituciones libres . . . . . . . . . . . . . . . . . . . . . . . . . . . 83
7.2. Reglas de deduccin natural de cuantificadores . . . . . . . . . . . . . . 83
7.2.1. Reglas del cuantificador universal . . . . . . . . . . . . . . . . . . 83
7.2.2. Reglas del cuantificador existencial . . . . . . . . . . . . . . . . . 84
7.2.3. Demostracin de equivalencias por deduccin natural . . . . . . 85
7.3. Reglas de la igualdad . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 90
7.3.1. Regla de eliminacin de la igualdad . . . . . . . . . . . . . . . . . 90
7.3.2. Regla de introduccin de la igualdad . . . . . . . . . . . . . . . . 90

7.1.

Sustituciones

7.1.1.

Definicin de sustitucin

Def.: Una sustitucin (de L) es una aplicacin : Var Trm( L).


Notacin: [(
x1 /t1 , x2 /t2 , . . . , xn /tn ] representa la sustitucin definida por
ti , si x es xi ;
( x) =
x, si x
/ { x1 , . . . , x n }
89

90

Tema 7. Deduccin natural en lgica de primer orden

Ejemplo: [ x/s(0), y/x + y] es la sustitucin de Var en los trminos de la aritmtica definida por
( x ) = s(0), (y) = x + y y (z) = z para z Var \ { x, y}
Notacin: , 1 , 2 , . . . representarn sustituciones.

7.1.2.

Aplicacin de sustituciones a trminos

Def.: t[ x1 /t1 , . . . , xn /tn ] es el trmino obtenido sustituyendo en t las apariciones


de xi por ti .
Def.: La extensin de a trminos es la aplicacin : Trm( L) Trm( L) definida por

si t es una constante c;

c,
t = ( x ),
si t es una variable x;

f (t1 , . . . , tn ), si t es f (t1 , . . . , tn )
Ejemplo: Si = [ x/ f (y, a), y/z], entonces
a = a, donde a es una constante.
w = w, donde w es una variable distinta de x e y.
h( a, x, w) = h( a, x, w ) = h( a, f (y, a), w)
f ( x, y) = f ( x, y ) = f ( f (y, a), z)
h( a, f ( x, y), w) = h( a, f ( x, y), w) = h( a, f ( f (y, a), z), w)

7.1.3.

Aplicacin de sustituciones a frmulas

Def.: F [ x1 /t1 , . . . , xn /tn ] es la frmula obtenida sustituyendo en F las apariciones


libres de xi por ti .
Def.: La extensin de a frmulas es la aplicacin : Frm( L) Frm( L) definida por

P(t1 , . . . , tn ), si F es la frmula atmica P(t1 , . . . , tn );

si F es la frmula t1 = t2 ;

t1 = t2 ,
F = ( G ),
si F es G;

G H,
si F es G H;

( Qx )( Gx ),
si F es ( Qx ) G y Q {, }
donde x es(la sustitucin definida por
x,
si y es x;
x (y) =
.
(y), si y es distinta de x

7.2. Reglas de deduccin natural de cuantificadores

91

Ejemplos: Si = [ x/ f (y), y/b], entonces


( x ( Q( x ) R( x, y))) = x (( Q( x ) R( x, y))x )
= x ( Q( x )x R( x, y)x )
= x ( Q( x ) R( x, b))
( Q( x ) x R( x, y)) = Q( x ) ( x R( x, y))
= Q( f (y)) x ( R( x, y)x )
= Q( f (y)) x R( x, b)
( x ( Q( x ) y R( x, y))) =
=
=
=

7.1.4.

x
x
x
x

(( Q( x ) y R( x, y))x )
( Q( x )x (y R( x, y))x )
( Q( x ) y ( R( x, y)xy ))
( Q( x ) y R( x, y))

Sustituciones libres

Def.: Una sustitucin se denomina libre para una frmula cuando todas las apariciones de variables introducidas por la sustitucin en esa frmula resultan libres.
Ejemplos:
[y/x ] no es libre para x ( x < y)
x ( x < y)[y/x ] = x ( x < x )
[y/g(y)] es libre para x ( P( x ) Q( x, f (y)))
x ( P( x ) Q( x, f (y)))[y/g(y)]
= x ( P( x ) Q( x, f ( g(y))))
[y/g( x )] no es libre para x ( P( x ) Q( x, f (y)))
x ( P( x ) Q( x, f (y)))[y/g( x )]
= x ( P( x ) Q( x, f ( g( x ))))
Convenio: Al escribir F supondremos que es libre para F.

7.2.

Reglas de deduccin natural de cuantificadores

7.2.1.

Reglas del cuantificador universal

Regla de eliminacin del cuantificador universal


Regla de eliminacin del cuantificador universal:
x F
e
F [ x/t]
donde [ x/t] es libre para F.

92

Tema 7. Deduccin natural en lgica de primer orden

Nota: Analoga con e1 y e2 .


Ejemplo: P(c), x [ P( x ) Q( x )] ` Q(c)
1
P(c)
premisa
2

x ( P( x ) Q( x )) premisa

P(c) Q(c)

e 2

Q(c)

e 3, 1

Nota: x y ( x < y) 6` y (y < y).


Regla de introduccin del cuantificador universal
x0
..
.
F [ x/x0 ]

i
x F
donde x0 es una variable nueva, que no aparece fuera de la caja.
Nota: Analoga con i.

x [ P( x ) Q( x )], x P( x ) ` x Q( x )

7.2.2.

x ( P( x ) Q( x )) premisa

x P( x )

premisa

actual x0

supuesto

P ( x0 ) Q ( x0 )

e 1, 3

P ( x0 )

e 2, 3

Q ( x0 )

e 4, 5

x Q( x )

i 3 6

Reglas del cuantificador existencial

Regla de introduccin del cuantificador existencial


Regla de introduccin del cuantificador existencial:
F [ x/t]
i
x F
donde [ x/t] es libre para F.

7.2. Reglas de deduccin natural de cuantificadores

Nota: Analoga con i1 y i2 .


Ejemplo 3: x P( x ) ` x P( x )
1
x P( x ) premisa

e 1

P ( x0 )

x P ( x ) i 2

Regla de eliminacin del cuantificador existencial


x0 F [ x/x0 ]
..
.
G

x F

e
G
donde x0 es una variable nueva, que no aparece fuera de la caja.
Nota: Analoga con e.
Ejemplo: x [ P( x ) Q( x )], x P( x ) ` x Q( x )

7.2.3.

x ( P( x ) Q( x )) premisa

x P( x )

premisa

actual x0 , P( x0 )

supuesto

P ( x0 ) Q ( x0 )

e 1, 3

Q ( x0 )

e 4, 3

x Q( x )

i 5

x Q( x )

e 2, 3 6

Demostracin de equivalencias por deduccin natural

Equivalencias
Sean F y G frmulas.
[1(a)] x F x F
[1(b)] x F x F
Sean F y G frmulas y x una varible no libre en G.
[2(a)] x F G x ( F G )
[2(b)] x F G x ( F G )
[2(c)] x F G x ( F G )

93

94

Tema 7. Deduccin natural en lgica de primer orden

[2(d)] x F G x ( F G )
Sean F y G frmulas.
[3(a)] x F x G x ( F G )
[3(b)] x F x G x ( F G )
Sean F y G frmulas.
[4(a)] x y F y x F
[4(b)] x y F y x F
Equivalencia 1(a)
x P( x ) ` x P( x )
1

x P( x )

x P( x ) supuesto

actual x0

supuesto

P ( x0 )

supuesto

x P( x )

i 4, 3

e 2, 5

P ( x0 )

RAA 4 6

x P( x )

i 3 7

e 1, 8

10

x P( x )

RAA 2 9

Equivalencia 1(a)

premisa

7.2. Reglas de deduccin natural de cuantificadores

x P( x ) ` x P( x )
1
x P( x )

premisa

x P( x )

supuesto

actual x0 , P( x0 )

supuesto

x P( x )

e 2

P ( x0 )

e 4

e 3, 5

e 1, 3 6

x P( x )

RAA 2 7

Equivalencia 1(a)
x P( x ) x P( x )
1
x P( x )

supuesto

x P( x )

x P( x ) x P( x ) i 1 2

x P( x )

supuesto

x P( x )

Lema 1(a)

x P( x ) x P( x ) i 4 5

x P( x ) x P( x ) i 3, 6

Equivalencia 3(a)

Lema 1(a)

95

96

Tema 7. Deduccin natural en lgica de primer orden

x ( P( x ) Q( x )) ` x P( x ) x Q( x )
1
x ( P( x ) Q( x ))
premisa
2

actual x0

supuesto

P ( x0 ) Q ( x0 )

e 1, 2

P ( x0 )

e1 3

x P( x )

i 2 4

actual x1

supuesto

P ( x1 ) Q ( x1 )

e 1, 6

Q ( x1 )

e2 7

x Q( x )

i 6 8

10

x P( x ) x Q( x ) i 5, 9

Equivalencia 3(a)
x P( x ) x Q( x ) ` x ( P( x ) Q( x ))
1
x P( x ) x Q( x ) premisa
2

actual x0

supuesto

x P( x )

e1 1

P ( x0 )

e 3, 2

x Q( x )

e2 1

Q ( x0 )

e 5

P ( x0 ) Q ( x0 )

i 4, 6

x ( P( x ) Q( x ))

i 2 7

Equivalencia 3(a)

7.2. Reglas de deduccin natural de cuantificadores

x ( P( x ) Q( x )) x P( x ) x Q( x )
1
x ( P( x ) Q( x ))

97

supuesto

x P( x ) x Q( x )

Lema 3(a)

x ( P( x ) Q( x )) x P( x ) x Q( x ) i 1 2

x P( x ) x Q( x )

supuesto

x ( P( x ) Q( x ))

Lema 3(a)

x P( x ) x Q( x ) x ( P( x ) Q( x )) i 4 5

x ( P( x ) Q( x )) x P( x ) x Q( x ) i 3, 6

Equivalencia 3(b)
x P( x ) x Q( x ) ` x ( P( x ) Q( x ))
1

x P( x ) x Q( x )

x P( x )

supuesto

x Q( x )

supuesto

actual x0 , P( x0 )

supuesto

actual x1 , Q( x1 )

supuesto

P ( x0 ) Q ( x0 )

i1 3

P ( x1 ) Q ( x1 )

i2 3 0

x ( P( x ) Q( x )) i 4, 3

x ( P( x ) Q( x )) i 30 , 40

x ( P( x ) Q( x )) e 2, 3 5

x ( P( x ) Q( x )) e 20 , 30 50

x ( P( x ) Q( x ))

premisa

1e , 2 6, 20 60

Equivalencia 3(b)
x ( P( x ) Q( x )) ` x P( x ) x Q( x )
1
x ( P( x ) Q( x ))
premisa
2

actual x0 , P( x0 ) Q( x0 )

supuesto

P ( x0 )

supuesto

x P( x )

i 3, 2

x P( x ) x Q( x )

i1 4

Q ( x0 )

supuesto

x Q( x )

i 6, 2

x P( x ) x Q( x )

i2 7

x P( x ) x Q( x )

e 2, 3 5, 6 8

10

x P( x ) x Q( x )

e 1, 2 9

98

Tema 7. Deduccin natural en lgica de primer orden

Equivalencia 3(b)
x P( x ) x Q( x ) x ( P( x ) Q( x ))
1
x P( x ) x Q( x )

supuesto

x ( P( x ) Q( x ))

Lema 3(b)

x P( x ) x Q( x ) x ( P( x ) Q( x )) i 1 2

x ( P( x ) Q( x ))

supuesto

x P( x ) x Q( x )

Lema 3(b)

x ( P( x ) Q( x )) x P( x ) x Q( x ) i 4 5

x P( x ) x Q( x ) x ( P( x ) Q( x )) i 3, 6

Equivalencia 4(b)
x y P( x, y) ` y x P( x, y)
1
x y P( x, y)
premisa
2

actual x0 , y P( x0 , y)

supuesto

actual y0 , P( x0 , y0 )

supuesto

x P( x, y0 )

i 3,2, 2,1

y x P( x, y)

i 4, 3,1

y x P( x, y)

e 2,2, 3 5

y x P( x, y)

e 1, 2 6

Equivalencia 4(b)
x y P( x, y) y x P( x, y)
1
x y P( x, y)

supuesto

y x P( x, y)

Lema 4(b)

x y P( x, y) y x P( x, y) i 1 2

y x P( x, y)

supuesto

x y P( x, y)

Lema 4(b)

y x P( x, y) x y P( x, y) i 4 5

x y P( x, y) y x P( x, y) i 3, 6

7.3. Reglas de la igualdad

99

7.3.

Reglas de la igualdad

7.3.1.

Regla de eliminacin de la igualdad

Regla de eliminacin de la igualdad:


t1 = t2 F [ x/t1 ]
=e
F [ x/t2 ]
donde [ x/t1 ] y [ x/t2 ] son libres para F.
Ejemplo:
1
( x + 1) = (1 + x )

premisa

( x + 1 > 1) ( x + 1 > 0) premisa

(1 + x > 1) (1 + x > 0) =e 1, 2

Ejemplo: t1 = t2 , t2 = t3 ` t1 = t3
1
t1 = t2 premisa

7.3.2.

t2 = t3

premisa

t1 = t3

=e 2, 1

Regla de introduccin de la igualdad

Regla de introduccin de la igualdad:


=i
t=t
Ejemplo: t1 = t2 ` t2 = t1
1
t1 = t2 premisa
2

t1 = t1

=i

t2 = t1

=e 1, 2

Bibliografa
1. C. Badesa, I. Jan y R. Jansana Elementos de lgica formal. (Ariel, 2000) pp. 259287.
2. R. Bornat Using ItL Jape with X (Department of Computer Science, QMW, 1998)
3. J. Dingel Propositional and predicate logic: a review. (2000) pp. 2833.
4. J.L. Fernndez, A. Manjarrs y F.J. Dez Lgica computacional. (UNED, 2003) pp.
8894.

100

Tema 7. Deduccin natural en lgica de primer orden

5. M. Huth y M. Ryan Logic in computer science: modelling and reasoning about systems.
(Cambridge University Press, 2000) pp. 109-127.

Tema 8
Tableros semnticos
Contenido
8.1. Frmulas gamma y delta . . . . . . . . . . . . . . . . . . . . . . . . . . . . 93
8.2. Consecuencia mediante tableros semnticos . . . . . . . . . . . . . . . . 93

8.1.

Frmulas gamma y delta


Un trmino es bsico si no contiene variables.
Las frmulas gamma, junto con sus componentes, son

x F
F [ x/t]
(con t un trmino bsico)
x F F [ x/t] (con t un trmino bsico)
Las frmulas delta, junto con sus componentes, son

x F
F [ x/a]
(con a una nueva constante)
x F F [ x/a] (con a una nueva constante)

8.2.

Consecuencia mediante tableros semnticos

Ejemplo de consecuencia mediante tableros semnticos

101

102

Tema 8. Tableros semnticos

{ x [ P( x ) Q( x )], x P( x )} ` Tab x Q( x )
1
2
3
4
5

x [ P( x ) Q( x )]
x P( x )
x Q( x )
P ( a ) (2)
P ( a ) Q ( a ) (1)

6 P ( a ) (5)

7 Q( a) (5)
8 Q( a) (3)
Cerrada
(8 y 7)

Cerrada
(6 y 4)

Ejemplo de consecuencia mediante tableros semnticos


{ x [ P( x ) Q( x )], x [ Q( x ) R( x )]} ` Tab x [ P( x ) R( x )]
1
2
3
4
5
6
7
8

x [ P( x ) Q( x )]
x [ Q( x ) R( x )]
x [ P( x ) R( x )]
( P( a) R( a)) (3)
P ( a ) (4)
R ( a ) (4)
P ( a ) Q ( a ) (1)
Q ( a ) R ( a ) (2)

9 P ( a ) (7)
Cerrada (9, 5)

10 Q( a) (7)
11 Q( a) (8)
12 R( a) (8)
Cerrada (11, 10) Cerrada (12, 6)

Ejemplo de no consecuencia mediante tablero

8.2. Consecuencia mediante tableros semnticos

103

x [ P( x ) Q( x )] 6|= x P( x ) x Q( x )
1
2
3
4
5
6
7
8

x [ P( x ) Q( x )]
( x P( x ) x Q( x ))
x P( x ) (2)
x Q( x ) (2)
P ( a ) (3)
Q ( b ) (4)
P ( a ) Q ( a ) (1)
P ( b ) Q ( b ) (1)

9 P ( a ) (7)
Cerrada (9,5)

10 Q( a) (7)

11 P(b) (8)
Abierta

12 Q(b) (8)
Cerrada (12, 6)

Contramodelo: U = { a, b}, I ( P) = {b}, I ( Q) = { a}.

Bibliografa
1. BenAri, M. Mathematical Logic for Computer Science (2nd ed.) (Springer, 2001)
Cap. 2: Propositional calculus: formulas, models, tableaux
2. Fitting, M. First-Order Logic and Automated Theorem Proving (2nd ed.) (Springer,
1995)
Cap. 3: Semantic tableaux and resolution
3. Hortal, M.T.; Leach, J. y Rogrguez, M. Matemtica discreta y lgica matemtica (Ed.
Complutense, 1998)
Cap. 7.9: Tableaux semnticos para la lgica de proposiciones
4. Nerode, A. y Shore, R.A. Logic for Applications (Springer, 1997)
Cap. 1.4: Tableau proofs in propositional calculus
5. E. Paniagua, J.L. Snchez y F. Martn Lgica computacional (Thomson, 2003)
Cap. 4.3: Mtodos de las tablas semnticas
* Un ejemplo de no consecuencia con ms de un contramodelo.

104

Tema 8. Tableros semnticos

Tema 9
Formas normales de Skolem y clusulas
Contenido
9.1. Formas normales . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 97
9.1.1. Forma rectificada . . . . . . . . . . . . . . . . . . . . . . . . . . . . 97
9.1.2. Forma normal prenexa . . . . . . . . . . . . . . . . . . . . . . . . . 97
9.1.3. Forma normal prenexa conjuntiva . . . . . . . . . . . . . . . . . . 99
9.1.4. Forma de Skolem . . . . . . . . . . . . . . . . . . . . . . . . . . . . 100
9.2. Clusulas de primer orden . . . . . . . . . . . . . . . . . . . . . . . . . . 102
9.2.1. Sintaxis de la lgica clausal de primer orden . . . . . . . . . . . . 102
9.2.2. Semntica de la lgica clausal de primer orden . . . . . . . . . . . 102
9.2.3. Forma clausal de una frmula . . . . . . . . . . . . . . . . . . . . 103
9.2.4. Forma clausal de un conjunto de frmulas . . . . . . . . . . . . . 104
9.2.5. Reducin de consecuencia e inconsistencia de clusulas . . . . . . 105

9.1.

Formas normales

9.1.1.

Forma rectificada

Def.: F est en forma rectificada si ninguna variable aparece libre y ligada y cada
cuantificador se refiere a una variable diferente.
Ejemplos: x P( x ) y Q(z, y)
x P( x ) y Q( x, y)
x P( x ) x Q(z, x )

est en forma rectificada


no est en forma rectificada
no est en forma rectificada

Prop.: Para toda frmula F existe una frmula equivalente G en forma rectificada.
105

106

Tema 9. Formas normales de Skolem y clusulas

Lema del renombramiento: Si y no aparece libre en F, entonces


x F y F [ x/y]

x F y F [ x/y].
Ejemplos de rectificacin:
x P( x ) x Q(z, x ) x P( x ) u Q(z, u)
x P( x ) y Q( x, y) z P(z) y Q( x, y)

9.1.2.

Forma normal prenexa

Frmula en forma normal prenexa


Def.: La frmula F est en forma normal prenexa (FNP) si es de la forma

( Q1 x1 ) . . . ( Q n x n ) G
donde Qi {, }, n 0 y G no tiene cuantificadores. ( Q1 x1 ) . . . ( Qn xn ) se llama
el prefijo de F y G se llama la matriz de F.
Ejemplos:
Frmula
x [ P( x ) x P( x )]

x y [ P( x ) P(y)]
x P( x ) y Q(y)
x y [ P( x ) Q(y)]
y x [ P( x ) Q(y)]
( x [ P( x ) Q( x )] x [ P( x ) R( x )])
z x y [(( P( x ) Q( x )) ( Q(y) R(y))) P(z)]

FNP?
no
s
no
s
s
no
s

Algoritmo de clculo de forma normal prenexa


Aplicando a una frmula los siguientes pasos se obtiene otra frmula equivalente
y que est en forma normal prenexa rectificada:
1. Rectificar la frmula usando las equivalencias
x F y F [ x/y]
x F y F [ x/y]
donde y es una variable que no ocurre libre en F.
2. Eliminar los bicondicionales usando la equivalencia
F G ( F G) (G F)

(1)
(2)

(3)

9.1. Formas normales

107

3. Eliminar los condicionales usando la equivalencia


F G F G

(4)

4. Interiorizar las negaciones usando las equivalencias


( F G ) F G
( F G ) F G
F F
x F x F
x F x F

(5)
(6)
(7)
(8)
(9)

5. Exteriorizar los cuantificadores usando las equivalencias


x F G x ( F G)
con x no libre en G.
x F G x ( F G)
con x no libre en G.
x F G x ( F G)
con x no libre en G.
x F G x ( F G)
con x no libre en G.
G x F x (G F)
con x no libre en G.
G x F x (G F)
con x no libre en G.
G x F x (G F)
con x no libre en G.
G x F x (G F)
con x no libre en G.
Ejemplos de clculo de forma normal prenexa
Ejemplo 1:

x [ P( x ) x P( x )]
x [ P( x ) y P(y)]
x [ P( x ) y P(y)]
x [( P( x ) y P(y))]
x [ P( x ) y P(y)]
x [ P( x ) y P(y)]
x y [ P( x ) P(y)]

[por (1)]
[por (4)]
[por (9)]
[por (6)]
[por (7 y 8)]
[por (17)]

Ejemplo 2:

x P( x ) y Q(y)
x [ P( x ) y Q(y)] [por (12)]
x y [ P( x ) Q(y)] [por (18)]

Ejemplo 3:

x P( x ) y Q(y)
y [ x P( x ) Q(y)] [por (18)]
y x [ P( x ) Q(y)] [por (12)]

Ejemplo de clculo de una forma normal prenexa de

(11)
(12)
(13)
(14)
(15)
(16)
(17)
(18)

108

Tema 9. Formas normales de Skolem y clusulas

( x [ P( x ) Q( x )] x [ Q( x ) R( x )] x [ P( x ) R( x )])
( x [ P( x ) Q( x )] y [ Q(y) R(y)] z [ P(z) R(z)])
(( x [ P( x ) Q( x )] y [ Q(y) R(y)]) z [ P(z) R(z)])
( x [ P( x ) Q( x )] y [ Q(y) R(y)]) z [ P(z) R(z)]
( x [ P( x ) Q( x )] y [ Q(y) R(y)]) z [( P(z) R(z))]
( x [ P( x ) Q( x )] y [ Q(y) R(y)]) z [ P(z) R(z)]
( x [ P( x ) Q( x )] y [ Q(y) R(y)]) z [ P(z) R(z)]
z [( x [ P( x ) Q( x )] y [ Q(y) R(y)]) ( P(z) R(z))]
z [ x [( P( x ) Q( x )) y [ Q(y) R(y)]] ( P(z) R(z))]
z x [(( P( x ) Q( x )) y [ Q(y) R(y)]) ( P(z) R(z))]
z x [y [( P( x ) Q( x )) ( Q(y) R(y))] ( P(z) R(z))]
z x y [(( P( x ) Q( x )) ( Q(y) R(y))) ( P(z) R(z))]

9.1.3.

[por (1)]
[por (4)]
[por (6)]
[por (7, 8)]
[por (6)]
[por (7)]
[por (17)]
[por (11)]
[por (11)]
[por (15)]
[por (11)]

Forma normal prenexa conjuntiva

Frmula en forma normal prenexa conjuntiva


Def.: La frmula F est en forma normal prenexa conjuntiva (FNPC) si es de la
forma ( Q1 x1 ) . . . ( Qn xn ) G, donde Qi {, }, n 0, G no tiene cuantificadores y
G est en forma normal conjuntiva.
Algoritmo de clculo de forma normal prenexa conjuntiva:
Algoritmo: Aplicando a una frmula los siguientes pasos se obtiene otra frmula equivalente y que est en forma normal prenexa conjuntiva rectificada:
1. Calcular una forma normal prenexa rectificada usando las equivalencias
(1)(18)
2. Interiorizar las disyunciones usando las equivalencias
A ( B C ) ( A B) ( A C )
(19)
( A B) C ( A C ) ( B C )
(20)
Ejemplo de clculo de una FNPC de x y [ P( x ) ( Q(y) R(y))]:
x y [ P( x ) ( Q(y) R(y))]
x y [( P( x ) Q(y)) ( P( x ) R(y))] [por (19)]

9.1.4.

Forma de Skolem

Frmula en forma de Skolem


Forma de Skolem:
Def.: La frmula F est en forma de Skolem (FS) si es de la forma
x1 . . . xn G, donde n 0 y G no tiene cuantificadores.

9.1. Formas normales

109

Ejemplos: x y P( x, y)
x P( x, f ( x ))
x Q( x )
Q( a)

no est en forma de Skolem


s est en forma de Skolem
no est en forma de Skolem
s est en forma de Skolem

Equisatisfacibilidad:
Def.: Las frmulas F y G son equisatisfacibles si:
F es satisfacible syss G es satisfacible.
Se representa por F sat G
Ejemplos: x
x
x
x

Q( x )
Q( x )
y P( x, y)
y P( x, y)

sat
6
sat
6

Q( a)
Q( a)
x P( x, f ( x ))
x P( x, f ( x ))

Algoritmo de clculo de forma de Skolem


Propiedades:
Si a es una constante que no ocurre en F, entonces x F sat F [ x/a].
Si g es un smbolo de funcin naria que no ocurre en F, entonces
x1 . . . xn x F sat x1 . . . xn F [ x/g( x1 , . . . , xn )].
Algoritmo de clculo de forma de Skolem:
Sea F una frmula en forma normal prenexa rectificada, la forma de Skolem
de F es
Sko( G [ x/a]),
si F es x G y

a es una nueva constante;

Sko( F ) = Sko( x1 . . . xn G [ x/ f ( x1 , . . . , xn )]), si F es x1 . . . xn x G y

f es un nuevo smbolo de funcin;

F,
si F est en forma de Skolem
Propiedad: Si F es una frmula en forma normal prenexa rectificada, entonces
Sko( F ) est en forma de Skolem y Sko( F ) sat F.
Ejemplos de clculo de forma de Skolem
Ejemplo 1:

110

Tema 9. Formas normales de Skolem y clusulas

Sko( x y z u v w P( x, y, z, u, v, w))

= Sko(y z u v w P( a, y, z, u, v, w))
= Sko(y z v w P( a, y, z, f (y, z), v, w))
= Sko(y z v P( a, y, z, f (y, z), v, g(y, z, v)))
= y z v P( a, y, z, f (y, z), v, g(y, z, v))
Ejemplo 2:
Sko( x y z w [ P( a, w) Q( f ( x ), y)])

= Sko( x z w [ P( a, w) Q( f ( x ), h( x ))])
= Sko( x z [ P( a, g( x, z)) Q( f ( x ), h( x ))])
= x z [ P( a, g( x, z)) Q( f ( x ), h( x ))]
Ejemplo de clculo de una forma de Skolem de
x [ P( x ) x P( x )]

x y [ P( x ) P(y)] [por pgina 99]


sat x [ P( x ) P( f ( x ))]
Ejemplo de clculo de una forma de Skolem de
x P( x ) y Q(y)

x y [ P( x ) Q(y)] [por pgina 99]


sat x [ P( x ) Q( f ( x ))]
Ejemplo de clculo de otra forma de Skolem de
x P( x ) y Q(y)

y x [ P( x ) Q(y)] [por pgina 99]


sat x [ P( x ) Q( a)]
Ejemplo de clculo de una forma de Skolem de
( x [ P( x ) Q( x )] x [ Q( x ) R( x )] x [ P( x ) R( x )])

z x y [(( P( x ) Q( x )) ( Q(y) R(y))) ( P(z) R(z))] [p. 99]


sat x y [(( P( x ) Q( x )) ( Q(y) R(y))) ( P( a) R( a))]

9.2.

Clusulas de primer orden

9.2.1.

Sintaxis de la lgica clausal de primer orden

Un tomo es una frmula atmica.


Variables sobre tomos: A, B, C, . . . , A1 , A2 , . . . .

9.2. Clusulas de primer orden

111

Un literal es un tomo (A) o la negacin de un tomo ( A).


Variables sobre literales: L, L1 , L2 , . . . .
Una clusula es un conjunto finito de literales.
Variables sobre clusulas: C, C1 , C2 , . . . .
La clusula vaca es el conjunto vaco de literales.
La clusula vaca se representa por .
Conjuntos finitos de clusulas.
Variables sobre conjuntos finitos de clusulas: S, S1 , S2 , . . . .

9.2.2.

Semntica de la lgica clausal de primer orden

Frmulas correspondientes:
Def.: La frmula correspondiente a la clusula { L1 , . . . , Ln } es
x1 . . . x p [ L1 L n ],
donde x1 , . . . , x p son las variables libres de L1 Ln .
Def.: La frmula correspondiente a la clusula  es .
Def.: La frmula correspondiente al conjunto de clusulas
{{ L11 , . . . , L1n1 }, . . . , { L1m , . . . , Lm
nm }},
cuyas variables libres son x1 , . . . , x p , es
x1 . . . x p [( L11 L1n1 ) ( L1m Lm
nm )].
Def.: La frmula correspondiente al conjunto de clusulas es >.
Semntica:
Def.: En cualquier interpretacin I = (U, I ), I (>) = 1 e I () = 0.
Def.: Los conceptos semnticos relativos a las clusulas y a los conjuntos de
clusulas son los de sus correspondientes frmulas.

9.2.3.

Forma clausal de una frmula

Def.: Una forma clausal de una frmula F es un conjunto de clusulas S tal que
F sat S.
Algoritmo: Aplicando a la frmula F los siguientes pasos se obtiene S que es una
forma clausal de F:
1. Sea F1 = y1 . . . yn F, donde y1 , . . . , yn son las variables libres de F.

112

Tema 9. Formas normales de Skolem y clusulas

2. Sea F2 una forma normal prenexa conjuntiva rectificada de F1 calculada mediante el algoritmo de la pgina 99.
3. Sea F3 = Sko( F2 ), que tiene la forma
x1 . . . x p [( L11 L1n1 ) ( L1m Lm
nm )],
4. Sea S = {{ L11 , . . . , L1n1 }, . . . , { L1m , . . . , Lm
nm }}.
Prop.: F sat F1 F2 sat F3 S.
Ejemplos de clculo de forma clausal de una frmula
Ejemplo de clculo de una forma clausal de
x [ P( x ) x P( x )]
sat x [ P( x ) P( f ( x ))] [pg. 101]

{{ P( x )}, { P( f ( x ))}}
Ejemplo de clculo de una forma clausal de
x P( x ) y Q(y)
sat x [ P( x ) Q( f ( x ))] [pg. 101]

{{ P( x ), Q( f ( x ))}}
Ejemplo de clculo de otra forma clausal de
x P( x ) y Q(y)
sat x [ P( x ) Q( a)]
[pg. 101]

{{ P( x ), Q( a)}}
Ejemplo de clculo de una forma clausal de
( x [ P( x ) Q( x )] x [ Q( x ) R( x )] x [ P( x ) R( x )])
sat x y [(( P( x ) Q( x )) ( Q(y) R(y))) ( P( a) R( a))]
[p 101]

{{ P( x ), Q( x )}, { Q(y), R(y)}, { P( a)}, { R( a)}}

9.2. Clusulas de primer orden

sat

9.2.4.

( x [ P( x ) Q( x )] x P( x ) x Q( x ))
( x [ P( x ) Q( x )] y P(y) z Q(z))
(( x [ P( x ) Q( x )] y P(y)) z Q(z))
(( x [ P( x ) Q( x )] y P(y)) z Q(z))
( x [ P( x ) Q( x )] y P(y)) z Q(z)
( x [ P( x ) Q( x )] y P(y)) z Q(z)
( x [ P( x ) Q( x )] y P(y)) z Q(z)
y [ x [ P( x ) Q( x )] P(y)] z Q(z)
y [( x [ P( x ) Q( x )] P(y)) z Q(z)]
y [ x [( P( x ) Q( x )) P(y))] z Q(z)
y x [(( P( x ) Q( x )) P(y)) z Q(z)]
y x z [( P( x ) Q( x )) P(y) Q(z)]
x z [( P( x ) Q( x ) P( a)) Q(z)]
{{ P( x ), Q( x )}, { P( a)}, { Q(z)}}

113

[(2)]
[(4)]
[(4)]
[(6)]
[(7)]
[(9)]
[(17)]
[(13)]
[(11)]
[(11)]
[(15)]
[(15)]

Forma clausal de un conjunto de frmulas

Equisatisfacibilidad de conjuntos de frmulas:


Def.: Los conjuntos de frmulas S1 y S2 son equisatisfacibles si:
S1 es satisfacible syss S2 es satisfacible.
Se representa por S1 sat S2 .
Forma clausal de un conjunto de frmulas:
Def.: Una forma clausal de un conjunto de frmulas S es un conjunto de clusulas equisatisfacible con S.
Prop.: Si S1 , . . . , Sn son formas clausales de F1 , . . . , Fn , entonces S1 Sn
es una forma clausal de { F1 , . . . , Fn }.
Ejemplo: Una forma clausal de
{ x [ P( x ) Q( x )], x P( x ), x Q( x )}
es
{{ P( x ), Q( x )}, { P( a)}, { Q(z)}}.

9.2.5.

Reducin de consecuencia e inconsistencia de clusulas

Prop: Sean S1 , . . . , Sn formas clausales de las frmulas F1 , . . . , Fn y S una forma


clausal de G. Son equivalentes:
1. { F1 , . . . , Fn } |= G.
2. { F1 , . . . , Fn , G } es inconsistente.

114

Tema 9. Formas normales de Skolem y clusulas

3. S1 Sn S es inconsistente.
Ejemplos:
Ejemplo 1:
{ x [ P( x ) Q( x )], x P( x )} |= x Q( x )
syss {{ P( x ), Q( x )}, { P( a)}, { Q(z)}} es inconsistente.
Ejemplo 2:
{ x [ P( x ) Q( x )], x [ Q( x ) R( x )]} |= x [ P( x ) R( x )]
syss {{ P( x ), Q( x )}, { Q(y), R(y)}, { P( a)}, { R( a)}} es inconsistente.

Bibliografa
1. M.L. Bonet Apuntes de LPO. (Univ. Politcnica de Catalua, 2003) pp. 2631.
2. C.L. Chang y R.C.T. Lee Symbolic logic and mechanical theorem proving (Academic
Press, 1973) pp. 3539 y 4651.
3. J.L. Fernndez, A. Manjarrs y F.J. Dez Lgica computacional. (UNED, 2003) pp.
101106.
4. S. Hlldobler Computational logic. (U. de Dresden, 2004) pp. 6267.
5. R. Nieuwenhuis Lgica de primer orden. (U. Politnica de Catalua, 2003) pp. 1617
6. M. Ojeda e I. Prez Lgica para la computacin (Vol. 2: Lgica de Primer Orden) (gora,
1997) pp. 3749
7. L. Paulson Logic and proof (U. Cambridge, 2002) pp. 4347.
8. U. Schning Logic for computer scientists (Birkuser, 1989) pp. 5161.

Tema 10
Modelos de Herbrand
Contenido
10.1. Modelos de Herbrand . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 107
10.1.1. Reduccin de la LPO bsica a proposicional . . . . . . . . . . . . 107
10.1.2. Universo de Herbrand . . . . . . . . . . . . . . . . . . . . . . . . . 108
10.1.3. Base de Herbrand . . . . . . . . . . . . . . . . . . . . . . . . . . . . 110
10.1.4. Interpretaciones de Herbrand . . . . . . . . . . . . . . . . . . . . . 110
10.1.5. Modelos de Herbrand . . . . . . . . . . . . . . . . . . . . . . . . . 110
10.2. Teorema de Herbrand y decisin de la consistencia . . . . . . . . . . . . 111
10.2.1. Interpretacin de Herbrand de una interpretacin . . . . . . . . . 111
10.2.2. Consistencia mediante modelos de Herbrand . . . . . . . . . . . . 112
10.2.3. Extensiones de Herbrand . . . . . . . . . . . . . . . . . . . . . . . 113
10.2.4. Teorema de Herbrand . . . . . . . . . . . . . . . . . . . . . . . . . 114
10.2.5. Semidecisin mediante el teorema de Herbrand . . . . . . . . . . 114

10.1.

Modelos de Herbrand

10.1.1.

Reduccin de la LPO bsica a proposicional

Observacin:
En este tema slo se consideran lenguajes de primer orden sin igualdad.
Reduccin de la LPO bsica a proposicional
Def.: Una frmula bsica es una frmula sin variables ni cuantificadores.
115

116

Tema 10. Modelos de Herbrand

Prop.: Sea S un conjunto de frmulas bsicas. Son equivalentes:


1. S es consistente en el sentido de la lgica de primer orden.
2. S es consistente en el sentido de la lgica proposicional.
Ejemplos de reduccin de la LPO bsica a proposicional

{ P( a) P(b), P(b) P(c), P( a) P(c)}


es consistente en el sentido de la lgica de primer orden.
{ P( a) P(b), P(b) P(c), P( a) P(c), P(c)}
es inconsistente en el sentido de la lgica de primer orden.
PI
P( a) P(b) P(b) P(c) P( a) P(c) P(c)
I1
0
1
1
1
0
1
1
0
I2 { c I }
I
I3 { b }
1
0
1
1
I
I
I4 { b , c }
1
1
1
0
I
I5 { a }
1
1
0
1
I
I
I6 { a , c }
1
1
1
0
1
0
0
1
I7 { a I , b I }
I
I
I
I8 { a , b , c }
1
1
1
0
{ P( a) P(b), P(b) P(c), P( a) P(c)}
es consistente en el sentido proposicional (con modelos I4 , I6 , I8 ).
{ P( a) P(b), P(b) P(c), P( a) P(c), P(c)}
es inconsistente en el sentido proposicional.
Se consideran los cambios P( a)/p, P(b)/q, P(c)/r
p q r p q q r p r r
I1 0 0 0
0
1
1
1
0
1
1
0
I2 0 0 1
I3 0 1 0
1
0
1
1
I4 0 1 1
1
1
1
0
I5 1 0 0
1
1
0
1
1
1
1
0
I6 1 0 1
I7 1 1 0
1
0
0
1
I8 1 1 1
1
1
1
0

10.1.2.
Notacin

Universo de Herbrand

10.1. Modelos de Herbrand

117

L representa un lenguaje de primer orden sin igualdad.

C es el conjunto de constantes de L.
F es el conjunto de smbolos de funcin de L.
R es el conjunto de smbolos de relacin de L.
Fn es el conjunto de smbolos de funcin naria de L.
Rn es el conjunto de smbolos de relacin naria de L.
f /n indica que f es un smbolo de funcin naria de L.
P/n indica que f es un smbolo de relacin naria de L.
Universo de Herbrand
Def.: El universo de Herbrand de L es el conjunto de los trminos bsicos de L. Se
representa por UH( L).
S

Prop.: UH( L) = i0 Hi ( L), donde Hi ( L) es el nivel i del UH( L) definido por



C,
si C 6= ;
H0 ( L)
=
{ a}, en caso contrario. (a es una nueva constante).
Hi+1 ( L) = Hi ( L) { f (t1 , . . . , tn ) : f Fn y t1 , . . . , tn Hi ( L)}
Prop.: UH( L) es finito syss L no tiene smbolos de funcin.
Ejemplos de universo de Herbrand
Si C = { a, b, c} y F = , entonces
H0 ( L) = { a, b, c}
H1 ( L) = { a, b, c}
..
.
UH( L) = { a, b, c}
Si C = y F = { f /1}, entonces
H0 ( L) = { a}
H1 ( L) = { a, f ( a)}
H2 ( L) = { a, f ( a), f ( f ( a))}
..
.
UH( L) = { a, f ( a), f ( f ( a)), . . . } = { f i ( a) : i N}

118

Tema 10. Modelos de Herbrand

Si C = { a, b} y F = { f /1, g/1}, entonces


H0 ( L) = { a, b}
H1 ( L) = { a, b, f ( a), f (b), g( a), g(b)}
H2 ( L) = { a, b, f ( a), f (b), g( a), g(b), f ( f ( a)), f ( f (b)), f ( g( a)), f ( g(b)),
g( f ( a)), g( f (b)), g( g( a)), g( g(b)) }
..
.
Si C = { a, b} y F = { f /2}, entonces
H0 ( L) = { a, b}
H1 ( L) = { a, b, f ( a, a), f ( a, b), f (b, a), f (b, b)}
H2 ( L) = { a, b, f ( a, a), f ( a, b), f (b, a), f (b, b), f ( a, f ( a, a)), f ( a, f ( a, b)), . . . }
..
.

10.1.3.

Base de Herbrand

Def.: La base de Herbrand de L es el conjunto de los tomos bsicos de L. Se


representa por BH( L).
Prop.: BH( L) = { P(t1 , . . . , tn ) : P Rn y t1 , . . . , tn UH( L)}.
Prop.: BH( L) es finita syss L no tiene smbolos de funcin.
Ejemplos:
Si C = { a, b, c}, F = y R = { P/1}, entonces
UH( L) = { a, b, c}
BH( L) = { P( a), P(b), P(c)}
Si C = { a}, F = { f /1} y R = { P/1, Q/1, R/1}, entonces
UH( L) = { a, f ( a), f ( f ( a)), . . . } = { f i ( a) : i N}
BH( L) = { P( a), Q( a), R( a), P( f ( a)), Q( f ( a)), R( f ( a)), . . . }

10.1.4.

Interpretaciones de Herbrand

Def.: Una interpretacin de Herbrand es una interpretacin I = (U, I ) tal que


U es el universo de Herbrand de L;
I (c) = c, para cada constante c de L;
I ( f ) = f , para cada smbolo de funcin f de L.
Prop.: Sea I una interpretacin de Herbrand de L. Si t es un trmino bsico de L,
entonces I(t) = t.

10.2. Teorema de Herbrand y decisin de la consistencia

119

Prop.: Una interpretacin de Herbrand queda determinada por un subconjunto de


la base de Herbrand, el conjunto de tomos bsicos verdaderos en esa interpretacin.

10.1.5.

Modelos de Herbrand

Nota: Las definiciones de universo de Herbrand, base de Herbrand e interpretacin de Herbrand definidas para un lenguaje se extienden a frmulas y conjuntos
de frmulas considerando el lenguaje formado por los smbolos no lgicos que
aparecen.
Def.: Un modelo de Herbrand de una frmula F es una interpretacin de Herbrand
de F que es modelo de F.
Def.: Un modelo de Herbrand de un conjunto de frmulas S es una interpretacin
de Herbrand de S que es modelo de S.
Ejemplo: Los modelos de Herbrand de { P( a) P(b), P(b) P(c), P( a) P(c)}
son { P(b), P(c)}, { P( a), P(c)} y { P( a), P(b), P(c)} (ver pgina 107).
Ejemplo: Sea S = { x y [ Q(b, x ) P( a) R(y)], P(b) z u Q(z, u)}.
Entonces, UH(S) = { a, b}
BH(S) = { P( a), P(b), Q( a, a), Q( a, b), Q(b.a), Q(b, b), R( a), R(b)}
Un modelo de Herbrand de S es { P( a)}.

10.2.

Teorema de Herbrand y decisin de la consistencia

10.2.1.

Interpretacin de Herbrand de una interpretacin

Ejemplo 1:
Sea S = {{ Q(b, x ), P( a), R(y)}, { P(b), Q(z, u)}} e I = ({1, 2}, I ) con a I = 1,
b I = 2, P I = {1}, Q I = {(1, 1), (2, 2)}, R I = {2}. Entonces, I |= S.
Clculo de la interpretacin de Herbrand I correspondiente a I :

120

Tema 10. Modelos de Herbrand

I
= (UH(S), I )
UH(S)
= { a, b}
BH(S)
= { P( a), P(b), Q( a, a), Q( a, b), Q(b.a), Q(b, b), R( a), R(b)}

I ( P( a))
= P I ( a I ) = P I (1) = V
I ( P(b))
= P I ( b I ) = P I (2) = F
I ( Q( a, a)) = Q I ( a I , a I ) = Q I (1, 1) = V
I ( Q( a, b)) = Q I ( a I , b I ) = Q I (1, 2) = F
I ( Q(b, a)) = Q I (b I , a I ) = Q I (2, 1) = F
I ( Q(b, b)) = Q I (b I , b I ) = Q I (2, 2) = V
I ( R( a))) = R I ( a I ) = R I (1) = F
I ( R(b))
= R I ( b I ) = R I (2) = V

I = { P( a), Q( a, a), Q(b, b), R(b)} y I |= S.


Ejemplo 2:
Sea S el conjunto de clusulas {{ P( a)}, { Q(y, f ( a))}} e I = ({1, 2}, I ) con a I = 1,
f I = {(1, 2), (2, 1)}, P I = {1}, Q I = {(1, 2), (2, 2)}. Entonces, I |= S.
Clculo de la interpretacin de Herbrand I correspondiente a I :
I
= (UH(S), I )
UH(S)
= { a, f ( a), f ( f ( a)), . . . } = { f i ( a) : i N}
BH(S)
= { P( f n ( a)) : n N} { Q( f n ( a), f m ( a)) : n, m N}
I ( P( a))
= P I ( a I ) = P I (1) = V

I ( P( f ( a)))
= P I ( f I ( a I )) = P I ( f I (1)) = P I (2) = F
I ( P( f ( f ( a))))
=
P I ( f I ( f ( a I ))) = P I (1) = V
V, si n es par;
I ( P( f n ( a)))
=
 F, en caso contrario.
V, si m es impar;
I ( Q( f n ( a), f m ( a))) =
F, en caso contrario.

2n
n
I = { P( f ( a)) : n N} { Q( f ( a), f 2m+1 ( a)) : n, m N} I |= S.

10.2.2.

Consistencia mediante modelos de Herbrand

Prop.: Sea S un conjunto de frmulas bsicas. Son equivalentes:


1. S es consistente.
2. S tiene un modelo de Herbrand.
Prop.: Sea S un conjunto de clusulas. Si I es una interpretacin de Herbrand
correspondiente a un modelo I de S, entonces I es un modelo de S.
Prop.: Sea S un conjunto de clusulas. Son equivalentes:
1. S es consistente.
2. S tiene un modelo de Herbrand.

10.2. Teorema de Herbrand y decisin de la consistencia

121

Prop.: Sea S un conjunto de clusulas. Son equivalentes:


1. S es inconsistente.
2. S no tiene ningn modelo de Herbrand.
Prop.: Existen conjuntos de frmulas consistentes sin modelos de Herbrand.
Ejemplo de conjunto consistente sin modelos de Herbrand
Sea S = { x P( x ), P( a)}. Entonces,
S es consistente.
I |= S con I = ({1, 2}, I ), a I = 1 y P I = {2}.
S no tiene modelos de Herbrand
UH(S) = { a}
BH(S) = { P( a)}
Las interpretaciones de Herbrand de S son y { P( a)}.
6|= S
{ P( a)} 6|= S
Una forma clausal de S es S0 = { P(b), P( a)}.
Un modelo de Herbrand de S0 es I = (U, I ) con U = { a, b} y P I = {b}.

10.2.3.

Extensiones de Herbrand

Instancias bsicas de una clusula


Def.: Una sustitucin (de L) es una aplicacin : Var Trm( L).
Def.: Sea C = { L1 , . . . , Ln } una clusula de L y una sustitucin de L. Entonces,
C = { L1 , . . . , Ln } es una instancia de C.
Ejemplo: Sea C = { P( x, a), P( x, f (y))}.
C [ x/a, y/ f ( a)] = { P( f ( a), a), P( f ( a), f ( f ( a)))}
Def.: C es una instancia bsica de C si todos los literales de C son bsicos.
Ejemplo: Sea C = { P( x, a), P( x, f (y))}.
{ P( f ( a), a), P( f ( a), f ( f ( a)))} es una instancia bsica de C.
{ P( f ( a), a), P( f ( f ( a)), f ( a))} no es una instancia bsica de C.
{ P( x, a), P( f ( f ( a)), f ( a))}
no es una instancia bsica de C.

122

Tema 10. Modelos de Herbrand

Extensiones de Herbrand
Def.: La extensin de Herbrand de un conjunto de clusulas S es el conjunto de
frmulas
EH(S) = {C : C S y,
para toda variable x en C, ( x ) UH(S)}
S

Prop.: EH( L) = i0 EHi ( L), donde EHi ( L) es el nivel i de la EH( L)


EHi (S) = {C : C S y,
para toda variable x en C,( x ) UHi (S)}
Ejemplos:
Sea S = {{ P( x )}, { P( f ( x ))}}. Entonces,
EH0 (S) = {{ P( a)}, { P( f ( a))}}
EH1 (S) = EH0 (S) {{ P( f ( a))}, { P( f ( f ( a)))}}
EH2 (S) = EH1 (S) {{ P( f ( f ( a)))}, { P( f ( f ( f ( a))))}}
Sea S = {{ P( x ), Q( x )}, { P( a)}, { Q(z)}}. Entonces,
EH(S) = {{ P( a), Q( a)}, { P( a)}, { Q( a)}}.
Sea S = {{ P( x ), Q( x )}, { Q(y), R(y)}, { P( a)}, { R( a)}}. Entonces,
EH(S) = {{ P( a), Q( a)}, { Q( a), R( a)}, { P( a)}, { R( a)}}.

10.2.4.

Teorema de Herbrand

Teorema de Herbrand: Sea S un conjunto de clusulas. Son equivalentes:


1. S es consistente.
2. EH(S) es consistente (en el sentido proposicional).
Prop.: Sea S un conjunto de clusulas. Entonces, son equivalentes
1. S es inconsistente.
2. EH(S) tiene un subconjunto finito inconsistente (en el sentido proposicional).
3. Para algn i, EHi (S) es inconsistente (en el sentido proposicional).

10.2.5.

Semidecisin mediante el teorema de Herbrand

Entrada: Un conjunto finito de clusulas, S.


Salida: Inconsistente, si S es inconsistente.
i := 0
bucle
si EHi (S) es inconsistente (en el sentido proposicional) entonces

10.2. Teorema de Herbrand y decisin de la consistencia

Devolver Inconsistente y terminar


en caso contrario
i := i + 1
fsi
fbucle
Ejemplos de decisin mediante el teorema de Herbrand
S = {{ P( x ), Q( x )}, { P( a)}, { Q(z)}} (p. 113) es inconsistente.
EH0 (S) = {{ P( a), Q( a)}, { P( a)}, { Q( a)}} es inconsistente.
1 { P( a), Q( a)}
2 { P( a)}
3 { Q( a)}
4 { Q( a)}
Res 1, 2
5 
Res 3, 4
S = {{ P( x ), Q( x )}, { Q(y), R(y)}, { P( a)}, { R( a)}} es inconsistente.
EH0 (S) = {{ P( a), Q( a)}, { Q( a), R( a)}, { P( a)}, { R( a)}}.
1 { P( a), Q( a)}
2 { Q( a), R( a)}
3 { P( a)}
4 { R( a)}
5 { Q( a)}
Res 1, 3
6 { R( a)}
Res 5, 2
7 
Res 6, 4
S = {{ P( x )}, { P( f ( x ))}} es inconsistente (p. 113).
EH0 (S) = {{ P( a)}, { P( f ( a))}} es consistente
I = { P( a)} |= EH0 (S)
EH1 (S) = EH0 (S) {{ P( f ( a))}, { P( f ( f ( a)))}} es inconsistente.
1 { P( f ( a))}
2 { P( f ( a))}
3 
Res 1, 2
S = {{ P( x ), Q( f ( x ), x )}, { P( g(b))}, { Q(y, z)}} es inconsistente. Dem.:
S0 = {{ P( g(b)), Q( f ( g(b)), g(b))}, { P( g(b))}, { Q( f ( g(b)), g(b))}}
EH(S)
es inconsistente.
1 { P( g(b)), Q( f ( g(b)), g(b))}
2 { P( g(b))}
3 { Q( f ( g(b)), g(b))}
4 { Q( f ( g(b)), g(b))}
Res 1, 2
5 
Res 3, 3

123

124

Tema 10. Modelos de Herbrand

Bibliografa
1. M.L. Bonet Apuntes de LPO. (Univ. Politcnica de Catalua, 2003) pp. 3134.
2. C.L. Chang y R.C.T. Lee Symbolic logic and mechanical theorem proving (Academic
Press, 1973) pp. 5162.
3. M. Ojeda e I. Prez Lgica para la computacin (Vol. 2: Lgica de Primer Orden) (gora,
1997) pp. 5974.
4. E. Paniagua, J.L. Snchez y F. Martn Lgica computacional (Thomson, 2003) pp.
160169.
5. L. Paulson Logic and proof (U. Cambridge, 2002) pp. 4750.
6. U. Schning Logic for computer scientists (Birkuser, 1989) pp. 7078.

Tema 11
Resolucin en lgica de primer orden
Contenido
11.1. Introduccin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 117
11.1.1. Ejemplos de consecuencia mediante resolucin . . . . . . . . . . . 117
11.2. Unificacin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 118
11.2.1. Unificadores . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 118
11.2.2. Composicin de sustituciones . . . . . . . . . . . . . . . . . . . . . 118
11.2.3. Comparacin de sustituciones . . . . . . . . . . . . . . . . . . . . 119
11.2.4. Unificador de mxima generalidad . . . . . . . . . . . . . . . . . . 119
11.2.5. Algoritmo de unificacin . . . . . . . . . . . . . . . . . . . . . . . 120
11.3. Resolucin de primer orden . . . . . . . . . . . . . . . . . . . . . . . . . 122
11.3.1. Separacin de variables . . . . . . . . . . . . . . . . . . . . . . . . 122
11.3.2. Resolvente binaria . . . . . . . . . . . . . . . . . . . . . . . . . . . 123
11.3.3. Factorizacin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 123
11.3.4. Demostraciones por resolucin . . . . . . . . . . . . . . . . . . . . 124
11.3.5. Adecuacin y completitud de la resolucin . . . . . . . . . . . . . 126
11.3.6. Decisin de noconsecuencia por resolucin . . . . . . . . . . . . 127

11.1.

Introduccin

11.1.1.

Ejemplos de consecuencia mediante resolucin

Ejemplo 1:
{ x [ P( x ) Q( x )], x P( x )} |= x Q( x )
125

126

Tema 11. Resolucin en lgica de primer orden

se reduce a
{{ P( x ), Q( x )}, { P( a)}, { Q(z)}} es inconsistente.
Demostracin:
1 { P( x ), Q( x )}
2 { P( a)}
3 { Q(z)}
4 { Q( a)}
5 

Hiptesis
Hiptesis
Hiptesis
Resolvente de 1 y 2 con = [ x/a]
Resolvente de 3 y 4 con = [z/a]

Ejemplo 2:
{ x [ P( x ) Q( x )], x [ Q( x ) R( x )]} |= x [ P( x ) R( x )]
se reduce a
{{ P( x ), Q( x )}, { Q(y), R(y)}, { P( a)}, { R( a)}}
es inconsistente.
Demostracin:
1 { P( x ), Q( x )}
2 { Q(y), R(y)}
3 { P( a)}
4 { R( a)}
5 { Q( a)}
6 { R( a)}
5 

11.2.

Unificacin

11.2.1.

Unificadores

Hiptesis
Hiptesis
Hiptesis
Hiptesis
Resolvente de 1 y 3 con = [ x/a]
Resolvente de 2 y 5 con = [y/a]
Resolvente de 4 y 6 con = e

Def.: La sustitucin es un unificador de los trminos t1 y t2 si t1 = t2 .


Def.: Los trminos t1 y t2 son unificables si tienen algn unificador.
Def.: t es una instancia comn de t1 y t2 si existe una sustitucin tal que t =
t1 = t2 .

11.2. Unificacin

Ejemplos:

127

t1
t2
f ( x, g(z)) f ( g(y), x )
f ( x, g(z)) f ( g(y), x )
f ( x, g(z)) f ( g(y), x )
f ( x, y)
f (y, x )
f ( x, y)
f (y, x )
f ( x, y)
g( a, b)
f ( x, x )
f ( a, b)
f (x)
f ( g( x ))

Unificador
[ x/g(z), y/z]
[ x/g(y), z/y]
[ x/g( a), y/a]
[ x/a, y/a]
[y/x ]
No tiene
No tiene
No tiene

Instancia comn
f ( g(z), g(z))
f ( g(y), g(y))
f ( g( a), g( a))
f ( a, a)
f ( x, x )
No tiene
No tiene
No tiene

Nota: Las anteriores definiciones se extienden a conjuntos de trminos y de literales.

11.2.2.

Composicin de sustituciones

Composicin de sustituciones:
Def.: La composicin de las sustituciones 1 y 2 es la sustitucin 1 2 definida por x (1 2 ) = ( x1 )2 , para toda variable x.
Ejemplo: Si 1 = [ x/ f (z, a), y/w] y 2 = [ x/b, z/g(w)], entonces

x1 2 = ( x1 )2 = f (z, a)2 = f (z2 , a2 ) = f ( g(w), a)


y1 2 = (y1 )2 = w2 = w
z1 2 = (z1 )2 = z2 = g(w)
w1 2 = (w1 )2 = w2 = w

Por tanto, 1 2 = [ x/ f ( g(w), a), y/w, z/g(w)].


Def.: La substitucin identidad es la sustitucin e tal que, para todo x, xe = x.
Propiedades:
1. Asociativa: 1 (2 3 ) = (1 2 )3
2. Neutro: e = e = .

11.2.3.

Comparacin de sustituciones

Def.: La sustitucin 1 es ms general que la 2 si existe una sustitucin 3 tal que


2 = 1 3 . Se representa por 2 1 .
Def.: Las sustituciones 1 y 2 son equivalentes si 1 2 y 2 1 . Se representa
por 1 2 .

128

Tema 11. Resolucin en lgica de primer orden

Ejemplos: Sean 1 = [ x/g(z), y/z], 2 = [ x/g(y), z/y] y 3 = [ x/g( a), y/a]. Entonces,
1. 1 = 2 [y/z]
2. 2 = 1 [z/y]
3. 3 = 1 [z/a]
4. 1 2
5. 3 1
Ejemplo: [ x/a, y/a] [y/x ], ya que [ x/a, y/a] = [y/x ][ x/a, y/a].

11.2.4.

Unificador de mxima generalidad

Def.: La sustitucin es un unificador de mxima generalidad (UMG) de los trminos t1 y t2 si


es un unificador de t1 y t2 .
es ms general que cualquier unificador de t1 y t2 .
Ejemplos:
1. [ x/g(z), y/z] es un UMG de f ( x, g(z)) y f ( g(y), x ).
2. [ x/g(y), z/y] es un UMG de f ( x, g(z)) y f ( g(y), x ).
3. [ x/g( a), y/a] no es un UMG de f ( x, g(z)) y f ( g(y), x ).
Nota: Las anterior definicin se extienden a conjuntos de trminos y de literales.

11.2.5.

Algoritmo de unificacin

Unificacin de listas de trminos


Notacin de lista:
( a1 , . . . , an ) representa una lista cuyos elementos son a1 , . . . , an .
( a| R) representa una lista cuyo primer elemento es a y resto es R.
() representa la lista vaca.
Unificadores de listas de trminos:
Def.: es un unificador de (s1 . . . , sn ) y (t1 . . . , tn ) si s1 = t1 , . . . , sn = tn .
Def.: (s1 . . . , sn ) y (t1 . . . , tn ) son unificables si tienen algn unificador.

11.2. Unificacin

129

Def.: es un unificador de mxima generalidad (UMG) de (s1 . . . , sn ) y (t1 . . . , tn )


si es un unificador de (s1 . . . , sn ) y (t1 . . . , tn ) ms general que cualquier
otro.
Aplicacin de una sustitucin a una lista de ecuaciones:
(s1 = t1 , . . . , sn = tn ) = (s1 = t1 , . . . , sn = tn ).
Algoritmo de unificacin de listas de trminos
Entrada: Lista de ecuaciones L = (s1 = t1 , . . . , sn = tn ) y sustitucin .
Salida: Un UMG de las listas (s1 . . . , sn ) y (t1 . . . , tn ), si son unificables;
No unificables, en caso contrario.
Procedimiento unif ( L, ):
1. Si L = (), entonces unif ( L, ) = .
2. Si L = (t = t| L0 ), entonces unif ( L, ) = unif ( L0 , ).
3. Si L = ( f (t1 , . . . , tm ) = f (t10 . . . , t0m )| L0 ), entonces
unif ( L, ) = unif ((t1 = t10 , . . . , tm = t0m | L0 ), ).
4. Si L = ( x = t| L0 ) ( L = (t = x | L0 )) y x no aparece en t, entonces
unif ( L, ) = unif ( L0 [ x/t], [ x/t]).
5. Si L = ( x = t| L0 ) ( L = (t = x | L0 )) y x aparece en t, entonces
unif ( L, ) = No unificables.
6. Si L = ( f (t1 , . . . , tm ) = g(t10 . . . , t0m )| L0 ), entonces
unif ( L, ) = No unificables.
7. Si L = ( f (t1 , . . . , tm ) = f (t10 . . . , t0p )| L0 ) y m 6= p, entonces
unif ( L, ) = No unificables.
Algoritmo de unificacin de dos trminos
Entrada: Dos trminos t1 y t2 .
Salida: Un UMG de t1 y t2 , si son unificables;
No unificables, en caso contrario.
Procedimiento: unif ((t1 = t2 ), e).

130

Tema 11. Resolucin en lgica de primer orden

Ejemplo 1: Unificar f ( x, g(z)) y f ( g(y), x ):


unif (( f ( x, g(z)) = f ( g(y), x )), e)
= unif (( x = g(y), g(z) = x ), e)
= unif (( g(z) = x )[ x/g(y)], e[ x/g(y)])
= unif (( g(z) = g(y)), [ x/g(y)])
= unif ((z = y), [ x/g(y)])
= unif ((), [ x/g(y)][z/y])
= unif ((), [ x/g(y), z/y])
= [ x/g(y), z/y]
Ejemplo 2: Unificar f ( x, b) y f ( a, y):
unif (( f ( x, b) = f ( a, y), e)
= unif (( x = a, b = y), e)
= unif ((b = y)[ x/a], e[ x/a])
= unif ((b = y), [ x/a])
= unif ((), [ x/a][y/b])
= [ x/a, y/b])
Ejemplo 3: Unificar f ( x, x ) y f ( a, b):
unif (( f ( x, x ) = f ( a, b)), e)
= unif (( x = a, x = b), e)
= unif (( x = b)[ x/a], e[ x/a])
= unif (( a = b), [ x/a])
= No unificable
Ejemplo 4: Unificar f ( x, g(y)) y f (y, x ):
unif (( f ( x, g(y)) = f (y, x )), e)
= unif (( x = y, g(y) = x ), e)
= unif (( g(y) = x )[ x/y], e[ x/y])
= unif (( g(y) = y), [ x/y])
= No unificable

por 3
por 4
por 3
por 4
por 1

por 3
por 4
por 4
por 1

por 3
por 4
por 6

por 3
por 4
por 5

Ejemplo 5: Unificar j(w, a, h(w)) y j( f ( x, y), x, z)


unif (( j(w, a, h(w)) = j( f ( x, y), x, z))e)
= unif ((w = f ( x, y), a = x, h(w) = z), e)
= unif (( a = x, h(w) = z)[w/ f ( x, y)], e[w/ f ( x, y)])
= unif (( a = x, h( f ( x, y)) = z), [w/ f ( x, y)])
= unif ((h( f ( x, y)) = z)[ x/a], [w/ f ( x, y)][ x/a])
= unif ((h( f ( a, y)) = z), [w/ f ( a, y), x/a])
= unif ((), [w/ f ( a, y), x/a][z/h( f ( a, y))])
= [w/ f ( a, y), x/a, z/h( f ( a, y))]

por 3
por 4
por 4
por 4
por 1

11.3. Resolucin de primer orden

Ejemplo 6: Unificar j(w, a, h(w)) y j( f ( x, y), x, y)


unif (( j(w, a, h(w)) = j( f ( x, y), x, y))e)
= unif ((w = f ( x, y), a = x, h(w) = y), e)
= unif (( a = x, h(w) = y)[w/ f ( x, y)], e[w/ f ( x, y)])
= unif (( a = x, h( f ( x, y)) = y), [w/ f ( x, y)])
= unif ((h( f ( x, y)) = y)[ x/a], [w/ f ( x, y)][ x/a])
= unif ((h( f ( a, y)) = y), [w/ f ( a, y), x/a])
= No unificable

131

por 3
por 4
por 4
por 5

Ejemplo 7: Unificar f ( a, y) y f ( a, b):


unif (( f ( a, y) = f ( a, b), e))
= unif (( a = a, y = b), e)
por 3
= unif ((y = b), e)
por 2
= unif ((), [y/b])
por 4
= [y/b]
por 1

11.3.

Resolucin de primer orden

11.3.1.

Separacin de variables

Def.: La sustitucin [ x1 /t1 , . . . , xn /tn ] es un renombramiento si todos los ti son


variables.
Prop.: Si es un renombramiento, entonces C C.
Def.: Las clusulas C1 y C2 estn separadas si no tienen ninguna variable comn.
Def.: Una separacin de las variables de C1 y C2 es un par de renombramientos
(1 , 2 ) tales que C1 1 y C2 2 estn separadas.
Ejemplo: Una separacin de variables de
C1 = { P( x ), Q( x, y)} y C2 = { R( f ( x, y))}
es
(1 = [ x/x1 , y/y1 ], 2 = [ x/x2 , y/y2 ]).

11.3.2.

Resolvente binaria

Def.: La clusula C es una resolvente binaria de las clusulas C1 y C2 si existen una


separacin de variables (1 , 2 ) de C1 y C2 , un literal L1 C1 , un literal L2 C2 y
un UMG de L1 1 y L2c 2 tales que
C = (C1 1 r { L1 1 1 }) (C2 2 r { L2 2 }).

132

Tema 11. Resolucin en lgica de primer orden

Ejemplo: Sean
C1
= { P( x ), Q( f ( x ))}, C2
= { Q( x ), R( g( x ))},
L1
= Q( f ( x )),
L2
= Q ( x ),
1
= [ x/x1 ],
2
= [ x/x2 ],
c
L1 1 = Q( f ( x1 )),
L2 2 = Q ( x2 ),

= [ x2 / f ( x1 )]
Entonces, C = { P( x1 ), R( g( f ( x1 )))} es una resolvente binaria de C1 y C2 .

11.3.3.

Factorizacin

Def.: La clusula C es un factor de la clusula D si existen dos literales L1 y L2 en


D que son unificables y C = D r { L2 } donde es un UMG de L1 y L2 .
Ejemplo: Sean
D = { P( x, y), P(y, x ), Q( a)}
L1 = P( x, y)
L2 = P(y, x )
= [y/x ]
Entonces,
C = { P( x, x ), Q( a)} es un factor de D.
Ejemplos de refutacin por resolucin
Refutacin de S = {{ P( x, f ( x, y))}, { P( a, z), Q(z, v)}, { Q(u, a)}}
1 { P( x, f ( x, y))}
Hiptesis
2 { P( a, z), Q(z, v)} Hiptesis
3 { Q(u, a)}
Hiptesis
4 { Q( f ( a, y), v)}
Resolvente de 1 y 2
con = [ x/a, z/ f ( a, y)]
5 
Resolvente de 3 y 4
con = [u/ f ( a, y), v/a]
Refutacin de S = {{ P( x )}, { P( f ( x ))}}
1 { P( x )}
Hiptesis
2 { P( f ( x ))} Hiptesis
3 
Resolvente de 1 y 2 con
con 1 = e, 2 = [ x/x 0 ], = [ x/ f ( x 0 )]
Refutacin de S = {{ P( x, y), P(y, x )}, { P(u, v), P(v, u)}}

11.3. Resolucin de primer orden

1
2
3
4
5

11.3.4.

{ P( x, y), P(y, x )}
{ P(u, v), P(v, u)}
{ P( x, x )}
{ P(u, u)}


133

Hiptesis
Hiptesis
Factor de 1 con [y/x ]
Factor de 2 con [v/u]
Resolvente de 3 y 4 con [ x/u]

Demostraciones por resolucin

Demostraciones de clusulas por resolucin


Sea S un conjunto de clusulas.
La sucesin (C1 , . . . , Cn ) es una demostracin por resolucin de la clusula C a
partir de S si C = Cn y para todo i {1, ..., n} se verifica una de las siguientes
condiciones:
Ci S;
existen j, k < i tales que Ci es una resolvente de Cj y Ck
existe j < i tal que Ci es un factor de Cj
La clusula C es demostrable por resolucin a partir de S si existe una demostracin por resolucin de C a partir de S.
Una refutacin por resolucin de S es una demostracin por resolucin de la clusula vaca a partir de S.
Se dice que S es refutable por resolucin si existe una refutacin por resolucin a
partir de S.
Demostraciones de frmulas por resolucin
Def.: Sean S1 , . . . , Sn formas clausales de las frmulas F1 , . . . , Fn y S una forma
clausal de F. Una demostracin por resolucin de F a partir de { F1 , . . . , Fn } es
una refutacin por resolucin de S1 Sn S.
Def.: La frmula F es demostrable por resolucin a partir de { F1 , . . . , Fn } si existe
una demostracin por resolucin de F a partir de { F1 , . . . , Fn }.
Se representa por { F1 , . . . , Fn } ` Res F.
Ejemplo: (tema 8 p. 21) { x [ P( x ) Q( x )], x P( x )} ` Res x Q( x )
1 { P( x ), Q( x )} Hiptesis
2 { P( a)}
Hiptesis
3 { Q(z)}
Hiptesis
4 { Q( a)}
Resolvente de 1 y 2 con [ x/a]
5 
Resolvente de 3 y 4 con [z/a]

134

Tema 11. Resolucin en lgica de primer orden

Ejemplo: (tema 8 p. 21)


{ x [ P( x ) Q( x )], x [ Q( x ) R( x )] ` Res x [ P( x ) R( x )]}
1 { P( x ), Q( x )} Hiptesis
2 { Q(y), R(y)} Hiptesis
3 { P( a)}
Hiptesis
4 { R( a)}
Hiptesis
5 { Q( a)}
Resolvente de 1 y 3 con [ x/a]
6 { R( a)}
Resolvente de 5 y 2 con [y/a]
5 
Resolvente de 6 y 4
Ejemplo: (tema 6 p. 55) ` Res x [ P( x ) y P(y)]
1 { P( x )}
Hiptesis
2 { P( f ( x ))} Hiptesis
3 
Resolvente de 1 y 2 con 2 = [ x/x 0 ], = [ x/ f ( x 0 )]
Ejemplo: ` Res x y ( P(y, x ) P(y, y))
Forma clausal:
x y ( P(y, x ) P(y, y))

x y (( P(y, x ) P(y, y)) ( P(y, y) P(y, x )))

x y (( P(y, x ) P(y, y)) ( P(y, y) P(y, x )))

x y (( P(y, x ) P(y, y)) ( P(y, y) P(y, x )))

x y (( P(y, x ) P(y, y)) ( P(y, y) P(y, x )))

x y (( P(y, x ) P(y, y)) ( P(y, y) P(y, x )))


sat y (( P(y, a) P(y, y)) ( P(y, y) P(y, a)))

{{ P(y, a), P(y, y)}, { P(y, y), P(y, a)}}


Refutacin:
1 { P(y, a), P(y, y)} Hiptesis
2 { P(y, y), P(y, a)}
Hiptesis
3 { P( a, a)}
Factor de 1 con [y/a]
4 { P( a, a)}
Factor de 2 con [y/a]
5 
Resolvente de 3 y 4
Paradoja del barbero de Russell
En una isla pequea hay slo un barbero. El gobernador de la isla ha publicado la
siguiente norma: El barbero afeita a todas las personas que no se afeitan a s misma y slo a
dichas personas. Demostrar que la norma es inconsistente.
Representacin: x [afeita(b, x ) afeita( x, x )]
Forma clausal:

11.3. Resolucin de primer orden

135

x [afeita(b, x ) afeita( x, x )]
x [(afeita(b, x ) afeita( x, x )) (afeita( x, x ) afeita(b, x ))]
x [(afeita(b, x ) afeita( x, x )) (afeita( x, x ) afeita(b, x ))]
x [(afeita(b, x ) afeita( x, x )) (afeita( x, x ) afeita(b, x ))]
{{afeita(b, x ), afeita( x, x )}, {afeita( x, x ), afeita(b, x )}}
Refutacin:
1 {afeita(b, x ), afeita( x, x )} Hiptesis
2 {afeita( x, x ), afeita(b, x )}
Hiptesis
3 {afeita(b, b)}
Factor de 1 con [ x/b]
4 {afeita(b, b)}
Factor de 2 con [ x/b]
5 
Resolvente de 3 y 4

11.3.5.

Adecuacin y completitud de la resolucin

Propiedades:
Si C es una resolvente de C1 y C2 , entonces {C1 , C2 } |= C.
Si D es un factor de C entonces C |= D.
Si  S, entonces S es inconsistente.
Si el conjunto de clusulas S es refutable por resolucin, entonces S es inconsistente.
Teor.: El clculo de resolucin (para la lgica de primer orden sin igualdad) es
adecuado y completo; es decir,
Adecuado: S ` Res F
=
S |= F
Completo: S |= F
=
S ` Res F

11.3.6.

Decisin de noconsecuencia por resolucin

Enunciado: Comprobar, por resolucin, que


x [ P( x ) Q( x )] 6|= x P( x ) x Q( x ).
Reduccin 1: Comprobar que es consistente
{ x [ P( x ) Q( x )], ( x P( x ) x Q( x ))}
Reduccin 2: Comprobar que es consistente
{{ P( x ), Q( x )}, { P( a)}, { Q(b)}}
Resolucin:

136

Tema 11. Resolucin en lgica de primer orden

1
2
3
4
5

{ P( x ), Q( x )}
{ P( a)}
{ Q(b)}
{ Q( a)}
{ P(b)}

Hiptesis
Hiptesis
Hiptesis
Resolvente de 1 y 2
Resolvente de 1 y 3

Modelo: U = { a, b}, I ( P) = {b}, I ( Q) = { a}.

Bibliografa
1. Fitting, M. First-Order Logic and Automated Theorem Proving (2nd ed.) (Springer,
1996) pp. 137141.
2. M.L. Bonet Apuntes de LPO. (Univ. Politcnica de Catalua, 2003) pp. 3440.
3. C.L. Chang y R.C.T. Lee Symbolic logic and mechanical theorem proving (Academic
Press, 1973) pp. 7099.
4. M. Genesereth Computational Logic (Chapter 9: Relational Resolution) (Stanford University, 2003)
5. S. Hlldobler Computational logic. (U. de Dresden, 2004) pp. 7174.
6. M. Ojeda e I. Prez Lgica para la computacin (Vol. 2: Lgica de Primer Orden) (gora,
1997) pp. 138164.
7. L. Paulson Logic and proof (U. Cambridge, 2002) pp. 5061.
8. U. Schning Logic for computer scientists (Birkuser, 1989) pp. 7996.

Bibliografa
[1] L. Arenas Lgica formal para informticos. (Ed. Daz de Santos, 1996)
[2] C. Badesa, I. Jan y R. Jansana Elementos de lgica formal (Ariel, 2000)
[3] M. BenAri Mathematical Logic for Computer Science (2nd ed.) (Springer, 2001)
[4] R. Bornat Using ItL Jape with X (Department of Computer Science, QMW, 1998).
[5] C.L. Chang y R.C.T. Lee Symbolic Logic and Mechanical Theorem Proving (Academic
Press, 1973).
[6] J. Cuena Lgica Informtica (Alianza Ed., 1985)
[7] J.A. Dez Iniciacin a la Lgica (Ed. Ariel, 2002)
[8] J.L. Fernndez, A. Manjarrs y F.J. Dez Lgica computacional. (UNED, 2003)
[9] M. Fitting FirstOrder Logic and Automated Theorem Proving (2nd ed.) (Springer,
1996)
[10] J.H. Gallier Logic for computer science (foundations of automatic theorem Proving) (June
2003)
[11] M. Genesereth Computational Logic (Stanford University, 2003)
[12] S. Hlldobler Computational logic. (U. de Dresden, 2004)
[13] Hortal, M.T.; Leach, J. y Rogrguez, M. Matemtica discreta y lgica matemtica (Ed.
Complutense, 1998)
[14] M. Huth y M. Ryan Logic in Computer Science: Modelling and Reasoning about Systems
(Cambridge University Press, 2000)
[15] M. Manzano y A. Huertas Lgica para principiantes (Alianza editorial, 2004)
[16] Nerode, A. y Shore, R.A. Logic for Applications (Springer, 1997)
[17] R. Nieuwenhuis Lgica de primer orden. (U. Politnica de Catalua, 2003)
137

138

Bibliografa

[18] N.J. Nilsson Inteligencia artificial (Una nueva sntesis) (McGrawHill, 2001).
[19] M. Ojeda e I. Prez de Guzmn Lgica para la computacin (gora, 1997)
[20] E. Paniagua, J.L. Snchez y F. Martn Lgica computacional (Thomson, 2003)
[21] L. Paulson Logic and proof (U. Cambridge, 2002)
[22] U. Schning Logic for Computer Scientists, (Birkuser, 1989)

You might also like