Subido por abrahamcr.013

Logica simbolica para informaticos

Anuncio
Lógica Simbólica para Informáticos
Pascual Julián Iranzo
Departamento de Informática
Universidad de Castilla–La Mancha
EDITORIAL RA–MA
i
ii
Índice general
PRÓLOGO
XV
1. INTRODUCCIÓN A LA LÓGICA
1.1. Qué es la lógica . . . . . . . . . . .
1.2. De qué trata la lógica . . . . . . .
1.3. Corrección, Verdad y Analiticidad
1.4. Presentación de los sistemas lógicos
1.5. Resumen . . . . . . . . . . . . . . .
1.6. Cuestiones y Problemas . . . . . .
I
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
LÓGICA DE PROPOSICIONES
2. SEMÁNTICA
2.1. El lenguaje formal de la lógica de enunciados . . . . . . .
2.1.1. Traducción del lenguaje natural al lenguaje formal
2.2. Conectivas, tablas de verdad y funciones de verdad . . . .
2.2.1. Significado de las conectivas . . . . . . . . . . . . .
2.2.2. Álgebra de Boole y operadores booleanos . . . . .
2.2.3. Tablas de verdad y funciones de verdad . . . . . .
2.3. Valoración y equivalencia lógica . . . . . . . . . . . . . . .
2.4. Conjuntos adecuados de conectivas . . . . . . . . . . . . .
2.5. Argumentación, validez y consecuencia lógica . . . . . . .
2.6. Resumen . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.7. Cuestiones y Problemas . . . . . . . . . . . . . . . . . . .
1
1
3
5
9
12
13
15
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
17
17
23
25
25
30
31
34
40
42
44
45
3. CÁLCULO AXIOMÁTICO Y PROPIEDADES FORMALES
49
3.1. Sistema formal . . . . . . . . . . . . . . . . . . . . . . . . . . 49
iii
ÍNDICE GENERAL
iv
3.2.
3.3.
3.4.
3.5.
3.6.
Lenguaje objeto y metalenguaje . . . . . . . . .
El sistema formal axiomático L . . . . . . . . .
El concepto de deducción formal . . . . . . . .
Teorema de la deducción . . . . . . . . . . . . .
Propiedades formales de la lógica de enunciados
3.6.1. Corrección . . . . . . . . . . . . . . . .
3.6.2. Consistencia . . . . . . . . . . . . . . .
3.6.3. Completitud . . . . . . . . . . . . . . .
3.6.4. Deducibilidad y consecuencia lógica . .
3.6.5. Decidibilidad . . . . . . . . . . . . . . .
3.7. Ley de intercambio . . . . . . . . . . . . . . . .
3.8. Otros sistemas formales . . . . . . . . . . . . .
3.9. Resumen . . . . . . . . . . . . . . . . . . . . . .
3.10. Cuestiones y Problemas . . . . . . . . . . . . .
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
4. CÁLCULO DE DEDUCCIÓN NATURAL
4.1. Métodos de Prueba y Deducción Natural . . . . . . . . . .
4.1.1. Métodos de prueba de los matemáticos . . . . . . .
4.1.2. Estrategias de deducción natural . . . . . . . . . .
4.2. El Sistema de Deducción Natural . . . . . . . . . . . . . .
4.2.1. Reglas de construcción de una deducción . . . . .
4.2.2. Reglas de inferencia básicas . . . . . . . . . . . . .
4.2.3. Reglas de inferencia derivadas . . . . . . . . . . . .
4.3. Consejos para la resolución de argumentos . . . . . . . . .
4.4. Equivalencia entre el sistema L y el de deducción natural .
4.5. Otros sistemas de deducción natural . . . . . . . . . . . .
4.6. Resumen . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4.7. Cuestiones y Problemas . . . . . . . . . . . . . . . . . . .
II
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
LÓGICA DE PREDICADOS
5. SEMÁNTICA
5.1. Nombres, functores y relatores . . . . . . . . . .
5.2. Cuantificadores . . . . . . . . . . . . . . . . . . .
5.3. Lenguaje formal de primer orden, L . . . . . . .
5.3.1. Vocabulario . . . . . . . . . . . . . . . . .
5.3.2. Términos y fórmulas . . . . . . . . . . . .
5.3.3. Ocurrencia libre y ligada de una variable
5.4. Teorı́a de modelos . . . . . . . . . . . . . . . . .
.
.
.
.
.
.
.
.
.
.
.
.
.
.
51
53
57
61
65
65
67
70
71
72
73
76
77
79
.
.
.
.
.
.
.
.
.
.
.
.
81
82
82
84
85
86
88
94
97
99
101
103
103
107
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
109
. 110
. 113
. 115
. 116
. 117
. 120
. 121
ÍNDICE GENERAL
v
5.4.1. Interpretaciones . . . . . . . . . . . . . . . . . . . . . 121
5.4.2. Traducción del lenguaje natural al lenguaje formal
e interpretaciones . . . . . . . . . . . . . . . . . . . . . 124
5.4.3. Valoración, satisfacibilidad, equivalencia lógica y verdad132
5.4.4. Fórmulas cerradas y verdad en una interpretación . . 138
5.4.5. Verdad lógica . . . . . . . . . . . . . . . . . . . . . . . 140
5.4.6. Consecuencia lógica y Modelos . . . . . . . . . . . . . 142
5.4.7. Independencia . . . . . . . . . . . . . . . . . . . . . . 145
5.5. Resumen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 148
5.6. Cuestiones y Problemas . . . . . . . . . . . . . . . . . . . . . 150
6. CÁLCULO AXIOMÁTICO Y PROPIEDADES
LES
6.1. El sistema formal axiomático KL . . . . . . . . . .
6.2. Teorema de la deducción . . . . . . . . . . . . . . .
6.3. Propiedades formales de la lógica de predicados . .
6.3.1. Corrección y consistencia . . . . . . . . . .
6.3.2. Completitud . . . . . . . . . . . . . . . . .
6.3.3. Deducibilidad y consecuencia lógica . . . .
6.3.4. Relaciones entre sintaxis y semántica . . . .
6.3.5. El problema de la indecidibilidad . . . . . .
6.4. Resumen . . . . . . . . . . . . . . . . . . . . . . . .
6.5. Cuestiones y Problemas . . . . . . . . . . . . . . .
FORMA155
. . . . . . 155
. . . . . . 159
. . . . . . 162
. . . . . . 163
. . . . . . 166
. . . . . . 168
. . . . . . 169
. . . . . . 170
. . . . . . 174
. . . . . . 175
7. CÁLCULO DE DEDUCCIÓN NATURAL
7.1. Métodos de Prueba y Deducción Natural . . . . . .
7.2. Reglas de inferencia . . . . . . . . . . . . . . . . .
7.2.1. Sustituciones . . . . . . . . . . . . . . . . .
7.2.2. Reglas de inferencia básicas . . . . . . . . .
7.2.3. Reglas de inferencia derivadas . . . . . . . .
7.3. Consejos para la resolución de argumentos . . . . .
7.4. Equivalencia entre el sistema KL y el de deducción
7.5. Resumen . . . . . . . . . . . . . . . . . . . . . . . .
7.6. Cuestiones y Problemas . . . . . . . . . . . . . . .
. . . . .
. . . . .
. . . . .
. . . . .
. . . . .
. . . . .
natural
. . . . .
. . . . .
III
EXTENSIONES Y OTRAS LÓGICAS
.
.
.
.
.
.
.
.
.
177
177
179
179
182
185
188
190
192
193
197
8. EXTENSIONES DE LA LÓGICA DE PREDICADOS
199
8.1. Lógica de Predicados con Identidad . . . . . . . . . . . . . . . 199
ÍNDICE GENERAL
vi
8.2.
8.3.
8.4.
8.5.
8.1.1. Sistema axiomático . . . . . . . . . . . . . . . . . . . .
8.1.2. Sistema de deducción natural . . . . . . . . . . . . . .
8.1.3. Traducción del lenguaje formal al lenguaje natural:
cuantificadores numéricos . . . . . . . . . . . . . . . .
Tipos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
8.2.1. Lógica heterogénea . . . . . . . . . . . . . . . . . . . .
8.2.2. Tipos y lenguajes de programación . . . . . . . . . . .
Orden Superior . . . . . . . . . . . . . . . . . . . . . . . . . .
8.3.1. Lógica de predicados de orden superior y expresividad
8.3.2. Lógica de predicados de segundo orden . . . . . . . . .
8.3.3. Orden superior y metateorı́a . . . . . . . . . . . . . .
8.3.4. Orden superior y lenguajes de programación . . . . . .
Resumen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Cuestiones y Problemas . . . . . . . . . . . . . . . . . . . . .
9. OTRAS LÓGICAS
9.1. Lógica Clásica y Otras Lógicas . . . . . . . . . . . . .
9.2. Problemas Expresivos y la Necesidad de Otras Lógicas
9.3. Lógicas Multivalentes . . . . . . . . . . . . . . . . . .
9.3.1. Lógica trivalente . . . . . . . . . . . . . . . . .
9.3.2. Lógica borrosa . . . . . . . . . . . . . . . . . .
9.4. Lógica Modal . . . . . . . . . . . . . . . . . . . . . . .
9.4.1. Sintaxis . . . . . . . . . . . . . . . . . . . . . .
9.4.2. Semántica de los mundos posibles . . . . . . . .
9.4.3. Cálculos deductivos . . . . . . . . . . . . . . .
9.5. Lógica Temporal . . . . . . . . . . . . . . . . . . . . .
9.6. Lógica Intuicionista . . . . . . . . . . . . . . . . . . . .
9.7. Lógica no Monótona . . . . . . . . . . . . . . . . . . .
9.8. Resumen . . . . . . . . . . . . . . . . . . . . . . . . . .
9.9. Cuestiones y Problemas . . . . . . . . . . . . . . . . .
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
200
201
205
206
206
210
218
218
220
221
223
225
228
233
. 233
. 236
. 237
. 238
. 241
. 242
. 243
. 244
. 253
. 254
. 256
. 258
. 263
. 266
A. FUNDAMENTOS MATEMÁTICOS
271
A.1. Conjuntos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 271
A.2. Relaciones y Funciones . . . . . . . . . . . . . . . . . . . . . . 273
A.3. Números Naturales y Principio de Inducción Matemática . . 277
B. NOTACIONES PARA LOS OPERADORES LÓGICOS
281
ÍNDICE GENERAL
vii
C. REGLAS DE INFERENCIA
283
C.1. Reglas de inferencia básicas . . . . . . . . . . . . . . . . . . . 283
C.2. Reglas de inferencia derivadas . . . . . . . . . . . . . . . . . . 285
C.3. Fórmulas lógicamente equivalentes . . . . . . . . . . . . . . . 287
BIBLIOGRAFÍA
289
ÍNDICE ALFABÉTICO
293
viii
ÍNDICE GENERAL
Índice de figuras
2.1. Representación arborescente de una forma enunciativa. . . . .
2.2. Puertas lógicas y circuito combinacional. . . . . . . . . . . . .
21
32
3.1. Jerarquı́a de lenguajes y diseño en capas. . . . . . . . . . . .
53
4.1. Pasos en la construcción de la deducción del Ejemplo 20. . . .
88
5.1. Árbol de relaciones familiares. . . . . . . . . . . . . . . . . . . 125
5.2. Operaciones con conjuntos y enunciados categóricos. . . . . . 130
6.1. Relaciones entre sintaxis y semántica. . . . . . . . . . . . . . 170
8.1. Relación de equivalencia sobre un dominio finito. . . . . . . . 201
8.2. Una lista de enteros. . . . . . . . . . . . . . . . . . . . . . . . 214
A.1. Diferentes clases de funciones. . . . . . . . . . . . . . . . . . . 275
ix
x
ÍNDICE DE FIGURAS
Índice de tablas
2.1. Tabla de verdad para las conectivas binarias. . . . . . . . . .
2.2. Conectivas binarias más notables. . . . . . . . . . . . . . . . .
2.3. Algunas fórmulas lógicamente equivalentes. . . . . . . . . . .
29
30
37
5.1. Lenguaje natural y su formalización. . . . . . . . . . . . . . . 113
5.2. Enunciados categóricos y su formalización. . . . . . . . . . . . 129
8.1. Cuantificadores numéricos. . . . . . . . . . . . . . . . . . . . . 206
9.1. Operadores modales y su interdefinibilidad. . . . . . . . . . . 244
9.2. Relaciones entre los sistemas modales. . . . . . . . . . . . . . 252
xi
xii
PRÓLOGO
La lógica simbólica o matemática estudia la lógica utilizando técnicas y
nociones matemáticas. Al mismo tiempo ha contribuido a la fundamentación de las matemáticas. Aunque la lógica es una disciplina muy antigua,
que hunde sus raı́ces en los filósofos griegos de la escuela de Megara, la escuela Estoica y Aristóteles, solamente se ha constituido en disciplina formal,
es decir, en lógica simbólica (en adelante, simplemente ‘lógica’), a partir de
la segunda mitad del siglo XIX, con los trabajos de A. De Morgan y G.
Boole. Con el comienzo del segundo tercio del siglo XX la lógica se ha visto fertilizada por los nuevos problemas y técnicas surgidos alrededor de la
informática (Ciencias de la Computación e Inteligencia Artificial).
La mayorı́a de los informáticos reconocen la ı́ntima conexión existente
entre la lógica y la informática, comparable en importancia a la relación
existente entre el análisis matemático y la fı́sica. Desde el comienzo de su
relación la lógica ha jugado diferentes papeles en el campo de la informática
[3, 4]:
1.
Como una fuente de lenguajes y sistemas para el razonamiento, debido
a su capacidad deductiva. Se han empleado diferentes tipos de lógica
para describir e implementar sistemas que razonan sobre un dominio
en particular (e.g. en los campos de la teorı́a de la especificación y la
inteligencia artificial). La lógica temporal, una clase de lógica modal,
se ha empleado para razonar sobre sistemas que incorporan el tiempo
como un parámetro principal. La lógica multimodal se ha empleado
para razonar sobre sistemas concurrentes e indeterministas. La lógica
multimodal también es útil en el campo de los lenguajes de especificación. La lógica no monótona se ha aplicado a una gran variedad de
problemas que van desde la herencia de propiedades a las bases de datos deductivas y en todas aquellas áreas en las que es necesario emular
razonamientos de sentido común o manejar informaciones imprecisas.
xiii
CAPÍTULO 0. PRÓLOGO
xiv
La lógica borrosa también se ha utilizado para razonar sobre sistemas
en los que el conocimiento es incierto.
2. Como una fuente de herramientas y técnicas de análisis y fundamentación.
La lógica se ha empleado como una herramienta para la representación del conocimiento y en otras muchas áreas de la inteligencia artifial.
Desde el punto de vista de la fundamentación, la lógica se ha utilizado
para proporcionar un modelo de cómputo. El λ-cálculo y la reducción
de λ-expresiones a formas normales, o bien la lógica de cláusulas de
Horn y el principio de resolución SLD representan visiones idealizadas de la idea de cómputo. La lógica también se ha empleado para
establecer una descripción formal del significado (semántica) de los
lenguajes de programación y en la especificación y verificación formal
de programas.
Vemos, pues, que pueden darse un gran número de razones para el estudio de la lógica aparte de ser una buena vacuna contra la obsolescencia
tecnológica que siempre amenaza a los profesionales de la informática. Como
se afirma en [1]: “la lógica es particularmente importante porque es la base
matemática del software”.
Audiencia y objetivos
El libro que estamos presentando nace de la experiencia acumulada en
la docencia de la asignatura de Lógica en la Escuela Superior de Informática
de la Universidad de Castilla–La Mancha, aunque también se ha beneficiado de la experiencia obtenida en la docencia de otras asignaturas, como la
de Programación Declarativa y la de Inteligencia Artificial. La asignatura
de Lógica se imparte, durante el primer cuatrimestre, tanto a alumnos de
primer curso de las Ingenierı́as Técnicas como de la Ingenierı́a Superior de
Informática. Esto supone que muchos de ellos nunca han cursado una asignatura de lógica o poseen conocimientos muy básicos de lógica proposicional
y/o matemáticas. Por este motivo, no se presuponen conocimientos previos,
salvo algunos rudimentos sobre teorı́a de conjuntos y aritmética. Éste es un
curso de lógica matemática elemental1 y si bien la selección de los temas
1
Aquı́ la palabra ‘elemental’ no debe tomarse en un sentido técnico, esto es, para hacer
referencia a la parte de la lógica en la que las variables toman valores entre los individuos
de un conjunto y no se les asignan otros conjuntos o propiedades de individuos (lo que
xv
se ha hecho pensando en las necesidades de los alumnos de informática,
también puede ser útil a alumnos de matemáticas u otras ingenierı́as.
Este libro se centra, principalmente, en el estudio de las caracterı́sticas
y propiedades fundamentales de los sistemas lógicos tradicionales: la lógica
de proposiciones y la de predicados. Sin desdeñar el rigor matemático y el
estudio de las propiedades formales de la lógica se ha dado gran importancia a las técnicas de formalización, y más generalmente a las técnicas de
representación del conocimiento mediante la lógica, ası́ como a los procesos deductivos. Conscientemente se ha buscado un equilibrio entre ambos
extremos, lo que distingue a este libro de otras propuestas existentes en la
literatura, en las que o bien se hace hicapié en los contenidos matemáticos y
la metateorı́a, o bien se aborda el estudio de la lógica de forma meramente
descriptiva y centrándose en los problemas de deducción formal (en la propia
lógica). Al tomar esta orientación se pretende que el alumno sea capaz de:
Tener fluidez en el uso de los formalismos lógicos y la manipulación de
fórmulas. Esto es de gran interés, tanto en cuanto los lenguajes de programación pueden considerarse sistemas formales y sus instrucciones
fórmulas.
Realizar demostraciones usando diferentes sistemas de deducción. Principalmente los llamados sistemas de deducción natural, que permiten
instruir al alumno en diferentes técnicas de prueba con mayor facilidad: i) pruebas indirectas o por reducción al absurdo; y ii) pruebas
directas (dentro de éstas, las pruebas por casos y las basadas en el
teorema de la deducción).
Distinguir entre sintaxis y semántica y la relación existente entre ambas.
Distinguir entre los diferentes niveles de lenguaje: lenguaje objeto y
metalenguaje. Esto es de gran ayuda para un informático, ya que muchos sistemas informáticos están diseñados y estructurados como sistemas de capas de lenguajes en los que el lenguaje definido en una
capa superior actúa como metalenguaje del lenguaje de la capa inmellamamos ‘lógica de primer orden’ o ‘logica de predicados’). La palabra ‘elemental’ la empleamos en un sentido coloquial, para indicar que el alcance de los temas seleccionados
—si exceptuamos la Parte III— y la profundidad con la que se abordan es de fácil comprensión o al menos no entraña dificultades insalvables para el lector que por primera vez
se acerca a la lógica.
CAPÍTULO 0. PRÓLOGO
xvi
diatamente inferior, que es considerado como lenguaje objeto respecto
al primero.
Conocer las técnicas de definición por inducción y de traducción del
lenguaje natural al lenguaje formal, que son de interés en las tareas
de programación de computadoras.
Conocer las propiedades formales de la lógica y sus implicaciones.
Entender el lenguaje preciso pero informal empleado por los matemáticos y sus métodos de prueba. Dado que creemos que un ingeniero debe
conocer y ser capaz de expresarse usando el lenguaje de las matemáticas, concedemos gran importancia a que el alumno adquiera fluidez en
ese lenguaje y pueda entender pruebas matemáticas (relacionadas con
propiedades de la lógica) de complejidad pequeña y media.
Aunque, como hemos dicho, el libro se centra en la lógica clásica, también
se dedica atención a las nuevas tendencias de la lógica, que a pesar de su
reciente aparición (en términos del devenir histórico de esta disciplina) ya
tienen una gran influencia en la ciencia y tecnologı́a actuales: por ejemplo,
la lógica modal o las lógicas multivalentes. El objetivo principal, respecto
a este punto, es que el alumno se familiarice con estos nuevos sistemas y
reconozca su utilidad práctica en las ciencias de la computación.
Organización y Contenidos
Tras un primer capı́tulo introductorio, que quiere ser una aproximación
a la lógica en la que presentamos de manera informal el objeto de la lógica y
algunos de los conceptos que consideramos más importantes (enunciado, argumento, corrección, verdad, analiticidad, y relación de consecuencia lógica),
el contenido de este libro se ha organizado como sigue:
Parte I. Lógica de Proposiciones.
• Capı́tulo 2. Semántica.
Se estudia la lógica de proposiciones desde una perspectiva semántica. Se introduce el lenguaje formal de la lógica de proposiciones:
el lenguaje de las formas enunciativas. Se define el concepto de
valoración que formaliza el proceso de atribución de significado
para las formas enunciativas. El concepto de valoración nos permite precisar varios conceptos importantes y demostrar algunas
de sus propiedades: formas enunciativas lógicamente equivalentes;
xvii
formas enunciativas tautológicas y el concepto de consecuencia
lógica y forma argumentativa correcta.
• Capı́tulo 3. Cálculo axiomático L y propiedades formales.
Se estudia la lógica de proposiciones desde una perspectiva sintáctica. Comenzamos definiendo el concepto de sistema formal e introducimos el problema de la distinción entre lenguaje y metalenguaje, al que damos gran relevancia durante todo el desarrollo
de este libro. Después, describimos el sistema formal axiomático
L, dedicando especial atención al concepto de deducción, ya que
una de las finalidades del sistema formal es proporcionarnos un
método de cálculo que sirva para establecer la corrección de un
argumento. Puesto que deducir en el sistema formal L es difı́cil,
buscamos herramientas para facilitar esta tarea: el teorema de
la deducción y el teorema de intercambio. Estudiamos las propiedades formales de la lógica de proposiciones, centrándonos en
la corrección, la consistencia, la completitud y la decidibilidad;
probamos que el sistema formal L posee todas estas propiedades.
Para finalizar, se introduce el sistema de Kleene, como ejemplo
de sistema axiomático distinto del que nosotros empleamos.
• Capı́tulo 4. Cálculo de deducción natural.
Se presenta un sistema de deducción natural de tipo Gentzen
que flexibiliza el proceso de deducción en la propia lógica. Primero se describen algunos de los métodos de prueba usados por
los matemáticos, que tienen su reflejo en las distintas reglas de
inferencia básicas que componen nuestro sistema de deducción
natural. El sistema que presentamos se caracteriza por hacer uso
de un amplio conjunto de conectivas lógicas, por poseer sólo reglas de inferencia (pero no contener axiomas, contrariamente a
lo que sucede con otras caracterizaciones de los sistemas de deducción natural) y por tener un reducido número de reglas para
la construcción de una deducción. Finalizamos el capı́tulo discutiendo la relación de nuestro sistema de deducción natural con
otros similares, como el cálculo de secuentes. También demostramos la equivalencia deductiva entre el sistema L y el sistema de
deducción natural.
Parte II. Lógica de Predicados.
• Capı́tulo 5. Semántica
En este capı́tulo se introduce el lenguaje de la lógica de predica-
xviii
CAPÍTULO 0. PRÓLOGO
dos y se estudian sus aspectos semánticos. Primero se muestra la
necesidad de introducir un lenguaje formal más rico, en términos
expresivos, que permita dar cuenta de los nombres, los functores,
los relatores y la cuantificación que es habitual en los lenguajes naturales. Después se define el lenguaje formal de la lógica
de predicados como un sistema de sı́mbolos desprovisto de toda significación e inmediatamente se plantea el problema de su
interpretación desde la perspectiva de la teorı́a de modelos. Se
precisan los conceptos de interpretación, valoración, satisfacibilidad, verdad y validez. Estos conceptos nos permiten ampliar el
concepto de equivalencia lógica a la lógica de predicados. También se demuestran diversas propiedades relativas a la noción de
verdad y validez. Introducimos la noción de interpretación modelo, asociada a un determinado tipo de fórmulas que llamamos
‘cerradas’. La noción de modelo es determinante en la definición
del concepto de consecuencia lógica. El teorema de la deducción
semántica pone en relación los conceptos de consecuencia lógica
y fórmula lógicamente válida. Para finalizar, se introduce el concepto de independencia y la técnica de prueba de independencia,
que es útil para detectar cuándo una fórmula no es consecuencia
lógica de otro conjunto de fórmulas.
• Capı́tulo 6. Cálculo axiomático KL y propiedades formales.
Estudiamos los aspectos sintácticos y las propiedades de la lógica
de predicados. Con este objetivo se introduce el sistema formal
axiomático KL . El sistema KL puede considerarse como una extensión del sistema L con nuevos recursos expresivos y axiomas
para poder tratar un lenguaje más rico en el que tienen cabida las
fórmulas cuantificadas. Dado que deducir en el sistema formal KL
es tan difı́cil o más que en el sistema L, también aquı́ buscamos
herramientas para facilitar la tarea de deducir. Probamos que
tanto el teorema de la deducción (con ciertas restricciones) como
el teorema de intercambio siguen siendo válidos en el sistema KL .
Estudiamos las propiedades formales de la lógica de predicados,
comprobando que el sistema formal KL es: correcto, consistente
y completo; pero indecidible (si bien fragmentos de la lógica de
predicados pueden probarse decidibles). La indecidibilidad de la
lógica de predicados impide su completa automatización y sólo
es posible implementar procedimientos de semidecisión, es decir,
que permiten comprobar la validez de una fórmula pero pueden
xix
no terminar, si la fórmula es insatisfacible.
• Capı́tulo 7. Cálculo de deducción natural.
Aquı́, se extiende el sistema de deducción natural del Capı́tulo 4
con las reglas de inferencia apropiadas para tratar la cuantificación. Después de resumir los principales métodos de prueba usados por los matemáticos cuando tratan con fórmulas cuantificadas, se introducen las reglas de inferencia básicas para los cuantificadores: un par de reglas de introducción/eliminación del cuantificador universal y otro par de reglas de introducción/eliminación
del cuantificador existencial. También se introducen y justifican
las reglas de inferencia derivadas y se dan consejos prácticos para
la resolución de argumentos cuando se usa el sistema de deducción
natural. Para finalizar, se demuestra la equivalencia deductiva entre el sistema KL y el sistema de deducción natural.
Parte III. Extensiones de la Lógica Clásica y Otras Lógicas.
• Capı́tulo 8. Extensiones de la Lógica de Predicados.
En este capı́tulo nos centramos en los sistemas de primer orden
con igualdad, que se abordan desde el punto de vista de los sistemas axiomáticos y desde el punto de vista de los sistemas de
deducción natural. También estudiamos la problemática que ocasiona la introducción de tipos y caracterı́ticas de orden superior
en el lenguaje de lógica de predicados. Comprobamos, mediante
numerosos ejemplos, que tanto el empleo de tipos como del orden
superior mejora la expresividad y el diseño de los lenguajes de
programación.
• Capı́tulo 9. Otras Lógicas.
En la segunda parte del capı́tulo se caracterizan los principios
básicos sobre los que se fundamenta la lógica clásica (principio
de identidad, principio de bivalencia, principio de no contradicción, principio del tercio excluso,...) y se estudian algunas de las
llamadas ‘lógicas desviadas’ (lógicas multivalentes, lógica modal,
lógica intuicionista y lógica no monótona), indagando cómo se
ven afectados esos principios fundamentales de la lógica clásica
por las nuevas concepciones de la lógica. También se comentan
algunas de las aplicaciones de las lógicas no clásicas.
CAPÍTULO 0. PRÓLOGO
xx
Es conveniente notar que a lo largo del libro aparecen una serie de temas
recurrentes2 que son de gran interés para la formación del informático, como
son: la distinción entre lenguaje y metalenguaje; la técnica de definición por
inducción; el conocimiento de las diferentes técnicas de prueba y el problema de la representación del conocimiento. Dado que la representación del
conocimiento es de singular importancia en el campo de la Inteligencia Artificial, hemos querido prestarle suficiente atención. En nuestro contexto, ese
problema se concreta en el problema de la traducción del lenguaje natural
al lenguaje formal de la lógica. En lugar de dedicar un capı́tulo ex professo a
esta materia, a lo largo del libro se proporcionan reglas prácticas y ejemplos
que permiten al lector adquirir pericia en el proceso de transformar frases
del lenguaje natural en fórmulas del lenguaje formal. Hemos preferido hacerlo ası́ tanto porque las técnicas son muy diversas como porque conviene
introducirlas desde el primer momento y agruparlas significarı́a postergar el
estudio de algunas de ellas hasta muy tarde.
Se ha dedicado el Apéndice A a la introducción de un limitado número de
notaciones y nociones matemáticas que es conveniente que el lector conozca.
Este apéndice puede usarse como un manual de referencia rápido al que
dirigirse sólo cuando se necesite.
Para finalizar, diremos que los contenidos enumerados en las dos primeras partes se adaptan a una asignatura cuatrimestral (impartida en 15
semanas, con tres horas de teorı́a y una de problemas por semana). Dichos
contenidos pueden ampliarse con apartados de la tercera parte hasta cubrir un semestre, dependiendo de la profundidad y el detalle con el que se
expliquen los mismos. En cualquier circunstancia es recomendable incluir
el Apartado 8.1 en un primer curso de lógica. El resto de los contenidos
presentados en la tercera parte se consideran temas avanzados. También es
recomendable que un curso de estas caracterı́sticas se complemente y prosiga
con uno de programación declarativa.
Agradecimientos
Deseo agradecer la colaboración y el apoyo de los compañeros que han
impartido o imparten la asignatura de lógica: Eduardo Fernández-Medina,
Mar Jiménez y Ramón Manjavacas. Un especial recuerdo en este momento para Jose Ángel Olivas que participó en los inicios de este proyecto y
2
Usando la terminologı́a de Denning et al. [2].
xxi
que, lamentablemente, otras obligaciones profesionales le han impedido colaborar en la elaboración de este libro. Sus opiniones han sido muy valiosas
y de ellas se ha beneficiado este texto. Algunos ejercicios sobre deducción
natural son de su autorı́a y cedidos desinteresadamente. También deseo reconocer la aportación de Serafı́n Benito, ya que su lectura atenta de algunos
capı́tulos ha servido para detectar y solucionar algunos errores introducidos
inadvertidamente. Ginés Moreno ha revisado el Capı́tulo 8 y Jaime Penabad ha revisado el Capı́tulo 9, aportando extensos comentarios. Desde estas
páginas mi más sincero agradecimiento a todos ellos.
Finalmente, quisiera agradecer a Nieves su paciencia continua, su comprensión y apoyo, sin los que no hubiese sido posible escribir este libro.
Sagunto, Navidad de 2003
xxii
CAPÍTULO 0. PRÓLOGO
Bibliografı́a
[1] M. Ben-Ari. Mathematical Logic for Computer Science. Springer-Verlag, London, UK, 2001.
[2] P.J. Denning, D.E. Comer, D. Gries, M.C. Mulder, A.B. Tucker, A.J. Turner,
and P.R. Young. Computing as a discipline. Communications of the ACM,
32(1):9–23, 1989.
[3] D.J. Israel. The role(s) of logic in artificial intelligence. In J.A. Robinson
D.M. Gabbay, C.J. Hogger, editor, Handbook of Logic in Artificial Intelligence
and Logic Programming, volume 1 Logical Foundations, pages 67–182. Oxford
University Press, Oxford, UK, 1992.
[4] M. Ryan and M. Sadler. Valuation systems and consequence relations. In
T.S.E. Maibaum S. Abramsky, D.M. Gabbay, editor, Handbook of Logic in Computer Science, volume 1 Background: Mathematical Structures, pages 321–363.
Oxford University Press, Oxford, UK, 1992.
xxiii
Descargar