FARRÉ, RAFEL / NIEUWENHUIS,ROBERTO / NIVELA,PILAR / OLIVERAS,ALBERT / RODRÍGUEZ,ENRIC / S
Pr¢logo ix
1. Preliminares 1
1.1. Conjuntos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1
1.1.1. Inclusi ¢n e igualdad de conjuntos . . . . . . . . . . . . . . . . . . . . . . . . . . 1
1.1.2. Operaciones sobre conjuntos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
1.1.3. Propiedades de las operaciones sobre conjuntos . . . . . . . . . . . . . . . . . . . 2
1.1.4. Partes de un conjunto . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
1.1.5. Cadenas sobre un conjunto . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
1.2. Relaciones y funciones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
1.2.1. Relaci ¢n de equivalencia y conjunto cociente . . . . . . . . . . . . . . . . . . . . 4
1.2.2. Relaciones de orden . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
1.3. Combinatoria . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
1.4. Demostraci ¢n de propiedades . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
1.4.1. Inducci ¢n . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
1.4.2. Contrarrecï?proco . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
1.4.3. Reducci ¢n al absurdo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
2. Definici ¢n de la l ¢gica proposicional 7
2.1. ¨Quïe es una l ¢gica? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
2.2. L¢gica proposicional . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
2.3. Explicaciones sobre la definici ¢n de la l ¢gica proposicional . . . . . . . . . . . . . . . . . 8
2.4. Satisfactibilidad, tautologï?a, consecuencia y equivalencia . . . . . . . . . . . . . . . . . . 9
3. Deducci ¢n en la l ¢gica proposicional 19
3.1. Formas normales y clïausulas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
3.2. Nociones informales de decidibilidad y complejidad . . . . . . . . . . . . . . . . . . . . . 21
3.2.1. Lo importante es el coste como funci ¢n del tama~no de la entrada . . . . . . . . . . 22
3.3. Resoluci ¢n. Correcci ¢n y completitud . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
3.4. Resolver problemas prïacticos con la l ¢gica proposicional . . . . . . . . . . . . . . . . . . 27
3.5. El procedimiento DPLL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
4. Definici ¢n de la l ¢gica de primer orden 35
4.1. L¢gica de primer orden . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35
4.1.1. Sintaxis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35
4.1.2. Interpretaci ¢n . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36
4.1.3. Satisfacci ¢n . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36
4.1.4. F¢rmulas cerradas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37
4.2. Explicaciones sobre la definici ¢n de la l ¢gica de primer orden . . . . . . . . . . . . . . . 37
4.3. L¢gica de primer orden con igualdad . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42
4.4. Formalizaci ¢n del lenguaje natural . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45
5. Deducci ¢n en la l ¢gica de primer orden 51
5.1. Formas normales y clïausulas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51
5.2. Transformaci ¢n a forma clausal . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51
5.3. Unificaci ¢n . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53
5.4. Resoluci ¢n y factorizaci ¢n . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56
6. Fundamentos de la programaci ¢n l ¢gica 61
6.1. Cïalculo de respuestas mediante resoluci ¢n . . . . . . . . . . . . . . . . . . . . . . . . . . 61
6.1.1. Bases de datos deductivas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61
6.1.2. Programas l ¢gicos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62
6.1.3. Completitud . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63
6.2. La ejecuci ¢n de programas Prolog . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63
6.2.1. La resoluci ¢n SLD . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64
6.2.2. Ejemplos de Prolog. Unificaci ¢n, listas . . . . . . . . . . . . . . . . . . . . . . . 66
6.2.3. La programaci ¢n recursiva y la inducci ¢n . . . . . . . . . . . . . . . . . . . . . . 68
6.2.4. Los aspectos extra-l ¢gicos de Prolog . . . . . . . . . . . . . . . . . . . . . . . . 69
7. Ejercicios resueltos 79
7.1. Ejercicios de definici ¢n de la l ¢gica proposicional . . . . . . . . . . . . . . . . . . . . . . 79
7.2. Ejercicios de deducci ¢n en la l ¢gica proposicional . . . . . . . . . . . . . . . . . . . . . . 114
7.2.1. Formas normales y clïausulas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 114
7.2.2. Nociones informales de decidibilidad y complejidad . . . . . . . . . . . . . . . . 123
7.2.3. Resoluci ¢n. Correcci ¢n y completitud . . . . . . . . . . . . . . . . . . . . . . . . 124
7.2.4. Resolver problemas prïacticos con la l ¢gica proposicional . . . . . . . . . . . . . . 132
7.2.5. El procedimiento DPLL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 138
7.3. Ejercicios de definici ¢n de la l ¢gica de primer orden . . . . . . . . . . . . . . . . . . . . . 153
7.3.1. L¢gica de primer orden con igualdad . . . . . . . . . . . . . . . . . . . . . . . . 169
7.3.2. Formalizaci ¢n del lenguaje natural . . . . . . . . . . . . . . . . . . . . . . . . . . 176
7.4. Ejercicios de deducci ¢n en la l ¢gica de primer orden . . . . . . . . . . . . . . . . . . . . 177
7.5. Ejercicios de fundamentos de la programaci ¢n l ¢gica . . . . . . . . . . . . . . . . . . . . 194
La finalidad de este libro es proporcionar al lector fundamentos de lógica en el ámbito de las ciencias de la computación. La audiencia principal son pues los estudiantes de titulaciones en informática, aunque el libro también es útil como complemento en la formación básica de otras ciencias e ingenierías.
En esta obra sólo se asumen conocimientos previos muy básicos de matemáticas, conocimientos que además se revisan brevemente en un capítulo de preliminares. El libro está escrito de forma amena y cercana, simplificando al máximo la carga notacional y con numerosos ejemplos que ilustran los conceptos explicados. Todos los ejercicios propuestos, más de 200, van acompañados de su correspondiente solución, desarrollada en todo detalle.
El libro trata de dos lógicas fundamentales: la Lógica Proposicional y la Lógica de Primer Orden. Después del capítulo de preliminares matemáticos, los dos siguientes capítulos giran alrededor de la definición de la Lógica Proposicional y de las técnicas de deducción en esta lógica y sus aplicaciones. Siguiendo el mismo esquema, en la segunda parte del libro se define la Lógica de Primer Orden y se explican los métodos de deducción y algunas aplicaciones, en el primer capítulo. El siguiente capítulo está dedicado a una aplicación relevante de la lógica y sus métodos deductivos en la informática: la programación lógica. Un último capítulo recopila todos los problemas propuestos junto a sus correspondientes soluciones.
Los autores del libro son Doctores en Informática o Matemáticas. En la actualidad ocupan plazas de Lector, Profesor Titular o Catedrático en la Universidad Politécnica de Cataluña y cuentan con muchos años de experiencia en la docencia y la investigación de la lógica en el ámbito de la informática.