Logica Abductiva y Lógica Paraconsistente Computacional - here
Logica Abductiva y Lógica Paraconsistente Computacional - here
Logica Abductiva y Lógica Paraconsistente Computacional - here
You also want an ePaper? Increase the reach of your titles
YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.
<strong>Lógica</strong> para la Computación<br />
V) <strong>Lógica</strong> <strong>Abductiva</strong> y <strong>Lógica</strong> <strong>Paraconsistente</strong><br />
Alfredo Burrieza Muñiz<br />
Inmaculada Fortes Ruiz<br />
Inmaculada Pérez de Guzmán Molina<br />
Agustín Valverde Ramos
No hay que sobrestimar lo inusitado.<br />
Hay que dotar de aguijones a lo común y corriente.<br />
i<br />
Elias Canetti<br />
Aunque la naturaleza se inicia con la razón y termina con la experiencia,<br />
es necesario para nosotros hacer lo contrario, es decir,<br />
comenzar con la experiencia y después proceder a investigar la razón 1<br />
Leonardo da Vinci<br />
Ser o no Ser ¿o Ser y no Ser?<br />
1 Cita tomada de la tesis doctoral de Mauricio Atzori. Abduction and Anonymity in Data Mining. Dipartimento<br />
di Informatica Università di Pisa
Índice general<br />
1. Introducción 1<br />
2. <strong>Lógica</strong> <strong>Abductiva</strong> Proposicional 7<br />
2.1. Propiedades de la relación de consecuencia abductiva |=ab . . . . . . . . . . . . . . . 11<br />
2.2. Novedades y Anomalías . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13<br />
3. Demostración automática en <strong>Lógica</strong> <strong>Abductiva</strong> 15<br />
3.1. Tablas semánticas para la <strong>Lógica</strong> <strong>Abductiva</strong> . . . . . . . . . . . . . . . . . . . . . . . 21<br />
3.2. δ-resolución . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25<br />
3.2.1. δ-Resolución como algoritmo . . . . . . . . . . . . . . . . . . . . . . . . . . . 32<br />
4. <strong>Logica</strong> abductiva de primer orden 37<br />
4.1. Semántica para los Lenguajes de Primer Orden . . . . . . . . . . . . . . . . . . . . . 43<br />
4.1.1. Semántica de Tarski . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44<br />
4.1.2. Forma Normal Prenexa . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49<br />
4.1.3. Skolemización . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51<br />
4.1.4. Herbrandización . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53<br />
4.2. Método de C-tablas para la lógica abductiva de primer orden . . . . . . . . . . . . . 53<br />
4.3. δ-Resolución <strong>Abductiva</strong> en la lógica de primer orden . . . . . . . . . . . . . . . . . . 58<br />
4.4. Predicados Abducibles . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60<br />
5. Aplicaciones de la <strong>Lógica</strong> <strong>Abductiva</strong> 63<br />
5.1. <strong>Lógica</strong> Epistémica y Abducción . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65<br />
6. <strong>Lógica</strong> <strong>Paraconsistente</strong> 73<br />
6.1. Motivación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73<br />
6.2. Inconsistencia y trivialidad . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 74<br />
6.3. Algunas lógicas paraconsistentes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 77<br />
6.3.1. La <strong>Lógica</strong> de la Paradoja LP . . . . . . . . . . . . . . . . . . . . . . . . . . . 77<br />
6.3.2. Las C-lógicas de da Costa . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 83<br />
6.4. Aplicaciones de la lógica paraconsistente . . . . . . . . . . . . . . . . . . . . . . . . . 89<br />
iii
iv ÍNDICE GENERAL
Capítulo 1<br />
Introducción<br />
Comencemos planteándonos la siguiente pregunta ¿qué requiere un sistema de IA? De inmediato<br />
nos planteamos que la pregunta nos hace reflexionar sobre cuatro cuestiones:<br />
¿cuánto conocimiento requiere un sistema de IA para ser útil? Los investigadores<br />
en el tema han llegado a la conclusión de que “mucho”. Tendría que tener conocimiento<br />
sobre ciencia, sociedad y cultura, climatología, finanzas, historia, etc. Así que tendremos que<br />
ser eficaces a la hora de decidir cómo formalizar el razonamiento, cómo almacenarlo, cómo<br />
estructurarlo, cómo gestionarlo.<br />
¿qué tipo de conocimiento es necesario? Como las personas, un sistema inteligente<br />
tendrá que saber aprender a partir del conocimiento previo. Por lo tanto, tendremos que<br />
proporcionarle ese conocimiento previo y la posibilidad de aprender de él.<br />
¿cómo debe ser representado el conocimiento? Hay un amplio consenso sobre la necesidad<br />
de:<br />
• el lenguaje de la lógica de primer orden;<br />
• el lenguaje modal (creencia, conocimiento, . . . ) y el lenguaje temporal;<br />
• un lenguaje que permita razonar “por defecto” 1 y con grados de verdad,<br />
• un lenguaje que permita discernir entre diversos contextos de referencia ¿Qué queremos<br />
decir con esto? Recurramos a un ejemplo clásico. Consideremos la siguiente conversación:<br />
Padre: ¿quién es drácula?<br />
Hijo: Un vampiro.<br />
Padre: ¿existen los vampiros?<br />
Hijo: ¡No!, no existen.<br />
Las respuestas del hijo parecen contradictorias. La causa es que la primera pregunta se<br />
contesta en el marco de la ficción y la segunda en el del mundo real. Tendremos pues<br />
que poder integrar diversas “sub-teorías” y exigir que las afirmaciones en una sub-teoría<br />
1 En el sentido de la lógica no monótona de Reiter, en la que, en presencia de información incompleta, estamos<br />
obligados a recurrir a, “por defecto”, obtener conclusiones conjeturables simplemente plausibles. El ejemplo considerado<br />
ya como universal de este tipo de razonamientos es el siguiente: Si Titi es un pájaro, inferimos que Titi vuela.<br />
No todos los pájaros vuelan, pero nos sentimos autorizados a concluir que Titi vuela, si no existe nada que indique<br />
lo contrario. Concluimos que Titi vuela porque es la más natural para nosotros y porque es consistente con nuestros<br />
conocimientos. Este género de razonamientos se denomina razonamiento por defecto.<br />
1
2 CAPÍTULO 1. INTRODUCCIÓN<br />
sean consistentes entre sí, pero no con las afirmaciones en otra sub-teoría. Por lo tanto,<br />
dada una afirmación, será preciso conocer qué sub-teorías son relevantes.<br />
¿con qué tipo de razonamientos debemos dotar al sistema? Si queremos simular<br />
el modo de razonar de las personas, sabemos que no podemos limitarnos al razonamiento<br />
deductivo, tendremos también que dotarlo de capacidad de otros modos de razonamiento<br />
que utilizamos habitualmente. Tendremos que dotarlo de la la capacidad de razonar con información<br />
imprecisa o incompleta e incluso inconsistente. Ante todas estas situaciones las<br />
personas no pierden su capacidad de razonar. Por lo tanto, es preciso contemplar tipos de razonamiento<br />
tales como los denominados razonamiento abductivo, inductivo, paraconsistente,<br />
probabilístico, . . .<br />
En este texto nos centraremos en el razonamiento abductivo, y, concretamente, en aquellos<br />
aspectos de este tipo de razonamiento en los que la computación está interesada. La profesora<br />
Atocha Aliseda 2 explica de forma sencilla e intuitiva lo que para la computación es abducción:<br />
Dado un conjunto de premisas y una conclusión, supongamos que le aplicamos un algoritmo<br />
de resolución para estudiar la validez y el resultado es negativo. Si pudiéramos<br />
depurar el algoritmo podríamos encontrar dónde falla y podríamos ver que le faltaría al<br />
conjunto de premisas para que el razonamiento fuera válido. “Lo que le falta” sería posiblemente<br />
un conjunto de fórmulas. Pues la abducción trataría de encontrar ese conjunto<br />
de fórmulas”.<br />
Antes de abordar la tarea de formalización, conozcamos un poco sobre este tipo de razonamiento:<br />
El padre de la abducción es Charles Sanders Peirce (1839-1914). La definición de abducción que<br />
Peirce da es la siguiente:<br />
Razonamiento que deriva hipótesis explicativas para una observación, a partir de un<br />
conjunto de hechos.<br />
Según Peirce, el ser humano tiene tres modos destacados de razonar: el deductivo, el inductivo y<br />
el abductivo. Veamos ejemplos de cada uno de ellos:<br />
I) Ejemplos de deducción:<br />
Regla: “Todas las bolas de la bolsa B1 son blancas”.<br />
Caso: “Estas bolas provienen de la bolsa B1”.<br />
Deducción (de la conclusión): “Estas bolas son blancas”.<br />
Regla: “Los animales sin bilis son longevos”.<br />
Caso: “El hombre y el caballo no tienen bilis”.<br />
Deducción (de la conclusión): “El hombre y el caballo son longevos”.<br />
Regla: “Si el fusible está fundido, entonces la lavadora no funciona”.<br />
Caso: “El fusible está fundido”.<br />
Deducción (de la conclusión): “La lavadora no funciona”.<br />
2 En nuestro estudio, nos basaremos en los trabajos de la profesora Atocha Aliseda que ha estudiado ampliamente<br />
la abducción.
En la deducción, dada la Regla y el Caso, la “conclusión” hace explícito un conocimiento ya<br />
implícito. Decimos que en la deducción “se va de lo universal a lo particular”. La deducción no es<br />
más que la aplicación de una regla general a un caso particular para establecer un resultado. Si<br />
sabemos que todas las bolas de B1 son blancas y extraemos un puñado de bolas, antes de verlas,<br />
sabemos que son blancas.<br />
II) Ejemplos de inducción:<br />
Caso: “Estas bolas proceden de la bolsa B1”<br />
Caso: “Estas bolas son blancas”.<br />
Inducción (de la regla): “En la bolsa B1 todas las bolas son blancas”<br />
Caso: “El hombre y el caballo no tienen bilis”<br />
Caso: “El hombre y el caballo son longevos”<br />
Inducción (de la regla): “Los animales sin bilis son longevos”<br />
Caso: “La lavadora no funciona”<br />
Caso: “El fusible está fundido”.<br />
Inducción (de la regla): “Si el fusible está fundido, entonces la lavadora no funciona”.<br />
El razonamiento deductivo no provoca discusión pero, en el razonamiento inductivo, entendemos<br />
que, para que la regla inducida sea admisible, habría que exigir la enumeración exhaustiva de todos<br />
los casos, con lo cual se convertiría en un razonamiento deductivo. Cuando la enumeración no es<br />
exhaustiva, hay un salto cualitativo de lo particular a lo universal. Así, sin saber de qué color son<br />
las bolas de B1, extraemos un puñado y observamos que son blancas; extraemos otro puñado, y<br />
volvemos a ver que también éstas son blancas. . . . . . Espontáneamente, inferimos que todas las bolas<br />
son blancas, aunque somos conscientes de que la inferencia no tiene el carácter de necesario.<br />
En definitiva, la inducción permite crear una Regla (hipotética) a partir de un caso y otro caso,<br />
y otro caso, . . . . A diferencia de la deducción, la inducción requiere confirmaciones externas. En los<br />
ejemplos dados, bastaría una excepción a la regla para que la regla quedase falsificada (en el primer<br />
ejemplo, bastaría una bola negra). Aunque, podríamos argumentar que la excepción puede reforzar<br />
en cierto modo a la regla, precisamente por su carácter de excepcionalidad, 3 la inducción no es<br />
válida sin una ratificación empírica y, pese a todas las posibles ratificaciones empíricas, siempre<br />
parece existir el riesgo de la aparición de una excepción.<br />
De modo general, podemos decir que el razonamiento inductivo es un tipo de razonamiento en<br />
el que la verdad de las premisas supone un apoyo a la verdad de la conclusión, pero no la asegura.<br />
La noción de “consecuencia lógica” es, pues, más débil que en el caso deductivo.<br />
III) Ejemplo de abducción:<br />
Regla: “Todos las bolas de la urna B1 son blancas”<br />
Caso: “Estas bolas son blancas”.<br />
Abducción (de Hipótesis): “Estas bolas proceden de la bolsa B1”<br />
Regla: “Los animales sin bilis son longevos”<br />
Caso: “El hombre y el caballo son longevos”<br />
Abducción (de Hipótesis): “El hombre y el caballo no tienen bilis”<br />
3 En el sentido del dicho popular: “La excepción confirma la regla”.<br />
3
4 CAPÍTULO 1. INTRODUCCIÓN<br />
Regla: “Si el fusible está fundido la lavadora no funciona”<br />
Caso: “La lavadora no funciona”<br />
Abducción (de Hipótesis): “El fusible está fundido”<br />
La abducción propone una regla de inferencia básica que nos lleva a compararla con la que<br />
conocemos como Modus Ponens para el razonamiento deductivo. Esta regla se llama regla de la<br />
implicación inversa:<br />
A → B<br />
B<br />
A<br />
El razonar abductivo es el “razonar del detective”, permite relacionar diversos indicios para<br />
formular una hipótesis explicativa aceptable. Siguiendo con el primero de los anteriores ejemplos,<br />
si tenemos la urna B1 sobre una mesa, y sobre tal urna la Regla nos informa que solo contiene<br />
bolas blancas, y observamos junto a ella un montón de bolas blancas, la Regla se nos presenta como<br />
un modo de dar “una explicación” y nos lleva a “conjeturar” que las bolas del montón observadas<br />
proceden de la urna B1. De este modo (pese a la incertidumbre) hemos incrementado nuestro<br />
conocimiento, “ya sabemos algo más”. Al principio sabíamos que “las bolas eran blancas”, ahora<br />
sabemos que “pueden” corresponder a la urna B1.<br />
Por estar fundamentada en el juego de hipótesis “conjeturables”, Peirce considera a la abducción<br />
“como la única forma de razonar que es realmente susceptible de incrementar nuestro saber”,<br />
o, mejor dicho, de crear nuevas ideas y prever (aunque al precio de un cierto riesgo de error).<br />
Podríamos argumentar que también la deducción añade nuevo conocimiento. Pero existe una diferencia:<br />
la deducción “extrae” un conocimiento que está “implícito en el conocimiento previo” y el<br />
conocimiento añadido por la abducción no está ímplicito en el previo, sino que lo “explica” 4 .<br />
La abducción, como la inducción, debe ser confirmada.<br />
Si comparamos estos tres tipos de razonamiento, podríamos decir que:<br />
La deducción es el único modo de razonar completamente certero, que infiere su “resultado”<br />
como conclusión necesaria. En la deducción sabemos qué ocurrirá antes de realizar el<br />
experimento (sacar una bola de la urna).<br />
La inducción produce una “regla”. Realizamos “muchas” veces un experimento y nos aventuramos<br />
a establecer un “patrón” o “regla”.<br />
En la abducción, la menos certera de las tres, una vez hemos realizado el experimento, tratamos<br />
de averiguar por qué se ha dado el resultado obtenido y, “simplemente”, sugerimos una<br />
“explicación”.<br />
Para evitar la debilidad de la abducción, ¿deberíamos llevarla al límite?, es decir, ¿deberíamos<br />
asegurarnos de que cualquier otra conjetura diferente de la hallada es capaz de explicar la observación?<br />
Rotundamente NO, si así fuera, estaríamos realizando un razonamiento deductivo (¡estaríamos<br />
utilizando el silogismo disyuntivo!).<br />
La ventaja de la abducción es que, como la inducción, nos permite formular conjeturas útiles<br />
en ausencia de información completa. Deducción, abducción e inducción son formas de inferencia<br />
4 Podemos expresar esta diferencia diciendo que la deducción es un proceso de inferencia analítico, explicativo y<br />
la abducción es un proceso inferencia sintético, ampliativo
primitivas, independientes y complementarias, es decir, no son reducibles a formas más simples y<br />
no se pueden formular una en términos de otra.<br />
Quizás si nuestro único conocimiento es sobre los razonamientos deductivos, nos alarme la pretensión<br />
de formalizar el razonamiento abductivo, pero esta postura supondría una fuerte restricción<br />
a la lógica. Así que vayamos a otro ejemplo que nos confirme la necesidad de esta formalización:<br />
Supongamos que disponemos de la Regla:<br />
y observamos un Caso:<br />
“Si el enfermo tiene sarampión, tiene manchas rojas en su cuerpo“<br />
“Alfredo tiene manchas rojas en su cuerpo”<br />
Sería bueno concluir que tiene sarampión. Pero esta conclusión no está permitida por la lógica<br />
clásica y lo cierto es que, aunque este razonamiento requiere cautelas, con la información que<br />
tenemos, es la mejor suposición que podemos hacer. Lo mejor que podemos hacer es realizar una<br />
“deducción hacia atrás”, a partir de la regla y de su consecuente, “conjeturar” un antecedente. Por<br />
esta razón, al proceso abductivo se le llama también proceso retroductivo.<br />
Podemos seguir dando ejemplos que nos confirmen la utilidad del razonamiento abductivo:<br />
La mayoría de lo hogares españoles están interesados en ventanas de doble cierre. PErC es<br />
un distribuidor de ventanas de doble cierre. De aquí, que resulta esperable que la mayoría de<br />
los hogares españoles estén interesados en contactar con PErC.<br />
Restos fósiles de dinosaurios de las mismas especies propias del Período Jurásico han sido<br />
encontrados tanto en América del Norte como en Europa. Este hecho proporciona elementos<br />
de juicio para sostener que ambos continentes estaban unidos en ese período geológico.<br />
De la información disponible acerca de Marte no se infiere que haya seres vivos en su superficie.<br />
Luego, se puede suponer que no hay vida en Marte.<br />
Pero no nos alarmemos, como veremos más adelante (al tratar el tema formalmente), el antecedente<br />
concluido en el proceso de abducción, se habrá de entender tan solo como un ‘‘candidato’’<br />
para la explicación del consecuente y tendrá que ser analizado. En primer lugar, el candidato,<br />
tendrá que ser consistente con el conocimiento previo, y siempre habrá de mantener la alerta<br />
en las sucesivas actualizaciones del conocimiento. En definitiva, la explicación abducida debe<br />
ser confirmada. Por ello, hay expresiones que matizan a la conclusión. Expresiones como “hay<br />
buenas razones para afirmar que”, “se puede suponer que”, “es razonable creer que”, etc.<br />
Podríamos sintetizar así el proceso abductivo:<br />
una vez formulada la conjetura, ésta se utiliza para realizar predicciones acerca de qué otras<br />
observaciones deberían ser ciertas si la conjetura fuese cierta.<br />
viene entonces una fase “experimental” en la que se recaban nuevas observaciones que se<br />
compararán con las predicciones, y servirán para descartar o aceptar la conjetura.<br />
si alguna evidencia contradice las predicciones de la conjetura, ésta queda refutada (deductivamente).<br />
5
6 CAPÍTULO 1. INTRODUCCIÓN<br />
si la “base experimental” es suficientemente amplia, y ninguna observación contradice las<br />
predicciones, la conjetura quedará bien fundamentada y podrá ser finalmente aceptada.<br />
Sin duda, es el modo en el que el ser humano procede y por ello abordamos el estudio formal de<br />
la abducción en el marco de la lógica como un tema de estudio atractivo ya que las abducciones<br />
no son sino las conjeturas espontáneas de la razón y para que esas conjeturas surjan se requiere el<br />
concurso de la imaginación y del instinto. La abducción es como un destello de comprensión, un<br />
saltar por encima de lo sabido.<br />
Por lo dicho hasta aquí, podemos afirmar que el razonamiento abductivo tiene una amplia<br />
gama de aplicaciones en el ámbito computacional, por ejemplo, en Inteligencia Artificial, donde<br />
se emplean modelos formales de inferencia abductiva para construir programas de diagnosis que<br />
puedan detectar cuáles son los fallos (la explicación) que hay detrás del comportamiento defectuoso<br />
(la observación) de cierto sistema (una red de ordenadores, un microprocesador, etc.). Un ejemplo<br />
típico en el ámbito del diagnóstico es el siguiente:<br />
Consideremos un motor a explosión que no arranca, y por lo tanto se observa que las<br />
bujías no producen chispas. Supongamos que la situación se describe por las reglas:<br />
Si las bujías están usadas y el tiempo es húmedo, entonces no saltan chispas.<br />
Si la batería está sin agua entonces no saltan chispas.<br />
y por la abservación:<br />
Tiempo húmedo<br />
En este caso, un razonamiento abductivo permite concluir que las dos únicas explicaciones<br />
son bujías usadas y batería seca Se puede tener una información más fina que<br />
permite clasificar las hipótesis (con una relación de orden) según se consideren más o<br />
menos relevantes o plausibles, Ésta información, habitualmente, se obtiene de manera<br />
empírica. Esto es muy importante en ejemplos reales, pues el número de posibles explicaciones<br />
puede ser muy grande. Así pues, las únicas explicaciones que se consideran son<br />
las más plausibles. Para nuestro ejemplo, podemos suponer que la explicación la batería<br />
está seca es menos plausible que las bujías están usadas.<br />
Más tarde nos centraremos en detallar algunas de las aplicaciones.
Capítulo 2<br />
<strong>Lógica</strong> <strong>Abductiva</strong> Proposicional<br />
Nuestra introducción en el capítulo anterior, habrá hecho al lector concluir que la lógica abductiva<br />
es una lógica no clásica y los ejemplos referidos le habrán llevado a concluir que no se<br />
trata de una extensión, sino que se trata de una lógica rival de la lógica clásica, es decir,<br />
se trata de una lógica que utiliza el mismo vocabulario que la lógica clásica, pero no mantiene<br />
algunas de las leyes de ésta, es decir, no refrenda como tales algunos de sus teoremas o fórmulas<br />
válidas.<br />
Por lo tanto, para abordar un estudio formal de los razonamiento abductivos, nuestro punto de<br />
partida ha de ser la lógica clásica proposicional, Lprop, y analizar como “desviarnos de ella” para<br />
obtener nuestros propósitos.<br />
Concretemos un poco más: consideraremos el lenguaje de la lógica clásica proposicional, Lprop,<br />
y la semántica de la misma. Por lo tanto, estamos ante una lógica bivaluada, con valor semántico<br />
destacado 1 y como conjunto de interpretaciones, I = {I : Vprop −→ {0, 1} y donde cada interpretación<br />
I ∈ I se extiende a Lprop del modo habitual. Asimismo, mantenemos las nociones de<br />
satisfacibilidad y validez de las fórmulas (en adelante, fbfs) y la noción de equivalencia lógica. Para<br />
toda fbf, A, denotaremos por Mod(A) el conjunto de modelos de A, es decir,<br />
Mod(A) = {I ∈ I | I(A) = 1}<br />
Recordemos que, dado un conjunto de fbfs, Ω ⊆ Lprop, decimos que<br />
Ω es modelizable, consistente o satisfacible si existe I ∈ I tal que I(Ai) = 1 para<br />
toda Ai ∈ Ω. Una tal I decimos que es un modelo de Ω y el conjunto de modelos de Ω<br />
lo denotamos por Mod(Ω). Por lo tanto, si Ω = {Ai | i ∈ Λ}, se tiene que Mod(Ω) =<br />
<br />
i∈λ Mod(Ai)<br />
Ω es insatisfacible si no existe I ∈ I tal que I(Ai) = 1 para toda Ai ∈ Ω, es decir,<br />
Mod(Ω) = ∅.<br />
Ω es universalmente válido, denotado |= Ω, si Mod(Ω) = I. En definitiva, Ω es universalmente<br />
válido si y solo si toda fbf Ai ∈ Ω es válida.<br />
En particular, si Ω = ∅, se tiene que ∅ es universalmente válido.<br />
Ω es contingente si es satisfacible, pero no universalmente válido.<br />
7
8 CAPÍTULO 2. LÓGICA ABDUCTIVA PROPOSICIONAL<br />
¿Cuál es pues la diferencia entre la lógica clásica proposicional y la lógica abductiva proposicional?<br />
La diferencia está, como habrá intuido el lector, en la noción de consecuencia lógica y a su análisis<br />
dedicaremos especial atención.<br />
Comenzamos estableciendo la siguiente definición:<br />
Definición 2.1 Un problema abductivo es un par (Θ, O) donde<br />
1. Θ ⊆ Lprop es un conjunto satisfacible de fórmulas, denominado teoría, que podemos entender<br />
como el conocimiento que tenemos como punto de partida.<br />
2. O ∈ Lprop es una fbf que es contingente (es decir, ni válida ni insatisfacible 1 ), denominada<br />
observación y que es consistente con la teoría, pero no implicada por ella, es decir, ni ella<br />
ni su negación, se infieren de la teoría. En definitiva, O satisface las condiciones siguientes:<br />
2.1 Θ |≈ O. Ya que si Θ |≈ O, no se requiere “explicar” O,<br />
2.1 Θ |≈ ¬O. Ya que si Θ |≈ ¬O, ya sabemos que O no es “explicable” en la teoría Θ.<br />
La componente |≈ puede ser la relación de consecuencia de la lógica clásica, o bien algún tipo de<br />
relación de consecuencia no clásica. Nosotros consideraremos la relación de consecuencia de la lógica<br />
clásica denotada por |=, es decir:<br />
La fbf, C ∈ Lprop, es consecuencia semántica de Ω ⊆ Lprop si Mod(Ω) ⊆ Mod(C),<br />
es decir, para toda interpretación I ∈ I,<br />
si I(Ai) = 1 para toda Ai ∈ Ω, entonces I(C) = 1<br />
Recordemos (de nuestro estudio de la lógica clásica ) que<br />
Ω ⊆ Lprop es satisfacible si y solo si Ω |= ⊥<br />
Antes de avanzar en nuestro estudio, recordemos la siguiente definición:<br />
Definición 2.2 Sean A, B ∈ Lprop, decimos que<br />
B es implicada por A si |= A → B. Denotaremos por Iα(A) el conjunto de fbfs implicadas<br />
por A.<br />
B es un implicante de A si |= B → A. Denotaremos por Iβ(A) el conjunto de implicantes<br />
de A.<br />
Si, como hemos indicado, consideramos la relación de consecuencia clásica, |=, no es necesario<br />
exigir en la definición de problema abductivo que la teoría Θ sea satisfacible ni que la observación<br />
O sea contingente. En efecto:<br />
Proposición 2.1 Si Θ ⊆ Lprop y O ∈ Lprop son tales que<br />
Θ|= ¬O y Θ|= O<br />
Entonces se tiene que Θ es un conjunto satisfacible de fbfs y O es una fbf contingente.<br />
1 ¡Poco nos puede interesar buscar explicaciones de observaciones válidas o insatisfacibles!
Demostración:<br />
1. Si Θ fuera insatisfacible, tendríamos que Θ |= ¬O y Θ |= O, en contra de la hipótesis.<br />
2. Supongamos que O no es contingente. Tenemos dos posibilidades:<br />
- O es válida, en cuyo caso Θ |= O, en contra de la hipótesis.<br />
- O es insatisfacible, en cuyo caso, ¬O es válida y Θ |= ¬O, en contra de la hipótesis.<br />
En un problema abductivo (Θ, O), la componente O funciona como una “observación inesperada”,<br />
una observación que no puede ni afirmarse ni negarse a partir de Θ. Necesitamos extender la<br />
teoría Θ para pronunciarnos sobre O. Necesitamos una “explicación”. Vamos pues a hablar de las<br />
“explicaciones” en el contexto de la abducción.<br />
Definición 2.3 Un esquema abductivo es una terna (Θ, O, E), representada mediante la relación<br />
Θ, E |=ab O tal que:<br />
1. (Θ, O) es un problema abductivo,<br />
2. E ∈ Lprop se denomina explicación o solución abductiva y satisface las dos condiciones<br />
siguientes:<br />
Θ, E |= O, es decir, E “explica” la observación O,<br />
Θ, E |= ⊥, es decir, E es consistente con la teoría Θ.<br />
Así, una fórmula E es una explicación de O, con respecto a una teoría Θ, si es consistente<br />
con Θ y a partir de ella se infiere O como consecuencia lógica. El subíndice ab en |=ab advierte de<br />
las exigencias que establece la definición, es decir, consideramos una restricción de la noción de<br />
consecuencia lógica clásica.<br />
❡❡ En un esquema abductivo, a la observación O se le suele denominar también detonador abductivo<br />
(“explicar” O es lo que provoca el proceso abductivo). Como detalla la definición, ni la observación<br />
O a explicar, ni su negación, deben inferirse de la teoría, Θ, pero deseamos explicar O<br />
dentro de ella.<br />
El siguiente resultado nos proporciona una definición equivalente de esquema abductivo.<br />
Proposición 2.2 Una terna (Θ, E, O) es un esquema lógico abductivo con observación O y solución<br />
E si y solo si se satisfacen las siguientes condiciones:<br />
1. Θ|= O,<br />
2. Θ, E |= O,<br />
3. Θ, E |= ⊥.<br />
Demostración: Por la definición de esquema abductivo, tan solo tenemos que probar que, si<br />
se satisfacen las tres condiciones se tiene que (Θ, O) es un problema abductivo, es decir, que se<br />
satisface que Θ |= ¬ O. Lo demostramos por reducción al absurdo. Supongamos que Θ |= ¬ O.<br />
Entonces, por la propiedad de monotonía de |=, se tiene que Θ ∪ {E} |= ¬ O y junto con la segunda<br />
hipótesis, Θ ∪ {E} |= O, tendríamos Θ ∪ {E} |= ⊥, lo cual contradice la hipótesis 3, que exige que<br />
E sea consistente con la teoría Θ.<br />
9
10 CAPÍTULO 2. LÓGICA ABDUCTIVA PROPOSICIONAL<br />
Según las sucesivas restricciones consideradas, podemos encontrar en la bibliografía la siguiente<br />
denominación para los esquemas abductivos: Sea (Θ, O) un problema abductivo. Decimos que<br />
E ∈ Lprop es una:<br />
1. solución plana para (Θ, O), si Θ, E |= O,<br />
2. solución consistente para (Θ, O), si es plana y Θ, E |= ⊥,<br />
3. solución explicativa para (Θ, O), si es consistente y E |= O. Es decir, la observación O<br />
no basta para explicar E. De este modo, se vincula la explicación a la teoría y E puede ser<br />
una explicación para la teoría Θ, pero puede no serlo para otra teoría Θ ′ .<br />
4. solución minimal para (Θ, O), si E es una solución explicativa y no existe ninguna otra<br />
solución explicativa para (Θ, O), E ′ , tal que E ′ ∈ Iα(E), es decir, tal que |= E ′ → E.<br />
Si no es minimal, tendríamos que la solución obtenida incluye información innecesaria para<br />
explicar O.<br />
El siguiente resultado nos indica que nuestro interés ha de centrarse en la búsqueda de soluciones<br />
explicativas.<br />
Proposición 2.3 Si (Θ, O) es un problema abductivo con al menos una solución explicativa, entonces<br />
Θ es contingente.<br />
Demostración: Basta probar que Θ no es universalmente válido. Sea E un solución explicativa.<br />
Por hipótesis se tiene que Θ, E |= O, es decir, Mod(Θ ∪ {E}) = Mod(Θ) ∩ Mod(E) ⊆ Mod(O).<br />
Ahora bien, si Θ es universalmente válido, Mod(Θ) = I y Mod(Θ) ∩ Mod(E) = Mod(E). Por lo<br />
tanto, tendríamos que Mod(E) ⊆ Mod(O), en contra de lo hipótesis que asegura que E |= O.<br />
Ahora podemos incidir, en términos formales, sobre la diferencia entre deducción y abducción<br />
a la que nos hemos referido en el capítulo anterior: La deducción es el proceso inferencial que<br />
seguimos cuando, dado el conjunto Θ, buscamos una fórmula O tal que Θ |= O, o bien, dados Θ<br />
y O, comprobamos que Θ |= O, es decir, vamos de las premisas a la conclusión. Por su parte, la<br />
abducción, dados Θ y O, tales que Θ |= O, buscamos extender Θ a Θ ′ = Θ ∪ E con el objetivo de<br />
que Θ ′ |= O, es decir, buscamos premisas adicionales que sostengan una conclusión dada.<br />
Ejemplo 2.1 Consideremos que tenemos un modelo formal del protocolo Θ y que O representa el<br />
objetivo que buscamos (autenticación), la solución al problema abductivo (Θ, O) nos da la secuencia<br />
de mensajes que deben enviarse para conseguirlo.<br />
Es importante seleccionar bien el conjunto de explicaciones, de forma que contenga sólo las<br />
acciones (mensajes) permitidas en el protocolo. Para asegurar que el protocolo es seguro, si E<br />
representa una violación del protocolo, debe comprobarse que el problema abductivo (Θ, O) no<br />
tiene solución<br />
Ejemplo 2.2 Quizás la terminología en la lógica abductiva nos lleve a considerar como una de<br />
sus aplicaciones naturales la Diagnosis. Por definición, todo diagnóstico conlleva un proceso de<br />
razonamiento abductivo. Pensemos, por ejemplo, en el campo conocido como diagnosis basada en<br />
modelos. En él se dispone de una teoría que describe el comportamiento normal de un sistema que<br />
se desea diagnosticar. Ante un comportamiento anómalo, la abducción analiza las componentes y<br />
busca explicaciones del tipo
2.1. PROPIEDADES DE LA RELACIÓN DE CONSECUENCIA ABDUCTIVA |=AB 11<br />
¿La componente A del sistema funciona de forma anómala?<br />
Habitualmente, hablar de diagnóstico nos conduce a pensar en el ámbito de la Medicina. Un médico<br />
abduce continuamente: Su conocimiento constituye la teoría, Θ, los síntomas constituyen las<br />
observaciones, O, mientras que las distintas enfermedades serían las posibles explicaciones, E, que<br />
consideraría el médico como posible causa de tales síntomas. El médico recurrirá a un razonamiento<br />
abductivo cuando requiera encontrar una causa que explique algún síntoma discrepante respecto a<br />
su conocimiento, discrepante con lo considerado “normal”.<br />
2.1. Propiedades de la relación de consecuencia abductiva |=ab<br />
Como hemos comentado, el subíndice ab, con el que denotamos la relación entre Θ, E y O,<br />
nos advierte de las restricciones que establece la definición de esquema abductivo en la relación<br />
de consecuencia lógica clásica Θ, E |= O. Vamos pues a profundizar en la noción de consecuencia<br />
lógica.<br />
Comencemos destacando que una noción de consecuencia lógica puede ser completamente caracterizada<br />
por sus propiedades básicas, expresadas por sus reglas estructurales. El término “estructural”<br />
refleja que estas reglas no hacen referencia a ningún símbolo específico del lenguaje lógico (en<br />
particular, no hacen referencia a ninguna conectiva). Si nos centramos en la noción de consecuencia<br />
clásica, |=, sus reglas estructurales son las siguientes:<br />
I) A |= A (Toda hipótesis se implica así misma) Reflexividad<br />
II)<br />
III)<br />
IV)<br />
IV)<br />
X, A, Y, A, Z |= C<br />
X, A, Y, Z |= C<br />
y<br />
X, A, Y, A, Z |= C<br />
X, Y, A, Z |= C<br />
(Podemos borrar hipótesis repetidas)<br />
X, A, B, Y |= C<br />
X, B, A, Y |= C<br />
X, Y |= C<br />
X, Y, A |= C<br />
Contracción<br />
(Podemos permutar las hipótesis) Permutación<br />
(Añadiendo nueva información no se invalidan las conclusiones previas)<br />
X, Y, A |= C; Z |= A<br />
X, Z, Y |= C<br />
(las hipótesis pueden ser reemplazadas por secuencias de hipótesis que la impliquen)<br />
Monotonía<br />
Corte<br />
El lector puede comprobar que la propiedad de Permutación es derivable de las propiedades<br />
de Contracción y Monotonía.<br />
Como hemos indicado, las reglas estructurales anteriores caracterizan a la relación de consecuencia<br />
lógica clásica, como nos indica el siguiente teorema.<br />
Teorema 2.1 (van Benthem) La propiedades de Reflexividad, Contracción, Monotonía y Corte,<br />
determinan completamente las propiedades estructurales de la relación de consecuencia clásica.
12 CAPÍTULO 2. LÓGICA ABDUCTIVA PROPOSICIONAL<br />
En el resto de la sección, denotaremos por |= c ab , y |=e ab las relaciones de consecuencia correspondientes,<br />
respectivamente, a la abducción consistente y a la abducción explicativa.<br />
El siguiente resultado, cuya demostración es inmediata, nos detalla cuales son las reglas estructurales<br />
de la relación de consecuencia clásica que S Í satisface |=ab<br />
Proposición 2.4 La relación de consecuencia lógica abductiva consistente, denotada |= c ab , (y, en<br />
) satisface las reglas estructurales de Permutación y Contracción.<br />
consecuencia, |= e ab<br />
Pero |= c ab<br />
no satisface las propiedades de Reflexividad, Monotonía y Corte:<br />
{¬p}, p |=ab ¬p. Ya que {¬p} ∪ {p} no es consistente. Por lo tanto, a diferencia de |=, se tiene<br />
que |= c ab no posee la propiedad de reflexividad.<br />
|= c ab no es monótona, ya que si Θ, E |=c ab O, se tiene que, por ejemplo, Θ ∪ {¬O}, E |=c ab O.<br />
|= c ab no cumple la propiedad de corte. En efecto, sea Θ = {¬p ∨ q}, Θ′ = {p ∨ q}, E = p,<br />
E ′ = ¬q y O = q. Es claro que Θ, E |= c ab O y que Θ′ , E ′ |= c ab E, pero Θ, Θ′ , E ′ |= c ab O.<br />
Sin embargo, vamos a ver que sí satisface otras formas más débiles de estas reglas. Consideremos<br />
las siguientes reglas:<br />
1. X1, . . . Xn |= c ab B B |=c ab ⊥<br />
X1, . . . Xn |= c ab Xi<br />
(1 ≤ i ≤ k) Reflexividad Condicional (RC)<br />
Para asegurar la propiedad de reflexividad, se requiere que del conjunto de hipótesis se derive<br />
alguna conclusión consistente.<br />
2. X1, . . . Xk |= c ab B B |=c ab ⊥ U1, . . . , Un |= c ab X1 . . . U1, . . . , Un |= c ab Xk<br />
U1, . . . , Un |= c ab B<br />
Corte Simultáneo (CS)<br />
Esta propiedad es una combinación de Corte y Contracción en la que X1, . . . , Xk puede ser<br />
omitida en la conclusión cuando se satisfacen las dos condiciones siguientes:<br />
cada uno de los Xi es consistentemente derivado de U1, . . . , Un,<br />
de la secuencia U1, . . . , Un se deriva consistentemente B.<br />
3. U1, . . . , Un |= c ab X1 . . . U1, . . . , Un |= c ab Xk<br />
X1, . . . Xk |= c ab Xi<br />
1 ≤ i ≤ k Conclusión Consistente (CC)<br />
Esta propiedad afirma que la secuencia X1, . . . Xk implica a cada uno de sus elementos, si<br />
cada uno de estos son implicados consistentemente por alguna secuencia U1, . . . , Un (es otra<br />
forma de reflexividad).<br />
Aliseda demuestra que estas tres propiedades caracterizan la abducción consistente, |= c ab . Antes<br />
de enunciar su resultado, observemos que en la definición de solución abductiva consistente, en las<br />
dos propiedades<br />
Θ, E |= O y<br />
Θ ∪ {E} es consistente
2.2. NOVEDADES Y ANOMALÍAS 13<br />
Θ y E se comportan simétricamente, es decir, podemos contemplar indistintamente el par (Θ, E) o<br />
bien el par (E, Θ). Podemos pues optar por un representación binaria de las reglas: X |= C, donde<br />
X se entiende como la conjunción de Θ y E y C es O y de nuevo, contemplamos X como una<br />
secuencia finita de fbfs X1, . . . , Xk y C una única conclusión.<br />
Como en el caso clásico, se tiene un teorema de representación:<br />
Teorema 2.2 (Teorema de Representación para |= c ab ) Una relación de consecuencia satisface<br />
(RC), (CS) y (CC) si y solo si es representable en la forma de abducción consistente.<br />
2.1.0.1. Reglas estructurales derivadas para |= c ab<br />
Las reglas (RC), (CS) y (CC) nos permiten disponer de nuevas reglas estructurales para |= c ab que<br />
son modificaciones de las reglas de Monotonía y Corte de la relación de consecuencia clásica. Por<br />
ejemplo, es fácil ver que |= c ab satisface una forma de monotonía modificada: B puede ser a~nadida<br />
como hipótesis si esta adicción no perjudica la consistencia:<br />
X |= c ab A X, B |=c ab C 2<br />
X, B |= c ab A<br />
Otro ejemplo es la siguiente forma de Corte Débil:<br />
X |= c ab A U, A, V |=c ab B U, X, V |=c ab C<br />
U, X, V |= c ab B<br />
Monotonía Débil<br />
Corte Débil<br />
Dejamos al lector comprobar que la abducción consistente dispone de la reglas de permutación y<br />
contracción.<br />
Análogamente, podríamos analizar las propiedades estructurales para la relación de consecuen-<br />
y para la relación de consecuencia en la abducción explicativa<br />
. Pero tal análisis escapa a los objetivos de este texto.<br />
cia en la abducción explicativa, |= e ab<br />
minimal, |= m ab<br />
Antes de abordar el problema de la automatización del razonamiento abductiva, en la sección<br />
siguiente prestaremos atención a la naturaleza de las observaciones, es decir, de los hechos que<br />
provocan nuestra búsqueda de “explicaciones”.<br />
2.2. Novedades y Anomalías<br />
Como hemos indicado, el padre de la abducción es Charles Sanders Peirce. De acuerdo con la<br />
formulación de abducción de Peirce, el razonamiento abductivo se dispara por un hecho sorprendente,<br />
por un hecho que requiere explicación. En las restriciones que hemos establecido anteriormente<br />
para la observación, O, al introducir el concepto de esquema abductivo, podemos establecer una<br />
diferenciación entre “detonadores” y llamar:<br />
novedad abductiva: a toda observación O tal que ni ella ni su negación pueden ser explicadas<br />
en la teoría, es decir: Θ|= O y Θ|= ¬O, lo cual responde a nuestra definición de problema<br />
abductivo.<br />
anomalía abductiva: la observación O es anómala si no puede ser explicada, es decir, Θ <br />
|= O,<br />
pero la teoría sí explica su negación, es decir, Θ |= ¬O, es decir, O es inconsistente con la<br />
teoría.
14 CAPÍTULO 2. LÓGICA ABDUCTIVA PROPOSICIONAL<br />
La diferenciación entre “novedades abductivas” y “anomalías abductivas”, determina dos modos<br />
de proceder, dos tipos de operaciones inducidas, respectivamente, por cada uno de estos “detonadores<br />
abductivos”:<br />
- expansión abductiva. Dada una novedad abductiva, una explicación consistente, E, se calcula<br />
de forma que Θ, E |= O. Así se añaden E y O a la teoría Θ por una simple expansión.<br />
- revisión abductiva. Dada una anomalía abductiva, una explicación consistente, E, se calcula<br />
de la siguiente manera:<br />
i) Primero se revisa Θ de tal forma que no explique a ¬O. Esto es, se obtiene Θ ′ de tal<br />
manera que Θ ′ |= O y también Θ ′ |= ¬ O.<br />
ii) Una vez obtenida Θ ′ , se obtiene una explicación E consistente con Θ ′ de tal forma que<br />
Θ ′ , E |= O.<br />
En definitiva: podemos considerar que el razonamiento abductivo se dispara por una sorpresa,<br />
la cual genera una duda que puede ser de dos tipos: novedad o anomalía. En el primer caso el<br />
fenómeno a explicar es totalmente nuevo y consistente con la teoría, por lo que su explicación se<br />
calcula y se incorpora a la teoría por la operación de extensión. En el segundo caso, como el hecho<br />
es anómalo, la operación de revisión es necesaria para incorporarlo y requiere un tratamiento no<br />
monótono. Así, la teoría se revisa de tal forma que su modificación no esté en conflicto con el hecho<br />
a explicar, a continuación se calcula la explicación y se incorpora a la teoría revisada por expansión.
Capítulo 3<br />
Demostración automática en <strong>Lógica</strong><br />
<strong>Abductiva</strong><br />
En este capítulo vamos a describir dos métodos de demostración automática para la lógica<br />
abdutiva. En primer lugar, describiremos el método de las tablas semánticas (que conocemos de la<br />
lógica clásica) para la búsqueda de explicaciones abductivas.<br />
Comencemos pues recordando dicho método (el lector dispone de las demostraciones de los<br />
resultados en el libro <strong>Lógica</strong> <strong>Computacional</strong> I. <strong>Lógica</strong> Clásica Proposicional):<br />
El método de las tablas semánticas en la lógica clásica proposicional es un sistema de refutación<br />
y, en consecuencia, para verificar la validez de una inferencia H1, . . . , Hn |= C, procede analizando<br />
si H1 ∧ . . . Hn ∧ ¬C es o no insatisfacible. Para ello organiza la búsqueda sistemática de un modelo<br />
para H1 ∧. . . Hn ∧¬C. Si la búsqueda tiene éxito, la inferencia no es válida y si la búsqueda fracasa,<br />
la inferencia es válida.<br />
En síntesis, el método puede describirse como sigue:<br />
Dado el conjunto de fbfs, Ω = {A1, . . . , An}, cuya satisfacibilidad se quiere comprobar, se<br />
organizan las fbfs de Ω en un árbol de una sola rama con raíz A1 y tal que cada Ai con 2 ≤ i ≤ n<br />
es sucesor inmediato de Ai−1, es decir,<br />
A1<br />
A2<br />
.<br />
An<br />
Este árbol, denominado árbol inicial asociado a Ω, se irá ampliando sucesivamente mediante<br />
ciertas reglas de extensión, basadas únicamente en la estructura sintáctica de las fórmulas. Cada<br />
árbol obtenido se denomina árbol asociado a Ω. Las reglas de extensión están diseñadas de modo<br />
que:<br />
La aplicación de cada una de dichas reglas genera un árbol binario cuyos nodos están etiquetados<br />
con fbfs.<br />
Cada regla introduce fbfs que son subfórmulas propias o bien negaciones de subfórmulas<br />
propias de fbfs existentes en el árbol al que se aplica.<br />
15
16 CAPÍTULO 3. DEMOSTRACIÓN AUTOMÁTICA EN LÓGICA ABDUCTIVA<br />
Para la descripción del método se utiliza habitualmente la notación uniforme debida a Smullyan<br />
1 , que consiste en agrupar las fórmulas por tipos, consiguiendo con ello una notable simplificación<br />
en la exposición del método.<br />
Definición 3.1 Las fbfs se clasifican en: literales, fbfs de tipo α (o de comportamiento<br />
conjuntivo) y fbfs de tipo β (o de comportamiento disyuntivo). Cada fórmula de tipo α o de tipo<br />
β tiene asociada dos componentes, denotadas α1, α2 y β1, β2 respectivamente. Las siguientes tablas<br />
muestran las fórmulas de tipo α y de tipo β junto con sus componentes.<br />
Reglas de Extensión<br />
α α1 α2<br />
A ∧ B A B<br />
¬(A ∨ B) ¬A ¬B<br />
¬(A → B) A ¬B<br />
¬¬A A A<br />
β β1 β2<br />
A ∨ B A B<br />
¬(A ∧ B) ¬A ¬B<br />
A → B ¬A B<br />
El árbol inicial asociado a un conjunto de fbfs, Ω, denotado TΩ, es extendido sucesivamente,<br />
para obtener árboles asociados a Ω, mediante las siguientes reglas:<br />
(α) Si ρA denota la rama determinada por el nodo hoja A y una α-fórmula ocurre en ρA, extendemos<br />
dicha rama añadiendo:<br />
si α1 = α2, dos nodos etiquetados con sus componentes α1 y α2.<br />
si α1 = α2, un nodo etiquetado con la componente común.<br />
.<br />
α<br />
.<br />
A<br />
−→<br />
(β) Si ρA denota la rama determinada por el nodo hoja A y una β-fórmula ocurre en ρA, extendemos<br />
dicha rama añadiendo:<br />
dos nodos si β1 = β2: uno como descendiente izquierdo y otro como descendiente derecho<br />
etiquetados con sus componentes β1 y β2, respectivamente.<br />
un nodo etiquetado con la componente común, si β1 = β2.<br />
1 R. M. Smullyan. First-Order Logic. Springer-Verlag, 1968. Vuelto a publicar por Dover en 1995.<br />
.<br />
α<br />
.<br />
A<br />
α1<br />
α2
.<br />
β<br />
.<br />
A<br />
−→<br />
.<br />
β<br />
.<br />
A<br />
<br />
β2<br />
❅ β1<br />
Definición 3.2 Sea Ω = {A1, . . . , An} un conjunto de fbfs. Un árbol T se dice que es un árbol<br />
para Ω, si existe una secuencia de árboles T1, . . . , Tn tal que:<br />
T1 es el árbol inicial asociado a Ω, es decir, el árbol de una sola rama:<br />
A1<br />
A2<br />
.<br />
An<br />
Cada árbol Ti (2 ≤ i ≤ n) es un árbol asociado a Ω que es extensión inmediata de Ti−1,<br />
es decir, Ti se obtiene de Ti−1 por aplicación de una regla de extensión a uno de sus nodos.<br />
Tn = T .<br />
Definición 3.3 Sea T un árbol para Ω. Una rama de T se dice cerrada, si en ella ocurren una<br />
variable proposicional p y su negación ¬p. En caso contrario, se dice que la rama es abierta. El<br />
árbol T se dice cerrado si todas sus ramas son cerradas.<br />
Representaremos un árbol T por el conjunto de sus ramas abiertas T = {ρ1, . . . , ρn} y cada<br />
rama abierta, le asociaremos el conjunto de sus literales ρi = {ℓi1, . . . , ℓini }.<br />
Una rama ρ de un árbol T para Ω se dice completa si satisface las siguientes condiciones:<br />
1. Si la fórmula α ocurre en ρ, también sus componentes α1 y α2 ocurren en ρ.<br />
2. Si la fórmula β ocurre en ρ, o la componente β1 o la componente β2 ocurre en ρ.<br />
Definición 3.4 Un árbol T para Ω se dice terminado si toda rama es cerrada o completa.<br />
Definición 3.5 [Cierres de una rama abierta] Sea T = {ρ1, . . . , ρn} un árbol no terminado. El<br />
conjunto de cierres de una rama abierta ρi = {ℓi1, . . . , ℓini }, denotado Cl(ρi), es el conjunto<br />
de los literales opuestos de los literales en ρi<br />
es decir, cada literal de Cl(ρi) cierra ρi.<br />
Cl(ρi) = {ℓi1, . . . , ℓini }<br />
Definición 3.6 [Cierre de un árbol] Sea T = {ρ1, . . . , ρn} un árbol no terminado. El conjunto de<br />
cierres totales de T , denotado Cl(T ), es la intersección de los conjuntos de los cierres de cada<br />
una de sus ramas:<br />
n<br />
Cl(T ) = Cl(ρi)<br />
i=1<br />
17
18 CAPÍTULO 3. DEMOSTRACIÓN AUTOMÁTICA EN LÓGICA ABDUCTIVA<br />
es decir, cada literal de Cl(T ) cierra T .<br />
Definición 3.7 [Cierres parciales de una rama] Sea T = {ρ1, . . . , ρn} un árbol no terminado.<br />
El conjunto de cierres parciales de una rama ρi = {ℓi1, . . . , ℓini }, denotado Clpar(ρi) es el<br />
conjunto de literales, denotado Clpar(ρi), tal que cada literal de Clpar(ρi) cierra ρi (y, posiblemente,<br />
otras ramas), pero no cierra T . Así pues,<br />
Clpar(ρi) = Cl(ρi) - Cl(T )<br />
En definitiva, el conjunto de literales que cierra la rama, pero no el árbol.<br />
Definición 3.8 [Cierres parciales de un árbol] Sea T = {ρ1, . . . , ρn} un árbol no terminado. El<br />
conjunto de cierres parciales de T , denotado Clpar(T ) es la unión de los conjuntos de cierres<br />
parciales de cada una de las ramas:<br />
Clpar(T ) =<br />
n<br />
1<br />
Clpar(ρi)<br />
es decir, cada literal de Clpar(T ) cierra al menos una de las ramas de T , pero no cierra T .<br />
Definición 3.9 [Extensión de un árbol]Sea T = {ρ1, . . . , ρn} un árbol no terminado y Λ =<br />
{ℓ1, . . . , ℓm} un conjunto de literales. La extensión de T con Λ, denotada Ext(T, Λ), es el árbol<br />
Ext(T, Λ) = {ρi ∪ Λ | ρi ∩ {ℓ1, . . . , ℓm} = ∅, 1 ≤ i ≤ n} 2<br />
Denotemos por |T | el número de ramas abiertas de un árbol T . Entonces,<br />
Si |Ext(T, Λ)| = |T |, decimos que la extensión es abierta.<br />
Si |Ext(T, Λ)| = 0, decimos que la extensión es cerrada.<br />
Si |Ext(T, Λ)| < |T |, decimos que la extensión es semicerrada 3 .<br />
Una extensión abierta o semicerrada se denomina extensión consistente.<br />
Ejemplo 3.1 Sea T = {ρ1, ρ2} = { {¬p ∨ q, r, ¬p}, {¬p ∨ q, r, q} }:<br />
Ext(T, {s}) = { {¬p ∨ q, r, ¬p, s}, {¬p ∨ q, r, q, s} } es una extensión abierta de T , ya que, por<br />
ejemplo, {s} no cierra ni ρ1, ni ρ2.<br />
Ext(T, {p}) = {¬p ∨ q, r, q, p} es una extensión semicerrada de T , ya que {p} cierra ρ1, pero<br />
no cierra ρ2.<br />
Ext(T, {¬r}) = ∅ es una extensión cerrada de T , ya que {¬r} cierra ρ1 y cierra ρ2.<br />
El siguiente resultado recoge la “bondad” del método:<br />
Teorema 3.1 Para todo conjunto finito Ω de fbfs, mediante un número finito de extensiones se<br />
obtiene un árbol terminado para Ω.<br />
2 donde, por abuso de notación, usamos el mismo símbolo para identificar una rama y el conjunto de sus fórmulas<br />
3 En definitiva, la extensión es semicerrada si tiene al menos una rama abierta y una rama cerrada.
Definición 3.10 Llamamos refutación para un conjunto de fbfs, Ω, a todo árbol cerrado para Ω.<br />
Una fbf C se dice que se deriva del conjunto de fbfs {H1, . . . , Hn}, si existe una refutación para<br />
{H1, . . . , Hn, ¬C}. En particular, una fbf, A, se dice demostrable si existe una refutación para<br />
{¬A}.<br />
Definición 3.11 Un árbol T para Ω se dice que es un árbol satisfacible si el conjunto de las<br />
fbfs que etiquetan los nodos de alguna de las ramas de T es satisfacible. Una rama tal se dice que<br />
es una rama satisfacible.<br />
Teorema 3.2 (de existencia de modelo) Toda rama completa y abierta ρ de un árbol T para<br />
Ω es satisfacible.<br />
El teorema de existencia de modelos asegura que en un árbol terminado para un conjunto de fbfs, Ω,<br />
cada rama abierta, ρ (si existe) proporciona un modelo para Ω. Concretamente, toda interpretación<br />
I tal que:<br />
I(pi) = 1 si pi ocurre en ρ,<br />
I(pi) = 0 si ¬pi ocurre en ρ.<br />
Destaquemos que no es necesario que el modelo generado asigne valores de verdad específicos a<br />
todos los símbolos proposicionales que intervienen en Ω y que ramas distintas pueden generar el<br />
mismo modelo.<br />
Teorema 3.3 (Corrección y completitud) El método de las tablas semánticas es:<br />
1. Correcto: Si {H1, . . . , Hn, ¬C} puede ser refutado, entonces H1, . . . , Hn |= C.<br />
2. Completo: Si H1, . . . , Hn |= C, entonces existe una refutación para {H1, . . . , Hn, ¬C}.<br />
Descripción del método<br />
En la construcción de un árbol para refutar un conjunto de fórmulas, se tienen en cuenta las<br />
siguientes consideraciones:<br />
Para evitar ramificaciones innecesarias, se da prioridad a la regla (α).<br />
Tanto la regla (α) como la regla (β) se aplica sobre cada nodo una sola vez. Para indicar que<br />
la α-fórmula o β-fórmula a la que se aplica la correspondiente regla no será usada más, tras<br />
su aplicación, se marca con el nodo que etiquetan.<br />
No se realiza ninguna extensión sobre las ramas cerradas. Para indicar que una rama es<br />
cerrada se marca con ×.<br />
En la Figura 3.1 aparece un diagrama de flujo para la construcción de un árbol de refutación.<br />
19
20 CAPÍTULO 3. DEMOSTRACIÓN AUTOMÁTICA EN LÓGICA ABDUCTIVA<br />
Hipótesis 1<br />
Hipótesis 2<br />
.<br />
Hipótesis n<br />
Negación de la conclusión<br />
❄<br />
Aplicar α o β a un nodo no marcado<br />
❄<br />
Marcar con × las ramas cerradas<br />
❄<br />
¿Están todas las ramas marcadas?<br />
SI<br />
NO<br />
❄<br />
❄<br />
Válida ¿Quedan nodos α o β sin marcar?<br />
✛<br />
NO SI<br />
❄<br />
No Válida<br />
Figura 3.1:<br />
En los siguientes ejemplos hacemos uso del método para probar, en un caso la validez de una<br />
fórmula y en el otro la no validez de una inferencia.<br />
Ejemplo 3.2 Demostremos la validez de la fórmula ((p → q) ∧ (q → p)) → ((p ∨ q) → (p ∧ q)).<br />
¬[((p → q) ∧ (q → p)) → ((p ∨ q) → (p ∧ q))] 1<br />
(p → q) ∧ (q → p) 2<br />
¬((p ∨ q) → (p ∧ q)) 3<br />
p → q 4<br />
q → p 5<br />
p ∨ q 6<br />
¬(p ∧ q) 7<br />
✟✟<br />
❍❍ ¬p<br />
q<br />
✟✟<br />
❍❍ <br />
¬q p ❅<br />
¬q p<br />
❅<br />
×<br />
p<br />
✟✟ ×<br />
❍ ×<br />
q<br />
❍<br />
p q<br />
×<br />
❅ ❅<br />
¬p ¬q ¬p ¬q<br />
× × × ×
3.1. TABLAS SEMÁNTICAS PARA LA LÓGICA ABDUCTIVA 21<br />
Ejemplo 3.3 Demostremos que la inferencia (p ∨ q) → r, ¬q |= p ∨ r no es válida.<br />
(p ∨ q) → r 2<br />
¬q<br />
¬(p ∨ r) 1<br />
¬p<br />
¬r<br />
❅<br />
¬(p ∨ q) 3 r ×<br />
¬p<br />
¬q<br />
La rama abierta nos proporciona un modelo para el conjunto de fórmulas<br />
{(p ∨ q) → r, ¬q, ¬(p ∨ r)}<br />
cualquier interpretación I tal que I(p) = I(q) = I(r) = 0 satisface todas las hipótesis pero no la<br />
conclusión de la inferencia.<br />
3.1. Tablas semánticas para la <strong>Lógica</strong> <strong>Abductiva</strong><br />
Puesto que en nuestra formalización de la lógica abductiva proposicional partimos de la lógica<br />
clásica proposicional, tenemos todos los elementos necesarios para abordar el problema de cómo usar<br />
el método de las tablas semánticas para la búsqueda de soluciones explicativas para un problema<br />
abductivo. En nuestro desarrollo seguimos el planteamiento de la profesora Atocha Aliseda.<br />
Comenzemos destacando que el método que vamos a exponer proporciona explicaciones atómicas<br />
(un literal) o conjuntivas (conjunciones de literales).<br />
Dado un problema abductivo (Θ, O), deseamos encontrar soluciones abductivas para la observación<br />
O. Por lo tanto, la proposicion 2.2, en términos de tablas semánticas, nos indica que se han<br />
de satisfacer las siguientes condiciones:<br />
I) Θ |= O, es decir, no existe una refutación para Θ ∪ {¬O}. En definitiva, existe un árbol con<br />
una rama abierta y completa para Θ ∪ {¬O}.<br />
II) Θ, E |= O, es decir, existe una refutación para Θ ∪ {E} ∪ {¬O}. En definitiva, existe un árbol<br />
cerrado para Θ ∪ {E} ∪ {¬O}, y<br />
III) Θ, E |= ⊥, es decir, no existe una refutación para Θ ∪ {E}. En definitiva, existe un árbol con<br />
una rama abierta y completa para Θ ∪ {E} (E es consistente con la teoría Θ).<br />
Ejemplo 3.4 [Aliseda] Sea el problema abductivo (Θ, O) donde: Θ = {p → q, (t ∧ s) → p} y O = q<br />
Construimos el árbol para Θ, que reutilizaremos para las tareas I), II) y III):
22 CAPÍTULO 3. DEMOSTRACIÓN AUTOMÁTICA EN LÓGICA ABDUCTIVA<br />
(p → q) 1<br />
(t ∧ s) → p 2<br />
✘ ❳❳<br />
¬p q<br />
✏ ❍ ✟ ❳ ❳<br />
¬(t ∧ s)3 p ¬(t ∧ s)4 p<br />
×<br />
¬t<br />
◦<br />
❅<br />
¬s<br />
◦<br />
¬t<br />
◦<br />
❅<br />
El árbol es abierto y completo y tiene cinco ramas abiertas y completas.<br />
¬s<br />
◦<br />
TΘ = {ρ1, ρ2, ρ3, ρ4, ρ5}<br />
donde= ρ1 = {¬p, ¬t}; ρ2 = {¬p, ¬s}; ρ3 = {q, ¬t}; ρ4 = {q, ¬s} y ρ5 = {q, p}. Por lo<br />
tanto, la teoría, Θ es consistente y cada rama abierta proporciona un modelo para ella.<br />
Comprobamos que el árbol para Θ ∪ {¬q} tiene una rama abierta y completa, es decir, que<br />
Θ|= q. Para ello, bastará con extender las ramas abiertas del árbol para Θ con ¬q:<br />
(p → q) 1<br />
(t ∧ s) → p 2<br />
✘ ❳❳<br />
¬p q<br />
✏ ❍ ✟ ❳ ❳<br />
¬(t ∧ s)3 p ¬(t ∧ s)4 p<br />
×<br />
❅<br />
¬t ¬s<br />
¬q ¬q<br />
◦1<br />
◦2<br />
Hemos concluido la tarea I) y obtenemos que el árbol para TΘ ∪{¬q} tiene dos ramas abiertas<br />
y completas:<br />
Ext(TΘ, {¬q}) = {ρ ′ 1, ρ ′ 2}<br />
donde ρ ′ 1 = {¬p, ¬t, ¬q} y ρ′ 2 = {¬p, ¬s, ¬q}. En consecuencia, disponemos de dos modelos<br />
para Θ ∪ {¬q}, los cuales nos indican cómo abordar la tarea de buscar las posibles<br />
“extensiones” de Θ a una nueva teoría Θ ′ de modo que Θ ′ |= O.<br />
La tarea II) es la búsqueda de explicaciones abductivas, E, lo cual nos conduce analizar cómo<br />
cerrar simultáneamente las ramas abiertas, es decir, la búsqueda de E tal que existe una<br />
refutación para Θ ∪ {E} ∪ {¬O}.<br />
Para que existan tales explicaciones atómicas o conjuntivas, la extensión Ext(TΘ, {¬q}) debe<br />
ser semicerrada (tiene al menos una rama abierta y al menos una rama cerrada), como lo es<br />
en este ejemplo. En efecto,<br />
¬t<br />
¬q<br />
×<br />
• si fuera cerrada, tendríamos que Θ |= O y, en consecuencia, (Θ, O) no sería un problema<br />
abductivo.<br />
• si fuera abierta, el número de ramas del árbol de la teoría, T , sería el mismo que el<br />
de Ext(TΘ, {¬O}). Sea {ℓ1, . . . , ℓn} el conjunto de literales que cierra Ext(TΘ, {¬O}).<br />
Tenemos dos posibilidades:<br />
❅<br />
¬s<br />
¬q<br />
×<br />
◦<br />
¬q ×
3.1. TABLAS SEMÁNTICAS PARA LA LÓGICA ABDUCTIVA 23<br />
◦ O ∈ {ℓ1, . . . , ℓn} 4 . En este caso, tendríamos que la explicación E es tal que E |= O,<br />
en contra de la definición de solución explicativa.<br />
◦ O ∈ {ℓ1, . . . , ℓn}. En este caso, tendríamos que {ℓ1, . . . , ℓn} cierra también al árbol<br />
de la teoría, Θ, y en consecuencia, Θ ∪ {E} no sería consistente, en contra de la<br />
definición de solución explicativa (que exige que sea consistente).<br />
Podemos ya buscar las soluciones explicativas, E, tanto atómicas, como conjuntivas. Ello nos<br />
conduce analizar cómo cerrar simultáneamente las ramas abiertas, es decir, la búsqueda de<br />
E tal que existe una refutación para Θ ∪ {E} ∪ {¬O}:<br />
• La rama ρ ′ 1<br />
• La rama ρ ′ 2<br />
cierra con cualquier subconjunto de {p, t, q}<br />
cierra con cualquier subconjunto de de {p, s, q}<br />
Puesto que toda explicación E debe satisfacer que E |= O, el cierre simultáneo de ambas<br />
ramas nos lleva a considerar los subconjuntos de {p, t, q} - {q} = {p, t} y los subconjuntos de<br />
{p, s, q} - {q} = {p, s}, es decir, las posibles explicaciones candidatas son:<br />
E1 = p; E2 = p ∧ t; E3 = p ∧ s; E4 = p ∧ t ∧ s y E5 = s ∧ t<br />
Abordamos por último la tarea III), es decir, analizar cuáles de estas Ei es consistente con<br />
Θ. En definitiva, comprobar cuáles de estas Ei satisfacen que Θ ∪ {Ei} tiene ramas abiertas.<br />
Puesto que las ramas abiertas de Θ son<br />
ρ1 = {¬p, ¬t}; ρ2 = {¬p, ¬s}; ρ3 = {q, ¬t}; ρ4 = {q, ¬s} y ρ5 = {q, p}<br />
las cinco Ei anteriores son consistentes con la teoría.<br />
Ahora procedemos como sigue:<br />
III.1) Si buscamos explicaciones atómicas, buscamos literales ℓ = Ei tales que:<br />
- Ext( Ext(TΘ, {¬O}), {ℓ} ) = ∅, es decir, ℓ ∈ Cl(Ext(TΘ, {¬O})),<br />
- ℓ ha de ser tal que no cierre TΘ<br />
- ℓ = O.<br />
En consecuencia, toda explicación atómica ℓ = Ei ha de satisfacer<br />
Ei ∈ [Cl(Ext(TΘ, {¬O})) ∩ Clpar(TΘ)] -{O} = [{p} ∩ {p, t, s, ¬p, ¬q}] -{q} = {p}<br />
Existe pues una única explicación atómica E1 = p.<br />
III.2) Si buscamos explicaciones conjuntivas, Ei = ℓ1 ∧ . . . ∧ ℓn, n > 1, cada rama de<br />
Ext(TΘ, {¬O}) debe cerrarse con al menos uno de los ℓi y ninguno de los ℓi debe cerrar<br />
completamente el árbol, por lo tanto, toda rama ρ ∈ Ext(TΘ, {¬O}) ha de satisfacer<br />
que<br />
Clpar(ρ) ∩ {ℓ1 ∧ . . . ∧ ℓn} = ∅<br />
Para conseguir esto, podemos elegir todos los conjuntos de literales ∆ que contienen un<br />
literal de los cierre parciales de cada una de las ramas y eliminar los ∆ no minimales (es<br />
decir, que esté contenido en otro).<br />
4 Recordemos que O es atómica
24 CAPÍTULO 3. DEMOSTRACIÓN AUTOMÁTICA EN LÓGICA ABDUCTIVA<br />
En el ejemplo, las ramas abiertas de TΘ ∪ {¬O} son ρ ′ 1 = {¬p, ¬t, ¬q} y ρ′ 2 =<br />
{¬p, ¬s, ¬q}; Clpar(ρ ′ 1 ) = {t} y Clpar(ρ ′ 2 ) = {s}. Por lo tanto, solo hay una explica-<br />
ción conjuntiva E4 = t ∧ s<br />
Ejemplo 3.5 Sea el problema abductivo (Θ, O) donde: Θ = {p, q → r, r → w, s → w} y O = w<br />
Construimos el árbol TΘ:<br />
¬s<br />
◦<br />
p<br />
(q → r) 1<br />
r → w 2<br />
s → w 3<br />
✘ ❳❳ r<br />
¬q<br />
✘ ❍ ✟ ❳ ❳<br />
¬r w ¬r w<br />
⊗<br />
❅ ❅ ❅<br />
w<br />
◦ ¬s<br />
◦ w ¬s<br />
◦ ◦<br />
El árbol es abierto y completo y tiene seis ramas abiertas.<br />
T = {ρ1, ρ2, ρ3, ρ4, ρ5, ρ6}<br />
donde= ρ1 = {p, ¬q, ¬r, ¬s}; ρ2 = {p, ¬q, ¬r, w}; ρ3 = {p, ¬q, w, ¬s}; ρ4 = {p, ¬q, w}; ρ5 =<br />
{p, r, w, ¬s} y ρ6 = {p, r, w}. Por lo tanto, la teoría, Θ es consistente y cada rama abierta<br />
proporciona un modelo para ella.<br />
Comprobamos que el árbol para Θ ∪ {¬w} tiene alguna rama abierta y completa, es decir,<br />
que Θ|= w. Para ello, bastará con extender las ramas abiertas del árbol para Θ con ¬w:<br />
p<br />
(q → r) 1<br />
r → w 2<br />
s → w 3<br />
✘ ❳❳ r<br />
¬q<br />
✘ ❍ ✟ ❳ ¬r w<br />
❅ ❅<br />
¬s w ¬s w<br />
❳<br />
¬r w<br />
⊗<br />
❅<br />
¬s w<br />
¬w<br />
◦<br />
¬w<br />
⊗<br />
¬w<br />
⊗<br />
¬w<br />
⊗<br />
¬w<br />
⊗<br />
¬w<br />
⊗<br />
= {p, ¬q, ¬r, ¬s, ¬w}. En consecuencia,<br />
Obtenemos que Ext(TΘ, {¬w}) = {ρ ′ 1 }, donde ρ′ 1<br />
disponemos de un modelo para Θ ∪ {¬w}, el cual nos indica como abordar la tarea de buscar<br />
las posibles “extensiones” de Θ a una nueva teoría Θ ′ de modo que Θ ′ |= O.<br />
Iniciamos la búsqueda de explicaciones abductivas, E, lo cual nos conduce analizar cómo cerrar<br />
la rama abierta, es decir, la búsqueda de E tal que existe una refutación para Θ∪{E}∪{¬O}.<br />
Para que existan tales explicaciones, la extensión Ext(T, {¬w}) debe ser semicerrada, como<br />
en este ejemplo. Ahora, tan solo tenemos que indagar cómo cerrar la rama abierta, es decir,<br />
la búsqueda de E tal que existe una refutación para Θ ∪ {E} ∪ {¬O}: La rama ρ ′ 1 cierra con<br />
cualquier subconjunto de {¬p, q, r, s, w}. Puesto que toda explicación E debe satisfacer que<br />
Θ ∪ {E} sea consistente y E |= O, el cierre de ρ ′ 1 nos lleva a considerar los subconjuntos de<br />
{q, r, s}, es decir, las posibles explicaciones candidatas son:<br />
E1 = q; E2 = r; E3 = s; E4 = q ∧ r; E5 = r ∧ s; E6 = q ∧ s; y E7 = q ∧ r ∧ s<br />
w<br />
◦
3.2. δ-RESOLUCIÓN 25<br />
3.2. δ-resolución<br />
En esta sección presentamos un método dual de la resolución, introducido por Fernando Soler<br />
Toscano en su Tesis Doctoral. 5<br />
Antes de describir el método, recordemos que,<br />
Una fbf, D, se dice que es un cubo si es ⊤, ⊥, un literal o una conjunción (posiblemente vacía)<br />
de literales.<br />
D es un cubo restringido si no contiene literales repetidos ni pares de literales opuestos. a<br />
El cubo vacío (conjunción vacía de literales) es una fbf válida, que representaremos por ♦.<br />
Una fbf es normal disyuntiva si es ⊤, ⊥, un cubo, o una disyunción (quizás vacía) de cubos. b<br />
Una fnd es restringida (abreviadamente, fndr), si cumple los siguientes requisitos:<br />
(i) Ningún cubo contiene un literal y su opuesto.<br />
(ii) Ningún cubo contiene literales repetidos.<br />
(iii) Ningún cubo contiene a otro.<br />
La forma normal disyuntiva vacía es insatisfacible.<br />
Podemos representar un cubo por el conjunto de sus literales y una fndr por el conjunto<br />
de sus cubos.<br />
Recordemos que para toda fbf, A ∈ Lprop existe una fnd, Afnd tal que A ≡ Afnd<br />
a En la bibliografía, se denomina también δ-cláusulas a los cubos. Nosotros les seguiremos llamando<br />
cubos, en co<strong>here</strong>ncia a nuestro estudio de la lógica clásica.<br />
b Las fnfs se denominan también forma δ-clausal en la bibliografía.<br />
El punto de partida del método de δ-resolución es el siguiente: Dado el problema abductivo<br />
(Θ, O), con Θ = {A1, . . . , An}, sabemos que, si E es una solución plana de dicho problema, ha de<br />
satisfacer que<br />
Θ, E |= O si y solo si E |= (A1 ∧ . . . ∧ An) → O<br />
La descripción E |= (A1 ∧ . . . An) → O nos destaca que la búsqueda de soluciones abductivas puede<br />
contemplarse como la búsqueda de implicantes de (A1 ∧ . . . An) → O.<br />
El método de δ-resolución se basa en esta segunda descripción. Como en el caso del método de<br />
resolución, el método exige que la entrada sea una forma normal, concretamente, una forma normal<br />
disyuntiva restringida (fndr). Así pues, la entrada será una fndr equivalente a (A1 ∧ . . . ∧ An) → O.<br />
El profesor Toscano ilustra la adecuación de la descripción E |= (A1 ∧ . . . ∧ An) → O con el<br />
siguiente ejemplo tomado de A. Kakas, R. Kowalski y F. Toni: Consideremos que el lenguaje consta<br />
de las siguientes variables proposicionales:<br />
a expresa “los aspersores regaron anoche”<br />
l expresa “llovió anoche”<br />
c expresa “el césped está mojado”, y<br />
z expresa “los zapatos se mojan”.<br />
5 Dirigida por el profesor Ángel Nepomuceno.
26 CAPÍTULO 3. DEMOSTRACIÓN AUTOMÁTICA EN LÓGICA ABDUCTIVA<br />
Sea la teoría: Θ = {a → c, l → c, c → z}:<br />
“si los aspersores han regado, el césped estará mojado”;<br />
“si anoche llovió, entonces el césped estará mojado”, y<br />
“si es césped se moja, los zapatos de mojan”.<br />
Consideremos que observamos que “los zapatos están mojados”, es decir, O = z y deseamos<br />
saber si nuestra teoría consigue explicar z, es decir, consideramos el problema abductivo (Θ, O) y<br />
deseamos buscar explicaciones, E, tales que<br />
E |= ((l → c) ∧ (a → c) ∧ (c → z)) → z<br />
Un modo fácil de buscar, E, es decir, de buscar implicantes de ((l → c) ∧ (a → c) ∧ (c → z)) → z<br />
es construir la forma normal disyuntiva restringida de la fbf<br />
que no es más que la fndr:<br />
((l → c) ∧ (a → c) ∧ (c → z)) → z (†)<br />
(l ∧ ¬c) ∨ (a ∧ ¬c) ∨ (c ∧ ¬z) ∨ z (††)<br />
Obviamente, todos los cubos en la fndr (††) son explicaciones de nuestra observación. Pero aún<br />
podemos encontrar nuevos de implicantes de (†). Para ello, podemos usar la regla dual de la “Regla<br />
de resolución”. Recordemos que dicha regla es un caso particular de la ley<br />
(X ∨ Z) ∧ (Y ∨ ¬Z) |= X ∨ Y (Resolv)<br />
X ∨ Y ∈ Iα((X ∨ Z) ∧ (Y ∨ ¬Z)). Ahora estamos interesados no en implicados, sino en implicantes.<br />
Por lo tanto, podemos usar la ley dual a Resolv, es decir, la ley:<br />
X ∧ Y |= (X ∧ Z) ∨ (Y ∧ ¬Z) (δ-Resolv)<br />
Ahora, X ∧ Y ∈ Iβ((X ∧ Z) ∨ (Y ∧ ¬Z)), por lo tanto, podemos hacer uso de ella para la<br />
búsqueda de soluciones abductivas.<br />
En el ejemplo anterior, para buscar implicantes de (l ∧ ¬c) ∨ (a ∧ ¬c) ∨ (c ∧ ¬z) ∨ z (††) podemos<br />
proceder como sigue:<br />
1. l ∧ ¬c cubo en (††)<br />
2. a ∧ ¬c cubo en (††)<br />
3. c ∧ ¬z cubo en (††)<br />
4. z cubo en (††)<br />
5. c δ-Resolv de 3 y 4<br />
6. a δ-Resolv de 2 y 5<br />
7. l δ-Resolv de 1 y 5
3.2. δ-RESOLUCIÓN 27<br />
Por lo tanto, c, l y a ∈ Iβ((l ∧ ¬c) ∨ (a ∧ ¬c) ∨ (c ∧ ¬z) ∨ z) son posibles explicaciones.<br />
Vamos pues a describir el método.<br />
La entrada es una fndr equivalente a ¬(A1 ∧ . . . ∧ An) ∨ O), es decir, un conjunto finito de cubos<br />
Ω = {D1, . . . , Dm} y a partir de él, va generando, en cada ejecución, un nuevo conjunto de cubos<br />
Ω ′ = {D1, . . . , Dm, D}, tal que:<br />
D |= D1 ∨ . . . ∨ Dm<br />
Para derivar nuevos cubos a partir de Ω, el método utiliza una única regla de inferencia llamada<br />
regla de δ-resolución, que no es más que la particularización a cubos de la ley δ-Resolv<br />
destacada anteriormente:<br />
X ∧ Y |= (X ∧ Z) ∨ (Y ∧ ¬Z)<br />
Definición 3.12 [Regla de δ-resolución] Dadas los cubos D1 ∪ {ℓ} y D2 ∪ {¬ℓ}, llamamos regla<br />
de δ-resolución a la siguiente:<br />
D1 ∪ {ℓ} D2 ∪ {¬ℓ}<br />
D1 ∪ D2<br />
Decimos que D1∪{ℓ} y D2∪{¬ℓ} son δ-resolubles respecto a ℓ y que D1∪D2 es una δ-resolvente<br />
de D1 ∪ {ℓ} y D2 ∪ {¬ℓ} respecto de ℓ y la denotamos R δ ℓ (D1 ∪ {ℓ}, D2 ∪ {¬ℓ}).<br />
❡❡ <br />
Advirtamos que si D1 y D2 son δ-resolubles respecto a dos literales ℓ1 y ℓ2, entonces ℓ2, ¬ℓ2 ∈<br />
Rδ ℓ1 (D1, D2) y ℓ1, ¬ℓ1 ∈ Rδ ℓ2 (D1, D2), es decir, en ambos casos, Rδ ℓ1 (D1, D2) ≡ ⊥ ≡ Rδ ℓ2 (D1, D2).<br />
Por lo tanto, estamos solo interesados en los cubos δ resolubles respecto a un único literal y, en<br />
consecuencia, eliminaremos el subíndice ℓ de la expresión de la δ-resolvente, denotando tan solo<br />
Rδ (D1, D2).<br />
Como indica la ley δ-Resolv, tenemos el siguiente resultado:<br />
Proposición 3.1 Si dos cubos D1 y D2 son δ-resolubles, entonces R δ (D1, D2) |= D1 ∨ D2<br />
Es decir, R δ (D1, D2) ∈ Iβ(D1 ∨ D2).<br />
Definición 3.13 Si Ω = {D1, . . . , Dn} es un conjunto de cubos y D es un cubo, se dice que D es<br />
deducible por δ-resolución a partir de Ω, denotado Ω ⊢δ D, si existe una secuencia finita de<br />
cubos D1, D2, · · · , Dk tal que<br />
1. Cada Di (1 ≤ i ≤ n) es o bien un cubo de Ω o bien una δ-resolvente de dos cubos anteriores<br />
en la secuencia.<br />
2. Dk = D.<br />
La secuencia Di (1 ≤ i ≤ k) se dice que es una derivación por δ-resolución de D a partir<br />
de Ω.
28 CAPÍTULO 3. DEMOSTRACIÓN AUTOMÁTICA EN LÓGICA ABDUCTIVA<br />
❡❡ Advirtamos que Ω ⊢δ D si y solo si D |= D1 ∨ . . . ∨ Dk<br />
¿Qué podemos afirmar en el caso en que ♦ es derivable por δ-resolución a partir de Ω? En<br />
este caso, la secuencia de cubos que nos proporciona ♦ se denomina validación de Ω y el lector<br />
ya habrá concluido el siguiente resultado:<br />
Teorema 3.4 Dado un conjunto finito de cubos Ω = {D1, . . . , Dm}, se tiene que:<br />
D1 ∨ . . . ∨ Dm es válida si y solo si Ω ⊢δ ♦<br />
Ejemplo 3.6 Dado el conjunto de cubos Ω = {p ∧ q, p ∧ r, ¬q ∧ ¬r, ¬p}, se tiene que la fbf<br />
(p ∧ q) ∨ (p ∧ r) ∨ (¬q ∧ ¬r) ∨ ¬p<br />
es una fbf válida. Comprobémoslo usando el método de δ-resolución:<br />
1. p ∧ q<br />
2. p ∧ r<br />
3. ¬q ∧ ¬r<br />
4. ¬p<br />
5. p ∧ ¬r R δ (1, 3)<br />
6. q R δ (1, 4)<br />
7. p ∧ ¬q R δ (2, 3)<br />
8. r R δ (2, 4) R δ (Ω) = Ω ∪ {p ∧ ¬r, q, p ∧ ¬q, r}<br />
9. ¬r R δ (3, 6)<br />
10. ♦ (8,9)<br />
Basándonos en el teorema 3.4, el método funciona generando cubos a partir del conjunto de<br />
cubos inicial, Ω, hasta derivar ♦ o bien hasta concluir que ♦ no se puede generar a partir de Ω<br />
mediante δ-resolución.<br />
Recordemos que nuestro objetivo es aplicar el método para obtener soluciones para el problema<br />
abductivo (Θ, O), donde Θ = {A1, . . . , An} y que para ello, partimos de una fndr equivalente a<br />
(A1 ∧ . . . An) → O, es decir, una fndr equivalente a ¬A1 ∨ . . . ∨ ¬An ∨ O.<br />
En definitiva, aplicar el método para obtener soluciones planas del problema abductivo (Θ, O)<br />
con Θ = {A1, . . . , An}, es decir, buscar implicantes de (A1 ∧ . . . ∧ An) → O ≡ ¬A1 ∨ ¬An ∨ O,<br />
requiere:<br />
Obtener una fndr equivalente a ¬Ai, para 1 ≤ i ≤ n. Sea esta {D i 1 , . . . , Di mi }.<br />
Obtener una fndr equivalente a O. Sea esta {D O<br />
1 , . . . , DO m }.<br />
O<br />
En la unión<br />
n<br />
i=1<br />
{D i 1, . . . , D i mi } ∪ {DO 1 , . . . , D O<br />
m }<br />
O<br />
eliminar los cubos tal que existe uno al que subsumen<br />
De esta forma, obtenemos un conjunto de cubos {D1, . . . , Dm}.
3.2. δ-RESOLUCIÓN 29<br />
Notación<br />
Dado un conjunto de cubos Ω = {D1, . . . , Dk}, denotamos<br />
ˆΩ = D1 ∨ . . . ∨ Dk<br />
Por definición de problema abductivo, Θ |= O, es decir, que (A1 ∧ . . . An) → O no es una fbf válida.<br />
Por lo tanto, si Ω = {D1, . . . , Dk} es una fndr equivalente a (A1 ∧ . . . An) → O, conocemos que<br />
ˆΩ = D1 ∨ . . . ∨ Dk no es válida. El siguiente resultado nos proporciona un criterio de no validez:<br />
Teorema 3.5 Dado un conjunto finito de cubos Ω = {D1, . . . , Dk}, si Di, Dj ∈ Ω son δ-resolubles<br />
entonces<br />
Y, en consecuencia:<br />
ˆΩ no es válida si y solo si ˆ Ω ∨ R δ (Di, Dj) no es válida.<br />
Ω ⊢δ ♦ si y solo si Ω ∪ {R δ (Di, Dj) | Di, Dj ∈ Ω} ⊢δ ♦.<br />
3.2.0.2. Árboles semánticos para un conjunto de cubos<br />
Recordemos el concepto de árbol semántico:<br />
Dada una secuencia de símbolos de proposición ∆ = [p1, p2, . . . , pn, . . .] un árbol semántico<br />
respecto de ∆ es un árbol binario que satisface las condiciones siguientes:<br />
1. Cada arco está etiquetado con un literal pi o ¬pi donde pi ∈ ∆.<br />
2. Los literales que etiquetan dos arcos que nacen del mismo nodo son opuestos.<br />
3. Ninguna rama contiene más de una ocurrencia de cada pi ∈ ∆.<br />
En lo que sigue, Ω = {D1, . . . , Dk} es un conjunto finito de cubos y [p1, . . . , pn] una ordenación<br />
del conjunto de los símbolos proposicionales que intervienen en Ω.<br />
Definición 3.14 Un nodo N de un árbol semántico respecto de [p1, . . . , pn] para un conjunto<br />
finito de cubos, Ω = {D1, . . . , Dk}, se denomina nodo éxito si su interpretación IN asociada es<br />
tal que IN(Di) = 1 para algún cubo Di ∈ Ω pero ninguna de las interpretaciones asociadas a sus<br />
ascendientes posee esta propiedad.<br />
Un nodo éxito, N, nos proporciona una interpretación (parcial) IN que satisface a ˆ Ω. Por lo<br />
tanto, no es preciso considerar las extensiones de IN.<br />
Un árbol semántico respecto de [p1, . . . , pn] se dice cerrado si todas sus hojas son nodos éxito.<br />
Un nodo N de un árbol semántico respecto de [p1, . . . , pn] se denomina un δ-nodo inferencia<br />
si sus dos descendientes inmediatos son nodos éxito.<br />
Ejemplo 3.7 Dado Ω = {p, q ∧ r, ¬p ∧ ¬q, ¬p ∧ ¬r}, la figura muestra un árbol semántico cerrado<br />
para Ω respecto de [p, q, r]
30 CAPÍTULO 3. DEMOSTRACIÓN AUTOMÁTICA EN LÓGICA ABDUCTIVA<br />
•❛<br />
¬p ❛❛❛❛❛❛❛ p<br />
✦✦✦✦✦✦✦✦ •❍<br />
❍❍❍❍❍❍<br />
I6(p) = 1<br />
✟ ✟✟✟✟✟✟<br />
•<br />
¬q q<br />
• • (∗)<br />
I2(¬p ∧ ¬q) = 1<br />
❅<br />
❅<br />
❅❅<br />
<br />
¬r r<br />
•<br />
•<br />
I4(¬p ∧ ¬r)=1 I5(q ∧ r) = 1<br />
En este árbol solo el nodo marcado con (∗) es un δ-nodo inferencia.<br />
Lema 3.1 Sea N un δ-nodo inferencia de un árbol semántico de Ω = {D1, . . . , Dk} respecto<br />
[p1, . . . , pn], y sean Di, Dj ∈ Ω cubos a las que asignan el valor de verdad 1 las interpretaciones<br />
asociadas al descendiente derecho de N, Nd y al descendiente izquierdo de N, Ni, respectivamente.<br />
Si l y l son los literales que etiquetan los arcos que parten de N, entonces IN(R δ (Di, Dj)) = 1. En<br />
particular, N es un nodo éxito del árbol semántico respecto de [p1, . . . , pn] para Ω ∪ {R δ (Di, Dj)}.<br />
Demostración: Supongamos que N no es un nodo éxito del árbol semántico respecto de [p1, . . . , pn]<br />
para Ω ∪ {R δ (Di, Dj)}. Entonces, la interpretación I asociada a N es tal que IN(R δ (Di, Dj)) = 0<br />
y por lo tanto, se tiene una de las situaciones siguientes:<br />
1. La interpretación INi asociada al descendiente izquierdo de N es una extensión de IN tal que<br />
INi (Di) = 0.<br />
2. La interpretación INd asociada al descendiente derecho de N es una extensión de IN tal que<br />
INd (Dj) = 0<br />
Por lo tanto, alguno de los dos descendientes inmediatos de N no será nodo éxito, en contra de la<br />
hipótesis de que N es un δ-nodo inferencia.<br />
Teorema 3.6 El método de δ-resolución es:<br />
Correcto: dado un conjunto finito de cubos Ω = {D1, . . . , Dk}, si existe una validación por<br />
δ-resolución de Ω, entonces ˆ Ω = D1 ∨ . . . ∨ Dk es válida.<br />
Completo: si un conjunto finito de cubos Ω = {D1, . . . , Dk} es tal que ˆ Ω = D1 ∨ . . . ∨ Dk es<br />
válida, entonces existe una validación por δ-resolución de Ω.<br />
Demostración: Supongamos que D ′ 1 , D′ 2 , . . . , D′ l , ♦ es una validación por δ-resolución de ♦ a<br />
partir de Ω. Si ˆ Ω = D1 ∨ . . . ∨ Dk no fuera válida, existiría un interpretación I tal que I(D1 ∨ . . . ∨<br />
Dk) = 0, es decir, I(Di) = 0 para todo cubo Di ∈ Ω. Puesto que Dj1 , Dj2 |=δ Rδ (Dj1 , Dj2 ), se<br />
tendría I(D ′ i ) = 0 para todo cubo D′ i de la secuencia D′ 1 , D′ 2 , . . . , D′ l , ♦, y, en particular, I(♦) = 0<br />
lo cual es imposible.<br />
Recíprocamente, si ˆ Ω = D1∨. . .∨Dk es válida y [p1, . . . , pn] es una ordenación del conjunto de los<br />
símbolos proposicionales que intervienen en Ω, el árbol semántico completo respecto a [p1, . . . , pn]
3.2. δ-RESOLUCIÓN 31<br />
nos permite (por ser ˆ Ω válida) obtener un árbol semántico cerrado T para Ω. Si T es un árbol<br />
de un solo nodo, entonces ♦ ∈ Ω pues, en otro caso, se requiere al menos el primer nivel del<br />
árbol semántico para acceder a un nodo éxito. Por lo tanto, si ♦ ∈ Ω, la secuencia de un solo<br />
elemento ♦ es una validación por δ-resolución de Ω. En cambio, si T no es un árbol de un solo<br />
nodo, existe entonces al menos un δ-nodo inferencia, o de lo contrario todo nodo del árbol tendría<br />
un descendiente no éxito, lo cual es imposible por tratarse T de un árbol cerrado.<br />
Sea, pues, N un nodo tal, y N1 y N2 sus descendientes inmediatos; entonces ambos son nodos<br />
éxito. Por tanto, existen cubos Dj1 , Dj2 en [D1, . . . , Dk] (una ordenación de los elementos de Ω)<br />
tales que IN1 (Dj1 ) = IN2 (Dj2 ) = 1. Sea l el literal del arco que va de N a N1 y l el literal opuesto<br />
que etiqueta el arco que va de N a N2, entonces por el lema previo a este teorema resulta que<br />
IN(Rδ (Dj1 , Dj2 )) = 1.<br />
Consideremos ahora el camino que va desde la raíz del árbol hasta N y eliminemos los arcos y<br />
nodos debajo del primer nodo de dicho camino que cumpla que el cubo Rδ (Dj1 , Dj2 ) es verdadero<br />
en la interpretación parcial asociada a dicho nodo. Obtenemos así un árbol semántico cerrado T ′<br />
para [D1, . . . , Dk] ∪ {Rδ (Dj1 , Dj2 )} que es un subárbol estricto de T . Ahora, aplicamos este mismo<br />
proceso en T ′ obteniendo como resultado un subárbol estricto de T ′ y una extensión del conjunto<br />
de cubos anterior de manera similar. Procedemos así sucesivamente de modo que, en un número<br />
finito de etapas, obtendremos una secuencia cuyo árbol semántico cerrado es un árbol de un solo<br />
nodo y cuyo último elemento es ♦, es decir, obtenemos una validación por δ-resolución de Ω.<br />
El modo habitual de representar las derivaciones por δ-resolución a partir de un conjunto Ω de<br />
cubos es mediante un árbol binario, llamado árbol de δ-resolución:<br />
Definición 3.15 Un árbol de δ-resolución para un conjunto finito de cubos Ω es un árbol<br />
caracterizado como sigue:<br />
1. Cada nodo no hoja tiene dos descendientes inmediatos.<br />
2. Cada nodo hoja está etiquetado por un cubo de Ω.<br />
3. Cada nodo no hoja está etiquetado por una δ-resolvente de las etiquetas de sus descendientes<br />
inmediatos.<br />
Por definición, resulta obvio el siguiente teorema:<br />
Teorema 3.7 Si D es la etiqueta de la raíz de un árbol de δ-resolución para Ω, entonces Ω ⊢δ D.<br />
Si D es ♦, el árbol se dice que es un árbol de validación para Ω.<br />
Ejemplo 3.8 A continuación se presenta un árbol de validación para el conjunto de cubos<br />
Ω = {p ∧ q, ¬q ∧ r, ¬p ∧ r, ¬r}
32 CAPÍTULO 3. DEMOSTRACIÓN AUTOMÁTICA EN LÓGICA ABDUCTIVA<br />
p ∧ q ¬p ∧ r ¬r ¬q ∧ r ¬r<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
❅ ❅<br />
❅<br />
❅❅<br />
❅<br />
❅<br />
❅ <br />
❅<br />
❅<br />
❅<br />
❅<br />
❅<br />
❅❅<br />
<br />
<br />
<br />
<br />
❅ ❅<br />
❅ ¬p ¬q<br />
q<br />
♦<br />
En general, para todo conjunto finito de cubos, Ω, existen validaciones distintas para Ω. El<br />
siguiente árbol muestra una nueva validación para el conjunto de cubos del ejemplo anterior<br />
¬p ∧ r ¬r p ∧ q ¬q ∧ r ¬r<br />
<br />
<br />
<br />
<br />
<br />
<br />
❅ ❅<br />
¬p❅<br />
❅<br />
❅<br />
q❅<br />
❅<br />
❅<br />
r❅<br />
❅<br />
❅ ♦<br />
3.2.1. δ-Resolución como algoritmo<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
Si el conjunto de cubos, Ω, cuya validez estamos estudiando es finito, el conjunto de las variables<br />
proposicionales que ocurren en Ω también es finito y por lo tanto, también es finito el conjunto de δresolventes<br />
que podemos obtener, ya que éstas deben ser cubos restringidos (sin literales repetidos)<br />
y, en cada aplicación de la regla de δ-resolución, el cubo obtenido tiene un literal menos.<br />
En consecuencia, es posible generar todas las δ-resolventes, lo que nos lleva al algoritmo básico<br />
construido sobre la regla de δ-resolución: generar sistemáticamente todas las δ-resolventes a partir<br />
de un conjunto finito de cubos dado, Ω = {D1, . . . , Dk}. Si Ω conjunto contiene el cubo vacío,<br />
ˆΩ = D1 ∨ . . . ∨ Dk es válida, en caso contrario, no lo es.<br />
En definitiva, dado un conjunto de cubos Ω, denotamos por R δ 1 (Ω) la unión de Ω y el conjunto<br />
de todas las δ-resolventes de cubos de Ω (δ-resolventes obtenidas utilizando solo cubos de Ω). Para
3.2. δ-RESOLUCIÓN 33<br />
todo n ∈ N, definimos R δ n(Ω) como sigue:<br />
R δ 0(Ω) = Ω<br />
Por definición, es claro que R δ n(Ω) ⊆ R δ n+1 (Ω).<br />
R δ n+1(Ω) = R δ (R δ n(Ω))<br />
El algoritmo de δ-resolución construye sucesivamente Rδ 1 (Ω), Rδ 2 (Ω) . . .. Si existe un k ∈ N tal<br />
que ♦ ∈ Rδ k (Ω) entonces, la disyunción de los cubos en Ω es válida. En caso contrario, no lo es.<br />
Como en el caso del método de resolución, el algoritmo propuesto finaliza al cabo de un número<br />
finito de etapas, es decir:<br />
Teorema 3.8 Dado un conjunto de cubos, Ω, existe m ∈ N tal que<br />
R δ n(Ω) = R δ m(Ω) para todo n ≥ m<br />
Puesto que el objetivo es comprobar la validez de la disyunción de un conjunto Ω de cubos, cuando<br />
obtengamos ♦, paramos la construcción de la secuencia<br />
R δ 1(Ω), R δ 2(Ω), . . . , R δ m(Ω)<br />
Si la disyunción de los cubos de Ω no es válida, será necesario construir conjuntos R δ n(Ω) hasta<br />
que, en alguno de los pasos no se generen nuevos cubos, lo cual indicará que el cubo vacío ♦<br />
no se puede deducir por δ-resolución a partir de Ω. Si eliminamos en él los cubos insatisfacibles<br />
(ya que D ∨ ⊥ ≡ D) y los cubos, D ′ , que subsumen (incluyen) a otro, D (ya que, en tal caso,<br />
D ∨ D ′ ≡ D), obtenemos el método llamado δ-resolución por saturación. Al conjunto final<br />
de cubos obtenidos a partir de un conjunto Ω de cubos tras aplicar el método de δ-resolución por<br />
saturación, lo denotaremos por Ω δ .<br />
El método de δ-resolución por saturación nos asegura que los cubos obtenidos son minimales<br />
en el sentido de la siguiente definición:<br />
Definición 3.16 [δ-resolvente minimal] Decimos que un cubo, D, es una δ-resolvente minimal<br />
de un conjunto de cubos, Ω = {D1, . . . , Dk}, si y solo si se satisfacen las tres condiciones<br />
siguientes:<br />
1. D es satisfacible, es decir, no contiene literales complementarios.<br />
2. Ω ⊢δ D,<br />
3. No existe ningún cubo D ′ tal que D ′ ⊂ D 6 y Ω ⊢δ D ′ .<br />
El siguiente ejemplo muestra cómo aplicar el método de de δ-resolución por saturación.<br />
Ejemplo 3.9 Dado Ω = {p ∧ q, p ∧ r, ¬q ∧ ¬r, ¬p}, mostramos una validación de que Ω usando<br />
el método de δ-resolución descrito, denominado δ-resolución por saturación: Generamos<br />
sistemáticamente todas las posibles δ-resolventes, comprobando si cada cubo es δ-resoluble con<br />
“todos” los demás y comprobando si cada nueva δ-resolvente es a su vez resoluble con todos los<br />
demás.<br />
6 Donde consideramos cada cubo como un conjunto de literales
34 CAPÍTULO 3. DEMOSTRACIÓN AUTOMÁTICA EN LÓGICA ABDUCTIVA<br />
−− 1. p ∧ q<br />
−− 2. p ∧ r<br />
−− 3. ¬q ∧ ¬r<br />
−− 4. ¬p<br />
−− 5. p ∧ ¬r Rδ (1,3)<br />
−− 6. q Rδ(1,4) (tacha 1 porque lo contiene)<br />
−− 7. p ∧ ¬q Rδ(2,3)<br />
−− 8. r Rδ(2,4) (tacha 2 porque lo contiene)<br />
−− 9. ¬r Rδ(3,6) (tacha 3 y 7 porque lo contienen)<br />
10. ♦ Rδ(8,9) (tacha 4,6,8 y 9 porque lo contienen)<br />
3.2.1.1. Búsqueda de soluciones explicativas mediante δ-resolución<br />
En esta sección, aplicamos el método de δ-resolución a la búsqueda de soluciones explicativas<br />
de un problema abductivo. Consideremos un problema abductivo (Θ, O), con Θ = {A1, . . . , An}<br />
(Θ una teoría contingente y O una observación contingente). Buscamos soluciones explicativas<br />
conjuntivas, E = ℓ1 ∧ . . . ∧ ℓk.<br />
En la sección anterior hemos visto que aplicando el método de δ-resolución por saturación a una<br />
fnd equivalente a (A1 ∧ . . . ∧ An) → O obtenemos soluciones planas y minimales del problema<br />
abductivo (Θ, O). Nos queda pues determinar cómo obtener soluciones explicativas, es decir, las<br />
explicaciones E tales que satisfagan las condiciones:<br />
Θ, E |= ⊥ (Consistentes con Θ)<br />
E |= O (E es una solución que requiere a Θ)<br />
1. La condición de consistencia, nos lleva a exigir que Θ, E |= ⊥, es decir, Θ |= ¬E, es decir,<br />
Θ |= ¬ℓ1 ∨ . . . ∨ ¬ℓk.<br />
Supongamos que Θ = {A1, . . . , An}. Esta condición es equivalente a<br />
|= ¬A1 ∨ . . . ∨ ¬An ∨ ¬ℓ1 ∨ . . . ∨ ¬ℓk<br />
Supongamos que {D ¬ Θ<br />
1 , . . . , D ¬ Θ<br />
nΘ } es una fndr equivalente a ¬A1 ∨ . . . ∨ ¬An. La condición<br />
de consistencia nos lleva a exigir que,<br />
esta exigencia es equivalente a la siguiente:<br />
|= D ¬ Θ<br />
1 ∨ . . . ∨ D ¬ Θ<br />
nΘ ∨ ¬ℓ1 ∨ . . . ∨ ¬ℓk
3.2. δ-RESOLUCIÓN 35<br />
Para todo D ¬ Θ<br />
i , con 1 ≤ i ≤ n Θ se tiene que en D ¬ Θ<br />
i ⊆ {ℓ1, . . . , ℓk} CONS<br />
2. Para que E sea explicativa, hemos de exigir que E |= O, es decir, |= E → O, es decir,<br />
|= O ∨ ¬E ≡ O ∨ ¬ℓ1 ∨ . . . ∨ ¬ℓk.<br />
Si D O<br />
1<br />
∨ . . . ∨ DO<br />
nO<br />
es una fndr equivalente a O, esta exigencia es equivalente a la siguiente:<br />
|= D O<br />
1<br />
Para todo D O<br />
i , con 1 ≤ i ≤ n O<br />
∨ . . . ∨ DO<br />
nO ∨ ¬ℓ1 ∨ . . . ∨ ¬ℓk.<br />
se tiene que en DO<br />
i ⊆ {ℓ1, . . . , ℓk} EXPL<br />
Denotaremos por Abδ(Θ, O) el conjunto de soluciones explicativas minimales al problema<br />
abductivo (Θ, O)<br />
Por lo tanto, los pasos a seguir para la búsqueda de soluciones explicativas minimales de un<br />
problema abductivo (Θ, O) con Ω = {A1, . . . , An} son los siguientes:<br />
1. Hallar F NDr(¬A1 ∨ . . . ∨ An) = Ω ¬Θ<br />
2. Hallar F NDr(O) = Ω O<br />
= {D O<br />
1 , . . . , DO<br />
nO },<br />
3. Hallar F NDr(¬A1 ∨ . . . ∨ ¬An ∨ O) = Ω ¬Θ∪O<br />
Y proceder como sigue:<br />
= {D ¬ Θ<br />
1 , . . . , D ¬ Θ<br />
nΘ },<br />
= {D ¬Θ∪O<br />
1 , . . . , D ¬Θ∪O<br />
n },<br />
¬Θ∪O<br />
I) Aplicar δ-resolución por saturación a Ω ¬Θ∪O<br />
, obteniendo así las posibles soluciones planas<br />
minimales.<br />
II) De entre estas soluciones, E = ℓ1 ∧. . .∧ℓk, seleccionar las que cumplen (CONS) y (EXPL).<br />
Ejemplo 3.10 Θ = {p → q, t → s, m → (p ∧ t)}; O = q ∧ s<br />
I) Obtenemos Ω ¬Θ∪O<br />
y le aplicamos δ-resolución por saturación:<br />
I.1) ¬(p → q) ∨ ¬(t → s) ∨ ¬(m → (p ∧ t)) ≡ (p ∧ ¬q) ∨ (t ∧ ¬s) ∨ (m ∧ ¬p) ∨ (m ∧ ¬t). Por<br />
lo tanto: Ω ¬Θ<br />
= {p ∧ ¬q, t ∧ ¬s, m ∧ ¬p, m ∧ ¬t}.<br />
I.2) Ω O = {q ∧ s}<br />
I.3) Ω ¬Θ∪O<br />
= {p ∧ ¬q, t ∧ ¬s, m ∧ ¬p, m ∧ ¬t, q ∧ s}<br />
I.4) Aplicamos δ-resolución por saturación a Ω ¬Θ∪O<br />
y obtenemos las siguientes soluciones<br />
planas minimales:<br />
{p ∧ ¬q, t ∧ ¬s, q ∧ s, p ∧ s, q ∧ t, p ∧ t, m}
36 CAPÍTULO 3. DEMOSTRACIÓN AUTOMÁTICA EN LÓGICA ABDUCTIVA<br />
II) Eliminamos de estas explicaciones las que no satisfacen (CONS), que son p ∧ ¬q y t ∧ ¬s, y<br />
obtenemos las soluciones consistentes minimales:<br />
{q ∧ s, p ∧ s, q ∧ t, p ∧ t, m}<br />
Finalmente, eliminamos de estas soluciones las que no satisfacen (EXPL) y la única a eliminar<br />
es q ∧ s. Por lo tanto, obtenemos las soluciones explicativas minimales:<br />
Abδ(Θ, O) = {p ∧ s, q ∧ t, p ∧ t, m}
Capítulo 4<br />
<strong>Logica</strong> abductiva de primer orden<br />
En este capítulo centramos nuestro estudio en el razonamiento abductivo en la lógica de primer<br />
orden. En este ámbito, consideraremos razonamientos tales como:<br />
(∀x)(P (x) → Q(x)), Q(a), |=abd P (a)<br />
Así, por ejemplo, si conocemos que “todo el que tiene gripe tiene fiebre, dolor muscular y falta de<br />
apetito” y conocemos que “Cecilia tiene fiebre, dolor muscular y falta de apetito”, hay razones para<br />
suponer que “Cecilia tiene gripe”.<br />
Nuestro ejemplo de razonamiento puede simbolizarse en la lógica de primer orden como sigue:<br />
P (x): x tiene gripe<br />
Q(x): x tiene fiebre<br />
S(x): x tiene dolor muscular<br />
T (x): x tiene falta de apetito<br />
c: Cecilia.<br />
Con esta signatura, podemos simbolizar el razonamiento abductivo por:<br />
(∀x)(P x → ((Q(x) ∧ S(x)) ∧ T (x)))<br />
((Q(c) ∧ S(c)) ∧ T (c))<br />
P (c)<br />
La lógica clásica de primer orden, como sabemos, permite captar más detalles del lenguaje<br />
natural que la lógica clásica proposicional. Para ello, considera en los enunciados atómicos la estructura<br />
predicativa, que permite diferenciar “qué se predica” , de “qué” o “quién” se predica, y<br />
permite expresar que una cierta propiedad la satisface un ente concreto, todos los entes, algún<br />
ente o ningún ente de un determinado universo del discurso. En consecuencia, el alfabeto de los<br />
lenguajes de primer orden disponen de símbolos que permiten:<br />
representar elementos arbitrarios del dominio o universo del discurso, por medio de símbolos<br />
de variable.<br />
representar elementos específicos del universo del discurso, mediante símbolos de constante.<br />
37<br />
Abd
38 CAPÍTULO 4. LOGICA ABDUCTIVA DE PRIMER ORDEN<br />
representar generadores de elementos del universo del discurso a partir de uno o varios elementos<br />
de dicho universo, por medio de símbolos de función.<br />
expresar que nos referimos a algunos o a todos los elementos del universo del discurso, por<br />
medio de símbolos de cuantificación o cuantificadores.<br />
expresar propiedades o relaciones entre los elementos del universo del discurso, por medio de<br />
símbolos de predicado.<br />
Así pues, el alfabeto de un lenguaje de primer orden consta de los siguientes símbolos:<br />
1. Los conectivos de la lógica proposicional ¬, →, ∧, ∨ y ↔.<br />
2. Los símbolos lógicos ⊤ y ⊥.<br />
3. Los símbolos de cuantificación ∀ (universal) y ∃ (existencial).<br />
4. Los símbolos de puntuación “(”, “)”, “[”, “]”, “{”, “}” y “,”.<br />
5. Un conjunto infinito numerable, V = {x, y, z, v, . . . , x1, y1, z1, v1, . . . , xn, yn, zn, vn, . . .}, de<br />
símbolos de variables.<br />
6. Un conjunto numerable (posiblemente vacío), C = {a, b, c, . . . , a1, b1, c1, . . . , an, bn, cn, . . .}, de<br />
símbolos de constante.<br />
7. Un conjunto numerable (posiblemente vacío), F = {f, g, h, . . . , f1, g1, h1, . . . , fn, gn, hn, . . .},<br />
de símbolos de función y una función r1 que asigna a cada símbolo de función un elemento<br />
de N ∗ llamado su aridad (que representa el número de argumentos).<br />
8. Un conjunto numerable y no vacío, P = {P, Q, R, . . . , P1, Q1, R1, . . . , Pn, Qn, Rn, . . .}, de<br />
símbolos de predicado y una función r2 que asigna a cada símbolo de predicado un elemento<br />
de N ∗ llamado su aridad (que representa el número de argumentos).<br />
Los símbolos referidos en 1, 2, 3, 4 y 5 son comunes a todos los lenguajes de primer orden. Por<br />
otra parte, cada elección de los conjuntos C, F y P proporciona un lenguaje específico de primer<br />
orden. Tal elección viene determinada por la aplicación que se pretende.<br />
Supondremos que los conjuntos V, C, F y P son disjuntos dos a dos.<br />
Definición 4.1 La signatura de un lenguaje de primer orden recoge los símbolos no comunes,<br />
propios de cada lenguaje de primer orden, es decir, es el conjunto de símbolos<br />
Σ = C ∪ F ∪ P<br />
Hablaremos pues de un lenguaje de primer orden sobre la signatura Σ y lo denotaremos L1(Σ).<br />
En definitiva, el alfabeto de una lógica de primer orden con signatura Σ es<br />
a Σ = Σ ∪ V ∪ {¬, ∧, ∨, →, ↔, ∀, ∃, , , (, ), {, }, . . .}<br />
Pasamos ahora a describir qué cadenas de símbolos representan elementos del universo del discurso.<br />
Para ello introducimos la noción de término:
Términos:<br />
Definición 4.2 Sea a un alfabeto para la lógica de primer orden. Los términos sobre a son los<br />
elementos de a ∗ determinados por las siguientes reglas:<br />
1. Las variables y los símbolos de constantes son términos.<br />
2. Si f es un símbolo de función n-aria y t1, . . . , tn son términos, entonces f(t1, . . . , tn) es un<br />
término.<br />
3. solo las cadenas obtenidas aplicando las reglas 1 y 2 son términos.<br />
Los términos en los que no ocurren variables se llaman términos básicos.<br />
Ejemplo 4.1 Si f es un símbolo de función monaria (es decir, de aridad 1) y g es un símbolo de<br />
función binaria (es decir, de aridad 2) entonces, las expresiones<br />
f(g(a, x)); g(f(x), g(x, y)) y g(a, g(a, g(a, f(b))))<br />
son términos. El tercero de ellos es un término básico.<br />
Los predicados se aplican sobre los términos para formar las fórmulas atómicas o átomos, es decir,<br />
las fbfs más simples de L1. ..<br />
Definición 4.3 Los átomos son los elementos de a ⋆ de la forma P (t1, . . . , tn), donde P es un<br />
símbolo de predicado n-ario y t1, . . . , tn son términos. Denotaremos por Atom el conjunto de átomos.<br />
Los átomos en los que no intervienen variables se llaman átomos básicos. Ellos son las expresiones<br />
más sencillas del lenguaje que son interpretables como aserciones (afirmamos que una<br />
n-upla de objetos concretos están en una determinada relación n-aria).<br />
Tenemos ya todo lo necesario para definir el conjunto de fbfs, esto es, el lenguaje. Los cuantificadores<br />
y los conectivos permitirán obtener fbfs complejas a partir de los átomos, de modo similar<br />
al caso proposicional.<br />
Fórmulas bien formadas:<br />
El conjunto de las fórmulas bien formadas es el conjunto de los elementos de a ∗ determinados<br />
por las siguientes reglas:<br />
1. ⊤ y ⊥ son fbfs.<br />
2. Las fórmulas atómicas son fbfs.<br />
3. Si A y B son fbfs, ¬A, (A ∨ B), (A ∧ B), (A → B) y (A ↔ B) son fbfs.<br />
4. Si A es una fbf y x es un símbolo de variable, (∀x)A y (∃x)A son fbfs.<br />
5. solo las cadenas obtenidas aplicando las reglas 1, 2, 3 y 4 son fbfs.<br />
39
40 CAPÍTULO 4. LOGICA ABDUCTIVA DE PRIMER ORDEN<br />
Como en el lenguaje de la lógica proposicional, usaremos el convenio de omitir en toda fbf los<br />
paréntesis inicial y final.<br />
Definición 4.4 Dado un conjunto Ω de fbfs, la signatura de Ω es el conjunto<br />
ΣΩ = CΩ ∪ FΩ ∪ PΩ<br />
donde CΩ es el conjunto de símbolos de constantes que intervienen en Ω, FΩ es el conjunto de símbolos<br />
de función que intervienen en Ω y PΩ es el conjunto de símbolos de predicados que intervienen<br />
en Ω.<br />
Notación: En todo lo que sigue,<br />
1. usaremos el símbolo ♯ para representar un símbolo de cuantificación, es decir, un elemento<br />
del conjunto {∀, ∃}. Diremos que ∀ y ∃ son símbolos duales de cuantificación y usaremos ♯<br />
para indicar el dual de ♯, es decir, ∀ = ∃ y ∃ = ∀.<br />
2. A[B] denota que B es una subfórmula de A y A[B/C] denota que al menos una ocurrencia<br />
de B en A se ha sustituido por C.<br />
Variables Libres y Variables Ligadas:<br />
Definición 4.5 Dada una fbf (♯x)A, decimos que x es la variable del cuantificador y A es el<br />
rango o radio de acción del cuantificador (o de la variable cuantificada). Es decir, el rango<br />
de un cuantificador es la fbf a la que se aplica.<br />
Ejemplo 4.2 En la fbf (∀z) [(∀x) P (x, z) → (∃y)(Q(z) ∧ R(y, z))] cuyo árbol sintáctico es:<br />
los rangos de sus cuantificadores son:<br />
P (x, z) para (∀x).<br />
Q(z) ∧ R(y, z) para (∃y).<br />
<br />
∀x<br />
P (x, z)<br />
∀z<br />
→<br />
❍<br />
❍<br />
<br />
Q(z)<br />
(∀x) P (x, z) → (∃y) (Q(z) ∧ R(y, z)) para (∀z).<br />
∃y<br />
∧<br />
❅<br />
R(y, z)<br />
Dada una variable x que ocurre en una fbf A, deseamos distinguir si una determinada ocurrencia<br />
de x está o no en el rango de un cuantificador (♯x). Para ello introducimos las siguientes<br />
definiciones:<br />
Definición 4.6 Una ocurrencia de una variable x es una ocurrencia ligada si es la variable de<br />
un cuantificador o bien si está en el rango de un cuantificador que la tiene como variable.
Una ocurrencia de una variable x es una ocurrencia libre si no es ligada. En definitiva, una<br />
ocurrencia de una variable x en una fbf A es una ocurrencia libre si no es ligada en ninguna<br />
subfórmula de A.<br />
Una variable es libre si tiene ocurrencias libres y es ligada si tiene ocurrencias<br />
ligadas. 1<br />
Ejemplo 4.3<br />
1. En la fbf ((∀x)P (x, y, a) ∨ Q(b, f(x, c)) → (∃y)(Q(d, y) ∧ D(y)), las dos primeras ocurrencias<br />
de x son ligadas y la tercera libre, mientras que la variable y es libre en la primera ocurrencia<br />
y ligada en las tres restantes.<br />
2. En la fbf (∀x)P (x, y) → (∃y)(P (x, y) ∧ Q(z)), las dos primeras ocurrencias de x son ligadas<br />
mientras que la tercera es libre. La primera ocurrencia de la variable y es libre, el resto, son<br />
ligadas. La única aparición de la variable z es libre.<br />
La intersección de Vlibre(A) y Vligada(A) no necesariamente es el conjunto vacío. Así, para la fbf<br />
A = ((∀x) P (x, a, z) ∨ Q(b, f(x, c)) → (∃y)(C(d, y) ∧ D(y))<br />
se tiene que Vlibre(A) = {x, z} y Vligada(A) = {x, y}.<br />
Notación: Escribiremos A(x1, . . . , xn), para expresar que en una fbf, A, las variables x1, . . . , xn<br />
son libres en A. Con esta notación destacamos que {x1, . . . , xn} es un subconjunto de Vlibre(A),<br />
pero téngase en cuenta que este subconjunto puede ser propio, es decir, la notación A(x1, . . . , xn) no<br />
exige que x1, . . . , xn sean las únicas variables con ocurrencias libres en A, son simplemente variables<br />
que queremos destacar.<br />
Definición 4.7 Una fbf A es cerrada o un enunciado si Vlibre(A) = ∅.<br />
Las variables son símbolos que representan a elementos arbitrarios del universo de discurso. En el<br />
desarrollo de algoritmos, transformaciones,. . . necesitaremos “particularizar” las fbfs a elementos<br />
concretos o menos arbitrarios; esto lo haremos mediante la sustitución de variables:<br />
Sustitución:<br />
Comenzamos estableciendo qué se entiende por renombramiento de una variable ligada.<br />
Definición 4.8 Sea A una fbf en la que intervienen cuantificadores. Un renombramiento de una<br />
variable ligada x es la sustitución de x (la variable renombrada) en el cuantificador que la tiene<br />
como variable y en su rango, por otra (llamada la variable de renombramiento) que no intervenga<br />
en dicho rango.<br />
Ejemplo 4.4 Para la fbf A = ((∀x) P (x, a, z) ∨ Q(b, f(x, c)) → (∃y)(C(d, y) ∧ D(y)), el renombramiento<br />
de x por la variable de renombramiento v, nos proporciona la fbf<br />
A ′ = ((∀v)P (v, a, z) ∨ Q(b, f(x, c)) → (∃y)(C(d, y) ∧ D(y))<br />
1 La noción de variable libre en una fbf es fundamental para trabajar en los lenguajes de primer orden. Intuitivamente,<br />
las variables libres son aquellas que pueden ser sustituidas.<br />
41
42 CAPÍTULO 4. LOGICA ABDUCTIVA DE PRIMER ORDEN<br />
Notación:<br />
1. Sea x una variable y sea t1, t2 términos. Denotaremos mediante [x/t2]t1 el término resultante<br />
de sustituir en t1 las apariciones de la variable x por el término t2.<br />
2. Sea x ∈ Vlibres(A). La fbf que se obtiene a partir de la fbf A por sustitución de todas las<br />
ocurrencias libres de x por t, la denotaremos por [x/t]A. Si representamos la fbf A por A(x)<br />
para destacar que x tiene ocurrencias libres en A, denotaremos [x/t]A por A(t).<br />
Definición 4.9 Dada la fbf A(x) y el término básico t, la fbf [x/t]A(x) se denomina una instancia<br />
básica de A(x). El mecanismo de sustituir una variable ligada por un término básico se denomina<br />
“instanciación”.<br />
En la práctica, desearemos obtener una fbf, B, a partir de otra fbf, A, mediante la sustitución<br />
en A de variables por términos y de modo que no se altere el significado. Aún antes de estudiar<br />
formalmente la semántica de un lenguaje de primer orden, no dudamos en afirmar que si sustituimos<br />
en la fbf<br />
A = (∀x)(P (x) → Q(y))<br />
la variable y por la variable x, la fbf obtenida<br />
B = (∀x)(P (x) → Q(x))<br />
tiene un significado diferente al de A. más en general, si sustituimos la variable y, por ejemplo, por<br />
el término f(x, z), obtenemos la fbf<br />
B = (∀x)(P (x) → Q(f(x, z)))<br />
en la que existe una interacción entre el cuantificador (∀x) y su rango, que no existía en A. Por lo<br />
tanto, el mecanismo general para sustituir una variable por un término, requiere ciertas precauciones<br />
para asegurar que sustituimos ocurrencias libres en A por “términos libres” en A. En definitiva,<br />
para evitar este hecho conocido en la bibliografía como conflicto de variables 2 , requerimos la<br />
siguiente definición:<br />
Definición 4.10 Sea A una fbf, x ∈ Vlibre(A) y t un término en el que intervienen las variables<br />
V(t) = {x1, . . . , xn}. Se dice que el término t es libre para x en A(x) (o bien que x es sustituible<br />
por t en A(x)) si, para toda variable xi ∈ V(t), se tiene que ninguna ocurrencia libre de<br />
x en A está en el rango de una ocurrencia en A de (♯xi). Es decir, las ocurrencias de xi surgidas<br />
como consecuencia de la sustitución de x por t, son ocurrencias libres en A(t).<br />
Ejemplo 4.5<br />
1. y es libre para x en P (x, a).<br />
2. y no es libre para x en (∀y)P (x, y).<br />
3. En la fbf (∀y)P (x, y) → (∃x)Q(x, z, a), el término f(a, y) no es libre para x, pero sí es libre<br />
para z.<br />
La siguiente definición, establece cómo obtener [x/t]A diferenciando los casos en que el término t<br />
es o no libre para la variable x en A(x).<br />
Definición 4.11 Si t es libre para x en A(x), la sustitución en A de x por t consiste en sustituir<br />
en A las ocurrencias libres de x por t.<br />
Si t no es libre para x en A(x) y V(t) = {x1, . . . , xn}, la sustitución en A de x por t consiste en<br />
2 Variable clash en la bibliografía inglesa.
4.1. SEMÁNTICA PARA LOS LENGUAJES DE PRIMER ORDEN 43<br />
1. Renombrar en A las variables xi tales que x ocurre en el rango de (♯xi) por una variable de<br />
renombramiento que no ocurra en t.<br />
2. Sustituir en A las ocurrencias libres de x por t.<br />
Ejemplo 4.6 Dada la fbf (∀z) P (x) → (∃x)Q(x, z) ∨ (∃y)D(x, y), el término f(a, y, z) no es libre<br />
para x. Para realizar la sustitución de x por el término f(a, y, z) podemos proceder como sigue:<br />
1. Como x ocurre libre en el rango de (∀z) y (∃y), renombramos la variable y y la variable z,<br />
por ejemplo, por v y u respectivamente (que no ocurren en f(a, y, z)), obteniendo<br />
(∀u)(P (x) → (∃x)Q(x, u)) ∨ (∃v)D(x, v)<br />
2. En segundo lugar, sustituimos las ocurrencias libres de x en A por f(a, y, z). Obtenemos así:<br />
(∀u)(P (f(a, y, z)) → (∃x)Q(x, u)) ∨ (∃v)D(f(a, y, z), v)<br />
4.1. Semántica para los Lenguajes de Primer Orden<br />
Dar significado a las fbfs de un lenguaje de primer orden, conlleva una mayor dificultad que la<br />
requerida en el caso proposicional. En la lógica clásica proposicional, una interpretación queda<br />
determinada sin más que asignar uno de los valores de verdad 0, 1 a cada símbolo proposicional.<br />
Como ya sabemos, definir la semántica requiere definir una terna (S, D, I), donde S es el conjunto<br />
de valores semánticos, D ⊆ S es el conjunto de valores semánticos destacados e I el conjunto de<br />
interpretaciones.<br />
La lógica clásica de primer orden, como la lógica clásica proposicional, es bivaluada, es decir<br />
S = {0, 1} y el conjunto de valores semánticas es D = {1}, la mayor dificultad se encuentra en<br />
el conjunto de interpretaciones, I, es decir, en la definición de interpretación, en cómo establecer<br />
cuándo una fbf es verdadera o falsa. Puesto que el lenguaje nos permite detallar de qué o quién afirmamos,<br />
qué afirmamos y si afirmamos sobre todos los entes/individuos o de alguno, necesitamos en<br />
primer lugar fijar un dominio o universo del discurso, U. que determine sobre qué entes/individuos<br />
afirmamos y, elegido éste,<br />
1. asignar elementos específicos de U a los símbolos de constantes,<br />
2. asignar funciones n-arias sobre U a los símbolos de función n-arios y<br />
3. asignar relaciones n-arias sobre U a los símbolos de predicados n-arios.<br />
Por otra parte, si la fbf contiene variables libres, debemos especificar qué valores del dominio<br />
representan. Así, dada la fbf (∀x)P (x), si consideramos U = N y asignamos a P el significado “es<br />
par”, podemos asegurar que la fbf es falsa en esta interpretación. Pero nada podemos afirmar sobre<br />
la fbf P (x) si no nos pronunciamos sobre el número natural representado por x.<br />
Deseamos, pues, disponer de un concepto de interpretación que nos permita:<br />
asignar a toda fbf cerrada el valor de verdad 0 ó 1,<br />
contemplar una fbf con variables libres como una afirmación sobre el dominio, que es verdadera<br />
o falsa dependiendo de la asignación realizada a las variables libres.
44 CAPÍTULO 4. LOGICA ABDUCTIVA DE PRIMER ORDEN<br />
4.1.1. Semántica de Tarski<br />
Definición 4.12 Una interpretación para un lenguaje de primer orden es un par (U, I) donde:<br />
U es un conjunto no vacío llamado dominio o universo.<br />
I es una aplicación, que asocia:<br />
- a cada símbolo de constante a un elemento I(a) ∈ U.<br />
- a cada símbolo de predicado n-ario P una relación n-aria sobre U, es decir, I(P ) ⊆ U n 3 .<br />
- a cada símbolo de función n-aria f una función n-aria sobre U, es decir, I(f) : U n −→ U.<br />
Dada una interpretación (U, I), las variables tienen el significado esperado, es decir, representan<br />
elementos cualesquiera del dominio. Este significado se recoge mediante la noción de valuación de<br />
variables:<br />
Definición 4.13 Una valuación o asignación de variables (o un entorno) ξ asociada a una<br />
interpretación (U, I) es una aplicación del conjunto de variables V en el dominio U.<br />
ξ : V −→ U<br />
Definición 4.14 Dada una interpretación (U, I) y una valuación de variables ξ asociada a ella,<br />
definimos recursivamente una aplicación Iξ, llamada función de significado, que asigna a cada<br />
término t un elemento Iξ(t) ∈ U como sigue:<br />
1. Iξ(c) = I(c) para todo símbolo de constante c.<br />
2. Iξ(x) = ξ(x) para toda variable x.<br />
3. Iξ(f(t1, . . . , tn)) = I(f)(Iξ(t1), . . . , Iξ(tn)).<br />
Ahora, nuestro objetivo es introducir las nociones de satisfacibilidad y de validez. Para ello<br />
requerimos conocer el valor de verdad asignado por una función de valuación a una fbf.<br />
Definición 4.15 Dada una interpretación (U, I) y una valuación de variables ξ asociada a (U, I),<br />
definimos el valor de verdad de un átomo como sigue: Iξ(⊥) = 0, Iξ(⊤) = 1 y<br />
Iξ(P (t1, . . . , tn)) = 1 si y solo si (Iξ(t1), . . . , Iξ(tn)) ∈ I(P )<br />
Es decir, si la n-upla (Iξ(t1), . . . , Iξ(tn)) de elementos de U están en la relación I(P ) (es decir, en<br />
la relación n-aria en U que I asocia a P ).<br />
Esta definición se extiende recursivamente a todas las fbfs del siguiente modo:<br />
Iξ(¬A) = 1 si y solo si Iξ(A) = 0, es decir, Iξ(¬A) = 1 − Iξ(A)<br />
Iξ(A ∧ B) = 1 si y solo si Iξ(A) = 1 y Iξ(B) = 1, es decir, Iξ(A ∧ B) = mín{Iξ(A), Iξ(B)}<br />
3 Así, a cada símbolo de predicado monario deberemos asociarle un subconjunto de U, a cada símbolo de predicado<br />
binario deberemos asociarle un conjunto de pares de elementos de U (es decir subconjunto de U × U), . . . a cada<br />
símbolo de predicado n-ario un conjunto de n-tuplas (u1, . . . , un) de elementos de U.
4.1. SEMÁNTICA PARA LOS LENGUAJES DE PRIMER ORDEN 45<br />
Iξ(A ∨ B) = 1 si y solo si Iξ(A) = 1 o Iξ(B) = 1, es decir, Iξ(A ∨ B) = máx{Iξ(A), Iξ(B)}<br />
Iξ(A → B) = 1 si y solo si Iξ(A) = 0 o Iξ(B) = 1, es decir,<br />
Iξ(A → B) = máx{1 − Iξ(A), Iξ(B)}<br />
La definición para las fbfs (∀x)A y (∃x)A requiere una definición previa que permite expresar<br />
la asignación de valores a una variable concreta.<br />
Definición 4.16 Dos valuaciones de variables ξ y ξ ′ se dicen x-equivalentes si ξ ′ (y) = ξ(y)<br />
para toda variable y = x.<br />
Obviamente, dado un símbolo de variable x, la relación de x-equivalencia es una relación de<br />
equivalencia en el conjunto de valuaciones de variables.<br />
Definición 4.17<br />
Iξ( (∀x)A ) = 1 si y solo si Iξ ′(A) = 1 para toda valuación de variables ξ′ que sea x-equivalente<br />
a ξ, es decir, Iξ( (∀x)A ) = inf{Iξ ′(A) | ξ′ es x-equivalente a ξ}.<br />
Iξ( (∃x)A) = 1 si y solo si Iξ ′(A) = 1 para alguna valuación de variables ξ′ que sea xequivalente<br />
a ξ, es decir, Iξ( ((∃x)A ) = sup{Iξ ′(A) | ξ′ es x-equivalente a ξ}.<br />
Teorema 4.1 (Teorema de sustitución)<br />
1. Iξ([x/t2]t1) = Iξ ′(t1), para ξ ′ x-equivalente a ξ y Iξ(t2) = ξ ′ (x).<br />
2. Iξ([x/t]A) = Iξ ′(A), para ξ′ x-equivalente a ξ, t está libre para x en A y, además, Iξ(t) = ξ ′ (x).<br />
Definición 4.18<br />
1. Una fbf A se dice satisfacible o modelizable, si existe una interpretación (U, I) y una<br />
valuación de variables ξ asociada a (U, I) tal que Iξ(A) = 1.<br />
2. Una fbf A se dice verdadera en una interpretación M = (U, I), denotado |=M A o bien por<br />
I(A) = 1, si para toda valuación de variables ξ se tiene que Iξ(A) = 1.<br />
3. Una fbf, A, se dice que es válida, denotado |= A, si es verdadera en toda interpretación<br />
(U, I), es decir, si I(A) = 1 para toda interpretación (U, I). Obviamente, ⊤ es válida.<br />
4. Una fbf A se dice insatisfacible o que es una contradicción, si Iξ(A) = 0 para toda<br />
interpretación (U, I) y toda valuación de variables ξ.<br />
5. Un conjunto Ω de fbfs se dice satisfacible o modelizable, si existe alguna interpretación (U, I)<br />
y una valuación de variables ξ asociada a (U, I) tal que Iξ(A) = 1 para toda fbf A de Ω.<br />
Como en la lógica proposicional, es costumbre utilizar indistintamente las expresiones “A es verdadera<br />
en M” y “M es un modelo para A”.<br />
Definición 4.19 Una estructura para una fbf A es una tupla de la forma<br />
donde<br />
(CA, FA, PA; U; {u1, . . . , un}; {F1, . . . , Fm}; {R1, . . . , Rk})
46 CAPÍTULO 4. LOGICA ABDUCTIVA DE PRIMER ORDEN<br />
Σ = CA ∪ FA ∪ PA es una signatura para A y<br />
M = (U; {u1, . . . , un}; {F1, . . . , Fm}; {R1, . . . , Rk}) es una interpretación para A.<br />
Los siguientes resultados son de gran interés para facilitar la manipulación semántica de las<br />
fbfs.<br />
Teorema 4.2 Sea una fbf A y sea M = (U, I) una interpretación de L1, entonces si ξ y ξ ′ son dos<br />
valuaciones de variables tales que ξ(x) = ξ ′ (x) para toda variable x tal que x ∈ Vlibre(A), se tiene<br />
que Iξ(A) = 1 si y solo si Iξ ′(A) = 1<br />
Teorema 4.3 Dada una fbf cerrada A y una interpretación M = (U, I), se tiene que I(A) = 1 o<br />
bien I(A) = 0<br />
Teorema 4.4 Dada una fbf A<br />
1. A es válida si y solo si ¬A es insatisfacible.<br />
2. A(x1, . . . , xn) es satisfacible si y solo si su cierre existencial lo es.<br />
3. A(x1, . . . , xn) es válida si y solo si su cierre universal lo es.<br />
❡❡ El Teorema 4.4 nos permite afirmar que Toda la expresividad de la lógica de primer<br />
orden se obtiene usando únicamente fbfs cerradas. De hecho en un lenguaje de primer<br />
orden las fbfs cerradas son las que simbolizan los enunciados del lenguaje natural.<br />
A partir del Teorema 4.4 podemos plantearnos redefinir la semántica limitándonos a la consideración<br />
de las fbfs cerradas:<br />
Definición 4.20 Si t1, . . . , tn son términos básicos y M = (U; {u1, . . . un}; {F1, . . . Fm}; {R}) es<br />
una interpretación para P (t1 . . . , tn), entonces definimos el valor de verdad de P (t1 . . . , tn) como<br />
sigue:<br />
I(P (t1, . . . , tn)) = 1 si y solo si (I(t1), . . . , I(tn)) ∈ I(P ) = R<br />
Esta definición se extiende recursivamente a todas las fbfs cerradas del siguiente modo:<br />
Definición 4.21 Si M = (U; {u1, . . . un}; {F1, . . . Fm}; {R1, . . . Rk}) es una interpretación para el<br />
conjunto de fbfs cerradas {A, B}, entonces, I(⊥) = 0; I(⊤) = 1 y:<br />
1. I(¬A) = 1 si y solo si I(A) = 0<br />
2. I(A → B) = 1 si y solo si I(A) = 0 ó I(B) = 1<br />
3. I(A ∧ B) = 1 si y solo si I(A) = 1 y I(B) = 1<br />
4. I(A ∨ B) = 1 si y solo si I(A) = 1 ó I(B) = 1<br />
5. I( (∃x)B) = 1 si y solo si para algún u0 ∈ U, se tiene que<br />
Iu0 ([x/b]B) = 1<br />
donde b es un símbolo de constante que no ocurre en B e Iu0 es la interpretación correspondiente<br />
a la extensión de M que asocia u0 a b.
4.1. SEMÁNTICA PARA LOS LENGUAJES DE PRIMER ORDEN 47<br />
6. I( (∀x)B ) = 1 si y solo si para todo u0 ∈ U, se tiene que<br />
Iu0 ([x/b]B) = 1<br />
donde b es un símbolo de constante que no ocurre en B e Iu0 se define como en el punto<br />
anterior.<br />
Debido a que la semántica de las conectivas booleanas es la misma que para la lógica proposicional,<br />
la noción de tautología es extensible a la lógica de primer orden:<br />
Si en un esquema de tautología de la lógica proposicional sustituimos cada metasímbolo<br />
por una fbf del lenguaje de primer orden L1, obtendremos también una fbf válida (que<br />
llamaremos asimismo tautología).<br />
Tenemos, por lo tanto, el siguiente resultado:<br />
Teorema 4.5 Todo esquema de tautología de la lógica proposicional proporciona un esquema de<br />
tautología en la lógica de primer orden.<br />
Definición 4.22 Sea M = (U, I) una interpretación en L1. Dos fbfs A y B se dicen M-equivalentes,<br />
denotado A ≡M B si I(A) = I(B), es decir, si para toda valuación de variables ξ se tiene que<br />
Iξ(A) = Iξ(B).<br />
Definición 4.23 Dos fbfs A y B se dice que son lógicamente equivalentes, denotado A ≡ B,<br />
si A ≡M B para toda interpretación M en L1. Obviamente,<br />
A ≡M B si y solo si A ↔ B es verdadera en M<br />
A ≡ B si y solo si A ↔ B es válida<br />
En particular, dos fbfs cerradas A y B son lógicamente equivalentes si Mod(A) = Mod(B).<br />
Los siguientes ejemplos de equivalencias muestran cómo, semánticamente, podemos expresar un<br />
cuantificador en términos del otro:<br />
(∀x)A ≡ ¬(∃x)¬A<br />
(∃x)A ≡ ¬(∀x)¬A<br />
El siguiente resultado es una particularización del Teorema 4.5:<br />
Teorema 4.6 Todo esquema de equivalencia en la lógica proposicional es un esquema de equivalencia<br />
en la lógica de primer orden.<br />
Por lo tanto, en L1 disponemos de todas las equivalencias básicas de la lógica proposicional: leyes<br />
de Morgan, ley de la doble negación, leyes de absorción, leyes de cero y uno, etc. Nos queda<br />
pues conocer las leyes en L1 que nos muestran la interacción de las conectivas booleanas con los<br />
cuantificadores y de los cuantificadores entre sí y que son las siguientes:<br />
1. (∃x)(∃y)A(x, y) ≡ (∃y)(∃x)A(x, y)<br />
2. (∀x)(∀y)A(x, y) ≡ (∀y)(∀x)A(x, y)
48 CAPÍTULO 4. LOGICA ABDUCTIVA DE PRIMER ORDEN<br />
3. (∀x)(A(x) ∧ B(x)) ≡ (∀x)A(x) ∧ (∀x)B(x)<br />
4. (∃x)(A(x) ∨ B(x)) ≡ (∃x)A(x) ∨ (∃x)B(x)<br />
5. Si x no ocurre en B, (∀x)(A(x) ∨ B) ≡ (∀x)A(x) ∨ B<br />
6. Si x no ocurre en B, (∃x)(A(x) ∧ B) ≡ (∃x)A(x) ∧ B<br />
7. Si ∗ ∈ {∧, ∨} y ♯, ♯ ′ ∈ {∀, ∃} y z no ocurre ni en A ni en B, entonces<br />
(♯x)A(x) ∗ (♯ ′ x)B(x) ≡<br />
(♯x)A(x) ∗ (♯ ′ z)B([x/z]) ≡ (♯x)(♯ ′ z)(A(x) ∗ B(z)) ≡ (♯ ′ z)(♯x)(A(x) ∗ B(z))<br />
Teorema 4.7 Si B es una subfórmula de A y B ≡M C, entonces A ≡M A[B/C], donde A[B/C]<br />
denota que al menos una ocurrencia de B en A se ha sustituido por C.<br />
Como corolario de este teorema, se tiene el siguiente resultado que generaliza el teorema del mismo<br />
nombre para la lógica clásica proposicional.<br />
Teorema 4.8 (de Equivalencia) Si B es una subfórmula de A y B ≡ C, entonces A ≡ A[B/C].<br />
El paso de A a A[B/C] se denomina transformación de equivalencia.<br />
Lema 4.1 Dada una fbf A y z un símbolo de variable que no ocurre en A(x), entonces:<br />
1. (♯z)A ≡ A<br />
2. (♯x)A(x) ≡ (♯z)A(z)<br />
3. (♯x)(♯ ′ x)A(x) ≡ (♯x)(♯ ′ z)A(z) ≡ (♯ ′ z)A(z)<br />
El teorema de equivalencia permite generalizar la segunda equivalencia y justificar la definición de<br />
renombramiento dada en la Definición 4.8.<br />
Corolario 4.1 Si (♯x) es un cuantificador en la fbf A y la variable z no ocurre en A, la fbf obtenida<br />
a partir de A sustituyendo x por z en (♯x) y en su rango, es equivalente a A.<br />
La noción de consecuencia lógica desempeña el mismo papel que en el caso proposicional, y su<br />
definición para fbfs arbitrarias hace uso de la noción de valuación de variables.<br />
Definición 4.24 Dado un conjunto Ω de fbfs y una fbf C, se dice que C es consecuencia lógica,<br />
(o “se deriva”, o “se infiere semánticamente” de Ω), denotado Ω |= C, si para toda interpretación<br />
M = (U, I) y toda valuación de variables ξ se tiene que<br />
Si Iξ(Ai) = 1 para toda fbf Ai ∈ Ω entonces Iξ(C) = 1.<br />
De nuevo, como en el caso proposicional, el significado de ∅ |= A coincide con el de |= A.<br />
Asimismo, si nos limitamos a fbfs cerradas, se tiene la equivalencia siguiente:<br />
Ω, A |= B si y solo si Ω |= A → B
4.1. SEMÁNTICA PARA LOS LENGUAJES DE PRIMER ORDEN 49<br />
en particular,<br />
A1, A2, . . . , An |= A si y solo si |= (A1 ∧ A2 ∧ · · · ∧ An) → A<br />
si y solo si |= A1 → (A2 → (A3 · · · → (An → A) . . .))<br />
y también, tenemos el siguiente resultado de comprobación inmediata.<br />
Proposición 4.1<br />
Las fbfs A y B son lógicamente equivalentes si y solo si A |= B y B |= A<br />
A1, A2, . . . , An |= A si y solo si A1 ∧ A2 ∧ · · · ∧ An ∧ ¬A es insatisfacible<br />
4.1.2. Forma Normal Prenexa<br />
Como en el caso proposicional, nos interesa disponer de “representantes canónicos” para las<br />
clases de equivalencia del conjunto cociente L1/≡. En la lógica de primer orden las formas normales<br />
que se han mostrado especialmente útiles son las formas normales prenexas. Para su descripción<br />
necesitaremos las siguientes definiciones:<br />
Definición 4.25<br />
1. Los átomos junto con sus negaciones se llaman literales. Decimos que los literales P (t1, . . . , tn)<br />
y ¬P (t1, . . . , tn) son literales opuestos.<br />
2. Una fbf se dice que es un cubo si es ⊤, ⊥ o una conjunción finita de literales.<br />
3. Una fbf se dice que es una cláusula si es ⊤, ⊥ o una disyunción finita de literales.<br />
4. Una fbf en la que los únicos conectivos booleanos que intervienen son ¬, ∧ y ∨ y en la que ¬<br />
solo afecta a los átomos se dice que es una forma normal negativa, denotada fnn.<br />
Definición 4.26<br />
1. Una fbf se dice que es una forma normal prenexa, denotada fnp, si es de la forma (♯1x1) . . . (♯nxn)B<br />
donde<br />
(♯ixi) son cuantificadores con variables distintas.<br />
B es una fbf que no contiene cuantificadores.<br />
Dada una fnp, A = (♯1x1) . . . (♯nxn)B, a la secuencia (♯1x1) . . . (♯nxn) se le denomina prefijo<br />
de A y a la fbf B se le denomina matriz de A.<br />
2. Una fbf se dice que es una forma normal prenexa disyuntiva, denotada fnpd, si es ⊤, ⊥,<br />
o una forma normal prenexa en la que su matriz es una disyunción de cubos.<br />
3. Una fbf se dice que es una forma normal prenexa conjuntiva, denotada fnpc, si es ⊤, ⊥,<br />
o una forma normal prenexa en la que su matriz es una conjunción de cláusulas.<br />
Las nociones de cláusula que contiene a otra cláusula y cubo que contiene a otro cubo son las<br />
mismas que para el caso proposicional.
50 CAPÍTULO 4. LOGICA ABDUCTIVA DE PRIMER ORDEN<br />
Definición 4.27 Una fnpd se dice restringida, denotada fnpdr, si su matriz cumple que:<br />
ningún cubo contiene un literal y su opuesto.<br />
ningún cubo contiene literales repetidos.<br />
ningún cubo contiene a otro.<br />
Una fnpc se dice restringida, denotada fnpcr, si su matriz cumple los siguientes requisitos:<br />
Ninguna cláusula contiene un literal y su opuesto.<br />
Ninguna cláusula contiene literales repetidos.<br />
Ninguna cláusula contiene a otra.<br />
Teorema 4.9 Para toda fbf de L1 existe una forma normal prenexa disyuntiva restringida y una<br />
forma normal prenexa conjuntiva restringida equivalentes a ella.<br />
Demostración: La demostración de este teorema proporciona el algoritmo estándar para la<br />
obtención de las formas normales cuya existencia asegura su enunciado.<br />
En efecto, el teorema de equivalencia nos asegura que, dada una fbf cualquiera, A, podemos<br />
obtener a partir de A una fndr o una fncr equivalente, realizando en cada paso una sola de las<br />
siguientes transformaciones de equivalencia y en el siguiente orden:<br />
Paso 1 Hacer uso del Corolario 4.8 y realizar cuantos renombramientos sean necesarios para que<br />
en A todas las variables cuantificadas sean distintas.<br />
Paso 2 Para eliminar los conectivos ↔ y →, usar las leyes<br />
A ↔ B ≡ (A → B) ∧ (B → A)<br />
A → B ≡ ¬A ∨ B<br />
Paso 3 Usar la ley de doble negación (¬¬A ≡ A), las leyes de Morgan (¬(A ∧ B) ≡ ¬A ∨ ¬B y<br />
¬(A ∨ B) ≡ ¬A ∧ ¬B) y las leyes<br />
¬(∀x)A ≡ (∃x)¬A<br />
¬(∃x)A ≡ (∀x)¬A<br />
Con los pasos 2 y 3 obtenemos una fbf en la que no interviene → y en la que ¬ afecta<br />
únicamente a los átomos, es decir, obtenemos una fnn.<br />
Paso 4 Para transmitir los cuantificadores a la cabeza de la fbf, usar las leyes<br />
(∀x)A ∨ B ≡ (∀x)(A ∨ B)<br />
(∀x)A ∧ B ≡ (∀x)(A ∧ B)<br />
(∃x)A ∨ B ≡ (∃x)(A ∨ B)<br />
(∃x)A ∧ B ≡ (∃x)(A ∧ B)<br />
Paso 5 Usar la ley distributiva de ∧ respecto a ∨ (para fnpdr) o de ∨ respecto a ∧ (para fnpcr).
4.1. SEMÁNTICA PARA LOS LENGUAJES DE PRIMER ORDEN 51<br />
Paso 6 Usar cuantas veces sea posible las leyes (para ∧, o para ∨) de idempotencia, de complementación,<br />
de cero y uno y de absorción, para obtener las formas normales restringidas.<br />
Ejemplo 4.7 Sea (∃x)[R(x) → ¬(∃y)T (x, y)] ∧ ¬(∃z) [(∀u)P (u, z) → (∀v)Q(v, z)]. Hallemos una<br />
fnpcr y una fnpdr equivalentes a ella:<br />
(∃x)[R(x) → ¬(∃y)T (x, y)] ∧ ¬(∃z) [(∀u)P (u, z) → (∀v)Q(v, z)] ≡<br />
≡ (∃x)[¬R(x) ∨ ¬(∃y)T (x, y)] ∧ ¬(∃z)[¬(∀u)P (u, z) ∨ (∀v)Q(v, z)]<br />
≡ (∃x)[¬R(x) ∨ (∀y)¬T (x, y)] ∧ (∀z)¬[¬(∀u)P (u, z) ∨ (∀v)Q(v, z)]<br />
≡ (∃x)[¬R(x) ∨ (∀y)¬T (x, y)] ∧ (∀z)[(∀u)P (u, z) ∧ ¬(∀v)Q(v, z)]<br />
≡ (∃x)[¬R(x) ∨ (∀y(¬T (x, y)] ∧ (∀z)[(∀u)P (u, z) ∧ (∃v)¬Q(v, z)]<br />
≡ (∃x)(∀y)[¬R(x) ∨ ¬T (x, y)] ∧ (∀z)(∀u)(∃v)[P (u, z) ∧ ¬Q(v, z)]<br />
≡ (∃x)(∀y)(∀z)(∀u)(∃v)[(¬R(x) ∨ ¬T (x, y)) ∧ P (u, z) ∧ ¬Q(v, z)] (fnpc)<br />
Usando la regla de distribución de ∧ respcto de ∨ hubiésemos obtenido la fnpd<br />
(∃x)(∀y)(∀z)(∀u)(∃v)[(¬R(x) ∧ P (u, z) ∧ ¬Q(v, z)) ∨ (¬T (x, y) ∧ P (u, z) ∧ ¬Q(v, z))]<br />
4.1.3. Skolemización<br />
Las formas normales prenexas permiten utilizar los cuantificadores de un modo limitado (solo<br />
en la cabecera de la fbf) sin pérdida de potencia expresiva. Sin embargo, es posible imponer un uso<br />
aún más restringido de la cuantificación que, si bien reduce la potencia expresiva, lo hace de forma<br />
satisfactoria. Concretamente, es posible asociar a toda fbf, A, una fbf que es una forma normal<br />
prenexa y en cuyo prefijo solo existen cuantificadores universales y que es equisatisfacible con A.<br />
Definición 4.28 Una fbf A se dice que es una forma normal de Skolem si es una forma prenexa<br />
en cuyo prefijo sólo aparecen cuantificadores universales.<br />
Dada una fbf cerrada A, se llama forma normal de Skolem asociada a A, denotada SkA, a toda<br />
forma normal de Skolem obtenida del modo siguiente:<br />
1. Obtener una forma normal prenexa, A ′ , equivalente a A.<br />
2. Obtener nuevas formas prenexas a partir de A ′ aplicando repetidamente el siguiente método<br />
hasta que no haya cuantificadores existenciales en el prefijo:<br />
a) Si x es una variable cuantificada existencialmente y en el prefijo de la matriz no existe<br />
ningún cuantificador universal que preceda a (∃x), entonces<br />
- Elegir un símbolo de constante a que no ocurra en la matriz.<br />
- Sustituir x por a en la matriz.<br />
- Eliminar (∃x) en el prefijo.<br />
b) Si x es una variable cuantificada existencialmente y (∀xn1 ), . . . , (∀xnk ) son los cuantificadores<br />
universales que preceden a (∃x) en el prefijo de la fnp, entonces<br />
- Elegir un símbolo de función f que no ocurra en la matriz.
52 CAPÍTULO 4. LOGICA ABDUCTIVA DE PRIMER ORDEN<br />
- Sustituir x por f(xn1 , . . . , xnk ) en la matriz.<br />
- Eliminar (∃x) en el prefijo.<br />
El proceso descrito para eliminar los cuantificadores existenciales se denomina skolemización.<br />
Cada aplicación de 2.a o 2.b se denomina etapa de skolemización y los símbolos de constante y<br />
de función introducidos constantes de Skolem y funciones de Skolem, respectivamente.<br />
Ejemplo 4.8 Consideremos la fbf<br />
A = (∃y)(∀x)(∀z)(∀u)(∃t) (P (x, y) → Q(a, z, u)) ∧ (P (x, u) → R(t, z)) <br />
Una forma normal de Skolem para A es<br />
(∀x)(∀z)(∀u) (P (x, b) → Q(a, z, u)) ∧ (P (x, u) → R(f(x, z, u), z)) <br />
Ejemplo 4.9 Considérese la fbf (∀x) P (x) → Q(x) → (∀y)P (y) → (∀z)Q(z) . Eliminando los<br />
conectivos →, obtenemos la fbf ¬(∀x) ¬P (x) ∨ Q(x) ∨ ¬(∀y)P (y) ∨ (∀z)Q(z) <br />
Restringiendo el ámbito de ¬ sólo a los átomos, obtenemos la fbf<br />
(∃x) P (x) ∧ ¬Q(x) ∨ (∃y)¬P (y) ∨ (∀z)Q(z) <br />
y extrayendo los cuantificadores obtenemos la fbf<br />
(∃x)(∃y)(∀z) (P (x) ∧ ¬Q(x)) ∨ ¬P (y) ∨ Q(z) <br />
finalmente, la eliminación de (∃y) y de (∃x) mediante dos etapas de skolemización nos hace incluir<br />
dos símbolos de constante a y b resultando la fbf<br />
(∀z) (P (a) ∧ ¬Q(a)) ∨ ¬P (b) ∨ Q(z) <br />
Teorema 4.10 Si A es una fbf de L1 y SkA una forma de Skolem asociada a A, entonces<br />
A es satisfacible si y solo si SkA es satisfacible.<br />
Definición 4.29 Una fbf A se dice que está en forma clausal si es una forma normal de Skolem<br />
y su matriz es una forma normal conjuntiva.<br />
Como en el caso proposicional, usaremos una notación más concisa escribiendo la matriz como<br />
conjunto de cláusulas y omitiendo los cuantificadores (ya que sabemos que todos son universales)<br />
Ejemplo 4.10 La forma clausal (∀x)(∀y)(∀z) P (x) ∧ (Q(f(x, y) ∨ P (g(z))) ∧ (¬Q(x, z) ∨ ¬P (a)) ,<br />
se representa por el conjunto de cláusulas<br />
{P (x), Q(f(x, y) ∨ P (g(z)), ¬Q(x, z) ∨ ¬P (a)}
4.2. MÉTODO DE C-TABLAS PARA LA LÓGICA ABDUCTIVA DE PRIMER ORDEN 53<br />
4.1.4. Herbrandización<br />
Dualmente al proceso de Skolemización expuesto en la sección anterior, es posible asociar a toda<br />
fbf, A, una fbf que es universalmente válida simultáneamente con A.<br />
Definición 4.30 Una fbf A se dice que es una forma normal de Herbrand si es una forma prenexa<br />
en cuyo prefijo sólo aparecen cuantificadores existenciales.<br />
Dada una fbf cerrada A, se llama forma normal de Herbrand asociada a A, denotada Her A , a<br />
toda forma normal de Herbrand obtenida del modo siguiente:<br />
1. Obtener una forma normal prenexa, A ′ , equivalente a A.<br />
2. Obtener nuevas formas prenexas a partir de A ′ aplicando repetidamente el siguiente método<br />
hasta que no haya cuantificadores universales en el prefijo:<br />
a) Si x es una variable cuantificada universalmente y en el prefijo de la matriz no existe<br />
ningún cuantificador existencial que preceda a (∀x), entonces<br />
- Elegir un símbolo de constante a que no ocurra en la matriz.<br />
- Sustituir x por a en la matriz.<br />
- Eliminar (∀x) en el prefijo.<br />
b) Si x es una variable cuantificada universalmente y (∃xn1 ), . . . , (∃xnk ) son los cuantificadores<br />
existenciales que preceden a (∀x) en el prefijo de la fnp, entonces<br />
- Elegir un símbolo de función f que no ocurra en la matriz.<br />
- Sustituir x por f(xn1 , . . . , xnk ) en la matriz.<br />
- Eliminar (∀x) en el prefijo.<br />
El proceso descrito para eliminar los cuantificadores universales se denomina herbrandización.<br />
Cada aplicación de 2.a o 2.b se denomina etapa de herbrandización.<br />
Teorema 4.11 Si A es una fbf de L1 y Her A una forma normal de Herbrand asociada a A,<br />
entonces<br />
1. A |= Her A .<br />
2. |= A si y solo si |= Her A<br />
Como en el caso proposicional, usaremos una notación más concisa escribiendo la matriz como<br />
conjunto de cláusulas y omitiendo los cuantificadores (ya que sabemos que todos son universales)<br />
4.2. Método de C-tablas para la lógica abductiva de primer orden<br />
El método de C-tablas es una modificación del método de las tablas semánticas para la lógica<br />
clásica de primer orden.<br />
Consideramos un lenguaje de primer orden sin símbolos de función, es decir un lenguaje<br />
L1(C, ∅, P).<br />
El punto de partida es un conjunto finito y no vacío de constantes, C0 ⊆ C, que define una clase<br />
de C0-modelos en la que trataremos de comprobar si cierto conjunto de fórmulas es C0-satisfactible.
54 CAPÍTULO 4. LOGICA ABDUCTIVA DE PRIMER ORDEN<br />
Definición 4.31 Sea L1(C, ∅, P) un lenguaje de primer orden y sea C0 = {c1, ..., cn} ⊆ C. Definimos<br />
un C0-modelo como un modelo M = (U, I) tales que:<br />
|U| = n, (el universo del discurso tiene el mismo número de elementos que C0),<br />
Si ci, cj ∈ C0, i = j, 1 ≤ i, j ≤ n, entonces I(ci) = I(cj) (dos constantes diferentes en C0<br />
tienen interpretaciones diferentes).<br />
el resto de las constantes en C \ C0 se interpreta sin restricciones.<br />
Definición 4.32 Sean L1(C, ∅, P) un lenguaje de primer orden, C0 = {c1, ..., cn} ⊆ C y A, B ∈<br />
L1(C, ∅, P), decimos que:<br />
A es C0-satisfactible si y solo si existe un C0-modelo, M, tal que M |= A.<br />
A es C0-válida, denotado |=C0 A si y solo si para cualquier C0-modelo, M, se tiene que M |= A.<br />
B es C0-consecuencia lógica de A, denotado A |=C0 B si y solo si para cualquier C0-modelo,<br />
M, se tiene que si M |= A entonces M |= B.<br />
A y B son C0-equivalentes si y solo si A |=C0 B y B |=C0 A.<br />
Como en el caso proposicional, definimos:<br />
Definición 4.33 Dado un conjunto Θ ⊂ L1(C, ∅, P) y O ∈ L1(C, ∅, P), decimos que el par (Θ, O)<br />
es un problema abductivo si Θ |= O y Θ |= ¬O.<br />
Definición 4.34 Sea Θ ⊂ L1(C, ∅, P) finito y C0 = {c1, . . . , cn} ⊆ C tal que C0 contiene al conjunto<br />
de constantes que ocurren en Θ.<br />
Un C0-árbol de Θ, denotado T C0 (Θ), es un árbol cuya construcción difiere de los ya conocidos<br />
(en nuestra exposición del método de las tablas semánticas para la lógica clásica de primer orden)<br />
únicamente en que las reglas de extensión γ y δ solo consideran las constantes en C0:<br />
(∀x)A<br />
A[x/c1]<br />
.<br />
A[x/cn]<br />
¬(∃x)A<br />
¬A[x/c1]<br />
.<br />
¬A[x/cn]<br />
(∃x)A<br />
A[x/c1] | . . . | A[x/cn]<br />
¬(∀x)A<br />
¬A[x/c1] | . . . | ¬A[x/cn]<br />
es decir, si encontramos una fbf de tipo γ, como (∀x)A, entonces añadimos a la rama todas las<br />
instancias de A[x/c] con c ∈ C0 y en el caso de la fórmulas de tipo δ, como (∃x)A, se ramifica la<br />
rama en la que ocurra dicha fórmula en n nuevas ramas (donde n = |C0|) y a cada una de ellas se<br />
añade una instancia A[x/c] con una constante c ∈ C0, diferente en cada caso.<br />
Ejemplo 4.11 El {a, b}-árbol de (∀x)(∃y)(P (x, y) ∧ ¬P (x, x)), es decir,<br />
<br />
T {a,b} {(∀x)(∃y)(P (x, y) ∧ ¬P (x, x))})
4.2. MÉTODO DE C-TABLAS PARA LA LÓGICA ABDUCTIVA DE PRIMER ORDEN 55<br />
es el siguiente:<br />
(∀x)(∃y)(P (x, y) ∧ ¬P (x, x)) 1<br />
(∃y)(P (a, y) ∧ ¬P (a, a)) 2<br />
(∃y)(P (b, y) ∧ ¬P (b, b)) 5<br />
✟<br />
3 P (a, a) ∧ ¬P (a, a) P (a, b) ∧ ¬P (a, a) 4<br />
P (a, a)<br />
¬P (a, a)<br />
⊗<br />
❍<br />
P (a, b)<br />
✟<br />
6 P (b, a) ∧ ¬P (b, b)<br />
P (b, a)<br />
¬P (a, a) ❍❍❍<br />
✟<br />
✟<br />
P (b, b) ∧ ¬P (b, b) 7<br />
P (b, b)<br />
¬P (b, b) ¬P (b, b)<br />
⊗<br />
La siguiente definición introduce la noción de forma normal disyuntiva de un C0-árbol.<br />
Definición 4.35 Una forma normal disyuntiva de un C0-árbol es una forma normal disyuntiva<br />
que tiene un cubo por cada rama abierta del C0-árbol correspondiente.<br />
El {a, b}-árbol de la figura tiene una única rama abierta, su forma normal disyuntiva es<br />
{{P (a, b), ¬P (a, a), P (b, a), ¬P (b, b)}}<br />
que representa un único cubo con los literales de dicha rama.<br />
Los siguientes resultados son de comprobación inmediata.<br />
Lema 4.2 Dado un conjunto satisfacible de literales básicos, Γ, 4 si todos los símbolos de constante<br />
en Γ pertenecen a C0, entonces Γ es C0-satisfactible.<br />
Corolario 4.2 El conjunto de literales que pertenecen a cualquier rama abierta de un C0-árbol es<br />
siempre C0-satisfactible.<br />
Directamente de las definiciones, obtenemos el siguiente resultado:<br />
Lema 4.3 Si Γ es el conjunto de literales que pertenecen a una rama abierta de T C0 ({A1, . . . , Am}),<br />
entonces Γ |=C A1 ∧ . . . ∧ Am.<br />
Demostración: Sea M = (U, I) un C0-modelo que satisface Γ. Supongamos que C = {c1, ..., cn}.<br />
Tenemos que probar que M satisface todas las fórmulas de dicha rama. Lo demostramos por<br />
inducción sobre su grado.<br />
En el caso base, es decir, si todas las fbfs son literales, el resultado está asegurado por hipótesis.<br />
Supongamos que M satisface todas las fórmulas de la rama hasta las de grado k > 1. Sea A<br />
una fórmula de grado k + 1. Tendremos que distinguir los casos siguientes:<br />
4 Es decir, no contiene ningún par de literales complementarios
56 CAPÍTULO 4. LOGICA ABDUCTIVA DE PRIMER ORDEN<br />
1. A es una α-fórmula. Entonces, sus dos componentes α1 y α2 se encuentran en la rama,<br />
y por ser ambas de grado menor o igual que k, ambas deben ser satisfechas por M y,<br />
por lo tanto, M |= A.<br />
2. A es una β-fórmula. Entonces, una de sus dos componentes β1 o β2 se encuentran en la<br />
rama, y por ser ésta de grado menor o igual que k debe ser satisfecha por M y, por lo<br />
tanto, M |= A.<br />
3. A es una γ-fórmula. Supongamos A = (∀x)B (el caso en que A = ¬(∃x)B la demostración<br />
es similar). Entonces, como se ha aplicado la regla γ durante la construcción de la C0tabla,<br />
todas las subfórmulas tipo B[x/cj], 1 ≤ j ≤ n, deben estar en la rama, y por ser<br />
todas de grado menor o igual que k son satisfechas por M. Además, como I asigna a las<br />
constantes cj un elemento de U, recorriendo todo U, tenemos que M |= (∀x)B.<br />
4. A es una δ-fórmula. Supongamos A = (∃x)B (el caso en que A = ¬(∀x)B la demostración<br />
es similar). Entonces, por definición de la regla δ, la rama debe contener cierta subfórmula<br />
B[x/cj] con 1 ≤ j ≤ n, que por hipótesis de inducción es satisfecha por M. Por lo tanto,<br />
M |= A.<br />
Por lo tanto, M satisface todas las fórmulas de la rama, y por ello también M |= Ai, para cada<br />
1 ≤ y ≤ m y, en consecuencia, M |= A1 ∧ . . . ∧ Am.<br />
Lema 4.4 Si Θ ⊂ L1(C, ∅, P) es finito y C0-satisfacible, se tiene que:<br />
1. Cualquier C0-modelo que satisfaga Θ satisface todas las fórmulas de al menos una de las ramas<br />
de TC0 (Θ).<br />
2. T C0 (Θ) es abierto.<br />
Demostración: Sea Θ un conjunto finito de fórmulas C0-satisfactible, para cierto y sea M = (U, I)<br />
un C0-modelo que satisface Θ. Demostraremos que M satisface todas las fórmulas de al menos una<br />
rama de TC(Θ) por inducción sobre el número de veces que se ha aplicado alguna regla de extensión.<br />
En el caso base, con 0 aplicaciones, la única rama de la C0-tabla tiene solo las fórmulas de Θ,<br />
que son satisfechas por M. Ahora supongamos que M satisface todas las fórmulas de cierta rama<br />
hasta la i-ésima aplicación de las reglas. Consideremos la (i + 1)-ésima apliación de las reglas que<br />
se aplica a una fórmula A. Si dicha regla no afecta a la rama que estamos considerando, es trivial<br />
que la rama sigue siendo satisfecha por M tras su aplicación. En otro caso, tendremos las siguientes<br />
posibilidades, según la regla aplicada:<br />
Se aplica la regla α. Entonces A ≡ α1 ∧ α2, y se añaden a la rama las α1 y α2. Puesto que por<br />
por hipótesis M satisface A, se tiene que M satisface α1 y α2, por lo que M sigue satisfaciendo<br />
todas las fórmulas de la rama tras (i + 1)-ésima aplicación de las reglas.<br />
si se aplica la regla β. Entonces A ≡ β1 ∨ β2 y se ramfica la rama en dos y a cada una se<br />
añade, respectivamente, β1 o β2. Como por hipótesis M |= A, se tiene que M satisface al<br />
menos una de las dos nuevas fórmulas, por lo que M satisface al menos una de las dos nuevas<br />
ramas tras (i + 1)-ésima aplicación de las reglas.
4.2. MÉTODO DE C-TABLAS PARA LA LÓGICA ABDUCTIVA DE PRIMER ORDEN 57<br />
si se aplica la regla γ. Entonces A ≡ (∀x)A0. Por lo tanto, al aplicar la regla γ se añaden a<br />
la rama todas las subfórmulas A0[x/cj], 1 ≤ j ≤ n. Pero como por hipótesis M |= (∀x)A0<br />
entonces, se verifica que M |= A0[x/cj] para cada constante cj , 1 ≤ j ≤ n. Por lo tanto, M<br />
satisface la rama tras la aplicación de la regla γ.<br />
si se aplica la regla δ. En este caso, A ≡ (∃x)A0, y por hipótesis de inducción M |= A0, es<br />
decir, M |= (∃x)A0. Puesto que M asigna a cada constante de T ({η})C un elemento diferente<br />
de U, se verifica que, para al menos una constante cj , 1 ≤ j ≤ n, M |= A0[x/cj]. Pero una<br />
de las nuevas ramas que surgen tras la aplicación de la regla δ contiene A0[x/cj], por lo que<br />
sigue habiendo una rama cuyas fórmulas son todas satisfechas por M.<br />
Al finalizar la construcción del C0-árbol habrá, por tanto, al menos una rama tal que todas sus<br />
fórmulas son satisfechas por M, lo cual termina la demostracción del primer item. Además, entre<br />
las fórmulas de la rama satisfecha por M no puede haber literales complementarios. Por ello, la<br />
C-tabla es abierta, lo que prueba la segunda parte del lema.<br />
Teorema 4.12 Sean A ∈ L1(C, ∅, P) y TC0 ({A}) un C0-árbol de {A}. Entonces, A y TC0 ({A}) son<br />
C0-equivalentes.<br />
Demostración: Sea M un C0-modelo que satisface A. Entonces, se tiene que M satisface todas<br />
las fórmulas de al menos una rama de TC0 ({A}). Por lo tanto, M satisface todos los literales de<br />
dicha rama, entre los cuales no puede haber literales complementarios, por lo tanto son literales<br />
de una rama abierta de TC0 ({A}). Por definición, tales literales constituyen un cubo de la forma<br />
normal disyuntiva asociada a TC0 ({A}). En consecuencia, tenemos que M |=C0 A′ , donde A ′ es la<br />
forma normal disyuntiva asociada a TC0 ({A}).<br />
Ahora, sea M una C0-estructura que satisface A ′ . Por definición, M satisface todos los literales<br />
de al menos una rama abierta de la forma normal disyuntiva asociada a T C0 ({A}) y por el lema<br />
anterior, M |= A.<br />
Ejemplo 4.12 Sea la teoría Θ = {(∀x)(∀y)(∀z)((P (x, y) ∧ P (y, z)) → P (x, z))} y la observación<br />
O = (∃x)P (x, x). Un árbol para Θ ∪ {¬O} es:<br />
(1) (∀x)(∀y)(∀z)((P (x, y) ∧ P (y, z)) → P (x, z))<br />
↓<br />
(2) ¬(∃x)P (x, x)<br />
↓<br />
(3) ((P (d1, d2) ∧ P (d2, d3)) → P (d1, d3)) (de (1))<br />
↓<br />
(4) ¬P (d4, d4) (de (2))<br />
↙ ↘<br />
(7) ¬(P (d1, d2) ∧ P (d2, d3) (de (3)) (6) P (d1, d3)<br />
↙ ↘<br />
(7) ¬(P (d1, d2) (8) ¬P (d2, d3)<br />
Tenemos tres ramas abiertas:<br />
ρ1 = {¬P (d4, d4), ¬P (d1, d2)}, ρ2 = {¬P (d4, d4), ¬P (d2, d3)}, ρ3 = {¬P (d4, d4), P (d1, d3)}
58 CAPÍTULO 4. LOGICA ABDUCTIVA DE PRIMER ORDEN<br />
Si aplicamos la sustitución θ = {d1/d4, d1/d3}, entonces ρ3 cierra y se obtienen los dos posibles<br />
cierres siguientes:<br />
τ1 = {P (d1, d1), P (d1, d2)}}<br />
τ2 = {P (d1, d1), P (d2, d1)}}<br />
Los correspondiente cierres minimales son P (d1, d1) P (d1, d2) ∧ P (d2, d1) y, por herbrandización,<br />
genera las explicaciones (∃x)P (x, x) (trivial) y (∃x)(∃y)(P (x, y) ∧ P (y, x). Claramente, el árbol<br />
puede ser extendido aún más generando nuevas explicaciones.<br />
4.3. δ-Resolución <strong>Abductiva</strong> en la lógica de primer orden<br />
Veamos ahora la extensión del método de δ-Resolución a la lógica de primer orden.<br />
Como en la sección anterior, consideramos un lenguaje de primer orden sin igualdad y sin<br />
símbolos de función, L1(C, ∅, P) en el que tan solo consideraremos fbfs cerradas. Dado un literal,<br />
ℓ, denotamos por ¯ ℓ su complementario. Como en el caso proposicional, denotamos por ♦ el cubo<br />
vacío, el cual es una fbf válida.<br />
Definición 4.36 Dado el problema abductivo (Θ, O), decimos que el cubo básico, E, es una solución<br />
C0-abductiva de (Θ, O) si se satisface:<br />
1. Θ, E |= O.<br />
2. Θ ∪ E es C0-satisfactible.<br />
3. E |= O<br />
4. No existe ningún cubo básico E ′ ⊂ E tal que Θ, E ′ |= O<br />
Mediante Abd C0 (Θ, O) denotamos el conjunto de soluciones C0-abductivas al problema abductivo<br />
(Θ, O).<br />
Consideramos un problema abductivo (Θ, O), con Θ = {A1, . . . , Am}.<br />
Dados dos cubos D1 y D2, la regla de δ-resolución es la dual de la regla de resolución estudiada<br />
en el segundo volumen que, como sabemos, requiere introducir el concepto de unificador de máxima<br />
generalidad de dos átomos proporcionado por el algoritmo de unificación. Remitimos al lector a<br />
nuestro estudio de la <strong>Lógica</strong> Clásica de Primer Orden para recordarlo.<br />
Definición 4.37 Sean D1 y D2 dos cubos sin variables en común, y sean ℓ1 ∈ D1 y ¯ ℓ2 ∈ D2 tales<br />
que ℓ1 unifica con ℓ2 con umg σ. En tal caso se dice que D1 y D2 es un par resoluble y se define<br />
la δ-resolvente binaria de D1 y C2 respecto a ℓ1 mediante σ al cubo D definido como sigue<br />
D = (σD1 − {σℓ1}) ∪ (σD2 − {σ ¯ ℓ2})<br />
Es preciso destacar que en la definición de δ-resolvente, es posible que existan varios literales<br />
a la vez con el mismo predicado. Esta característica del método para la lógica de primer orden se<br />
conoce con el nombre de factorización. Este hecho motiva la definición siguiente.<br />
Definición 4.38 Si dos o más literales (con el mismo signo) de un cubo D son unificables con σ<br />
como unificador de máxima generalidad (umg), entonces σD se dice que es un factor de D.
4.3. δ-RESOLUCIÓN ABDUCTIVA EN LA LÓGICA DE PRIMER ORDEN 59<br />
Definición 4.39 Una δ-resolvente para los cubos D1 y D2 es una de las siguientes δ-resolventes<br />
binarias:<br />
1. Una δ-resolvente binaria de D1 y D2.<br />
2. Una δ-resolvente binaria de D1 y un factor de D2.<br />
3. Una δ-resolvente binaria de un factor de D1 y D2.<br />
4. Una δ-resolvente binaria de un factor de D1 y un factor de D2.<br />
Ejemplo 4.13 Podemos δ-resolver los cubos<br />
D1 = Q(x) ∧ ¬R(x) ∧ P (x, y) ∧ P (f(z), f(z)) y<br />
D2 = ¬S(u) ∧ ¬R(w) ∧ ¬P (f(a), f(a)) ∧ ¬P (f(w), f(w))<br />
considerando como umg para el conjunto de átomos<br />
{P (x, y), P (f(z), f(z)), P (f(a), f(a)), P (f(w), f(w))}<br />
es θ = {x/f(a), y/f(a), z/a, w/a}. Hallamos la δ-resolvente mediante θ y obtenemos el cubo<br />
Q(f(a)) ∧ ¬R(f(a)) ∧ ¬S(u) ∧ ¬R(a)<br />
4.3.0.1. Búsqueda de soluciones explicativas mediante δ-resolución<br />
Ahora, podemos extender de forma natural el método estudiado en el caso proposicional para la<br />
búsqueda de soluciones explicativas de un problema abductivo. Consideremos un problema abductivo<br />
(Θ, O), con Θ = {A1, . . . , An} ( Θ una teoría contingente y O una observación contingente).<br />
Buscamos soluciones explicativas conjuntivas, E = ℓ1 ∧ . . . ∧ ℓk.<br />
Por lo tanto, los pasos a seguir para la búsqueda de soluciones explicativas minimales de un<br />
problema abductivo (Θ, O) con Ω = {A1, . . . , An} son los siguientes:<br />
1. Hallar una forma normal de Herbrand para (¬A1 ∨ . . . ∨ An), a la que denotaremos por<br />
Ω ¬Θ<br />
= {D ¬ Θ<br />
1 , . . . , D ¬ Θ<br />
nΘ }<br />
2. Hallar una forma normal de Herbrand para O, denotada Ω O<br />
= {D O<br />
1 , . . . , DO<br />
nO }<br />
3. Hallar una forma normal de Herbrand para F (¬A1 ∨ . . . ∨ An ∨ O), a la que denotaremos<br />
Ω ¬Θ∪O<br />
= {D ¬Θ∪O<br />
1 , . . . , D ¬Θ∪O<br />
n }<br />
¬Θ∪O<br />
Y proceder como sigue:<br />
I) Aplicar δ-resolución por saturación a Ω ¬Θ∪O<br />
, obteniéndo así las posibles soluciones planas<br />
minimales.<br />
II) De entre estas soluciones, E = ℓ1 ∧. . .∧ℓk, seleccionar las que cumplen (CONS) y (EXPL).
60 CAPÍTULO 4. LOGICA ABDUCTIVA DE PRIMER ORDEN<br />
Ejemplo 4.14 Θ = {(∀x) (∀y)(P (x, y) ∧ P (y, x) → Q(x) ; O = Q(a)<br />
I) Obtenemos Ω ¬Θ∪O<br />
I.1)<br />
y le aplicamos δ-resolución por saturación:<br />
¬(∀x) (∀y)(P (x, y) ∧ P (y, x)) → Q(x) ≡<br />
(∃x)¬ (∀y)(P (x, y) ∧ P (y, x)) → Q(x) ≡<br />
(∃x) (∀y)(P (x, y) ∧ P (y, x) ∧ ¬Q(x) ≡<br />
(∃x)(∀y)(P (x, y) ∧ P (y, x) ∧ ¬Q(x) <br />
Por lo tanto, herbrandizando, obtenemos: Ω ¬Θ<br />
= {P (x, f(x)) ∧ P (f(x), x) ∧ ¬Q(x)}<br />
I.2) Ω O = {Q(a)}<br />
I.3) Ω ¬Θ∪O<br />
= {P (x, f(x)) ∧ P (f(x), x) ∧ ¬Q(x), Q(a)}<br />
I.4) Aplicamos δ-resolución por saturación a Ω ¬Θ∪O<br />
y obtenemos la siguiente solución plana<br />
minimal:<br />
P (a, f(a)) ∧ P (f(a), a)<br />
que resulta que satisface (CONS) y (EXPL) y, por lo tanto, es una solución explicativa<br />
minimal.<br />
4.4. Predicados Abducibles<br />
Hasta aquí, hemos considerado la búsqueda de explicaciones abductivas sin prestar demasiada<br />
atención a la teoría, o mejor haciendo tan solo referencias generales a ella en términos de la<br />
relación de consecuencia, pero en las aplicaciones el universo del discurso determina de forma<br />
natural que los literales en la explicación deben pertenecer a un conjunto pre-fijado llamado conjunto<br />
de predicados abducibles. Asimismo, en general, los predicados abducibles están sujetos<br />
a restricciones, denominadas restricciones de integridad. Por lo tanto, aunque los predicados<br />
abducibles no están definidos en la teoría, Θ, ésta aporta alguna información implícita sobre ellos<br />
mediante las restricciones de integridad. En consecuencia, definimos:<br />
Definición 4.40 Una teoría abductiva es una terna (Θ, A, IC), donde Θ es la teoría de partida,<br />
A un conjunto de predicados abducibles e IC un conjunto de restricciones de integridad.<br />
Una fbf, E es una explicación abductiva de un problema abductivo ((Θ, A, IC), O) si, además<br />
de las propiedades exigidas hasta aquí, se satisface que Θ ∪ {E} satisface IC.<br />
En la bibliografía, se hace uso habitualmente de restricciones de integridad de la forma<br />
(∀x)¬(P1(x) ∧ . . . ∧ Pn(x))<br />
o bien ← P1(x), . . . , Pn(x) en el estilo de la programación lógica.<br />
Θ satisface esta restricción de integridad si no existe ningún término básico t0 tal que Θ |= Pi(t0),<br />
i = 1, 2, . . . , n.
4.4. PREDICADOS ABDUCIBLES 61<br />
Ejemplo 4.15 Sea (Θ, A, IC) donde Θ consta de las siguientes relaciones familiares:<br />
padre(x, y) ← progenitor(x, y), hombre(x)<br />
madre(x, y) ← progenitor(x, y), mujer(x)<br />
hijo(x, y) ← progenitor(y, x), hombre(x)<br />
hija(x, y) ← progenitor(y, x), mujer(x)<br />
desc-direc(x, y) ← hijo(y, x)<br />
desc − direc(x, y) ← hija(y, x)<br />
quiere(x, y) ← progenitor(y, x)<br />
Las restricciones de integridad son IC = {← hombre(x), mujer(x)} y los predicados abducibles<br />
A = {progenitor, hombre, mujer}.<br />
Sea la observación O1 = padre(Alfredo, David). Una explicación abductiva para O1 es E1 =<br />
progenitor(Alfredo, David) ∧ hombre(Alfredo) y se trata de la única explicación minimal. Consideremos<br />
la observación O2 = desc − direc(Juan, Maria). Esta observación tiene dos posibles<br />
explicaciones:<br />
E2 = progenitor(Juan, Maria) ∧ hombre(Juan)<br />
E ′ 2<br />
= progenitor(Juan, Maria) ∧ mujer(Juan)<br />
Si conocemos que hombre(Juan) es verdadera entonces E ′ 2 tiene que ser rechazada. De hecho,<br />
ambas explicaciones son incompatibles, debido a las restricciones de integridad. Pero, puesto que<br />
padre(Juan, Maria) pertenece a ambas explicaciones. se tiene que<br />
padre(Juan, Maria) y quiere(Juan, Maria)<br />
son consecuencias escépticas de este problema abductivo con observación O2.
62 CAPÍTULO 4. LOGICA ABDUCTIVA DE PRIMER ORDEN
Capítulo 5<br />
Aplicaciones de la <strong>Lógica</strong> <strong>Abductiva</strong><br />
Son muchas las aplicaciones de la lógica abductiva. Comencemos destacando algunas:<br />
Visión de alto nivel: La visión artificial es usada en numerosas aplicaciones, tales como los<br />
sistemas de vigilancia. La abducción es fundamental para el área conocida como Visión Artificial,<br />
ya que las imágenes parciales que proporciona una cámara se explican abductivamente.<br />
Las hipótesis explicativas son los objetos que producen tales imágenes.<br />
Compresión del lenguaje natural. También para interpretar el lenguaje natural se utiliza<br />
la abducción como herramienta para poder interpretar oraciones ambiguas. Las hipótesis<br />
abductivas, serán las posibles interpretaciones y se determinan la más adecuadas por el contexto.<br />
Traducción automática. Relacionada con la anterior. Sobre esta aplicación ha trabajado<br />
extensamente Jerry Hobbs, el cual considera que la traducción automática requiere razonamientos<br />
sobre el lenguaje a los niveles léxico, sintáctico, semántico, etc y, a la vez, se ajusta al<br />
uso de técnicas basadas en la lógica abductiva ya que es preciso contemplar las complicadas<br />
relaciones que existen entre tales niveles. En efecto, un mínimo cambio en una letra puede<br />
hacer cambiar totalmente el significado de una frase. A su vez, la semántica de la oración<br />
tendrá repercusiones sintácticas. La lógica abductiva, afirma Hobbs, permite solucionar de<br />
forma elegante y potente una gran cantidad de problemas de este tipo. En su proyecto TACI-<br />
TUS, Hobbs aplica el razonamiento abductivo para la búsqueda de explicaciones que hagan<br />
que la forma lógica del texto sea válida (entendiendo por forma lógica del texto la traducción<br />
a un lenguaje lógico de un texto en lenguaje natural). Para Hobbs, interpretar una sentencia<br />
es comprobar su forma lógica junto con las restricciones que los predicados imponen en sus<br />
argumentos; mezclar las redundancias cuando sea posible y “permitir suposiciones” cuando<br />
sea necesario.<br />
Se supone que tenemos una base de dato de conocimiento (hechos y reglas), que permiten<br />
comprobar la forma lógica de una oración (que habrá sido hallada a partir de un análisis<br />
sintáctico o semántico a partir de la oración origen). Esta base contendrá de todo tipo de<br />
información: desde la puramente lingüística, hasta información sobre creencias, presupuestos,<br />
y cualquiera que pueda potencialmente afectar a la traducción.<br />
Ingeniería del software. En este área, la utilidad de la lógica abductiva se hace patente<br />
para detectar inconsistencias, violaciones de las propiedades de los sistemas, ayudando al<br />
63
64 CAPÍTULO 5. APLICACIONES DE LA LÓGICA ABDUCTIVA<br />
depurado de los errores y en la gestión de modificación de requisitos.<br />
Las especificaciones son la clave para el desarrollo de productos software. Existen muchas<br />
aplicaciones del razonamiento abductivo en la ingeniería del software, entre ellas, las que<br />
sirven como ayuda para el análisis y mantenimiento de las especificaciones de un sistema. Dada<br />
una especificación y algunos invariantes del mismo, el mecanismo de razonamiento abductivo<br />
puede usarse para comprobar si estos invariantes se satisfacen como dice la especificación. Para<br />
cada invariante el razonamiento abductivo puede identificar un conjunto de contraejemplos,<br />
si es que existen, del invariante. La información incluida en el contraejemplo depende del tipo<br />
de especificación considerada.<br />
Otra aplicación de la abducción en este área consiste en la modificación de especificaciones,<br />
concretamente, detectar inconsistencias o reestablecer algunas propiedades del sistema<br />
que hayan sido violadas tras algún cambio en las especificaciones del sistema. Esto se traduce<br />
en una modificación de la teoría del problema (las propiedades de las que partimos). Un<br />
problema al modificar la teoría del problema consiste en identificar los cambios que deben ser<br />
hechos en la teoría. Por ejemplo, la incorporación de información (tales como propiedades),<br />
que en términos lógicos quiere decir pedir que de la información deba o no deba inferirse de<br />
una especificación dada. El uso de la abducción en este contexto es útil para interpretar los<br />
cambios como una observación que debe ser explicada y la explicación de la observación como<br />
cambios a realizar.<br />
Planificación. La planificación es una de las ramas de la inteligencia artificial con más<br />
aplicaciones industriales. El hecho observado es el objetivo que nos marcamos (al que queremos<br />
llegar) y las hipótesis abductivas los posibles caminos para conseguirlo. La mejor explicación<br />
será la más económica, corta,. . .<br />
Una de las características más señaladas de la inteligencia humana es la planificación de<br />
tareas que conduzcan a algún fin. Se conoce bien la meta y es necesario explicar o justificar<br />
los caminos que llevarían a ella. A menudo, las acciones que se pueden escoger para obtener<br />
esa meta perseguida no son únicas, sino alternativas. Entre las posibilidades de que se dispone,<br />
se eligen aquellas cuya modificación comporta un cambio local, no global.<br />
Un ámbito en el que se puede ejemplificar esta aplicación es el los bloques, popularizado<br />
por Terry Winograd en el mundo de la IA y que recuerda a juegos que involucran piezas<br />
geométricas, como el Tetris o el Tangran.<br />
También en IA, el razonamiento basado en marcos incorpora ciertos aspectos de la metodología<br />
abductiva. Esto se debe a que se comparan situaciones reales, sobre las que se deben<br />
tomar decisiones, con patrones de diferentes situaciones prototipo que pueden estar relacionadas.<br />
Estas decisiones no siempre forman parte una solución, es decir, no sabemos si es<br />
correcto lo que hemos hecho, por lo tanto la experiencia es un guía del camino a seguir en la<br />
búsqueda de la solución. Además es habitual razonar desde el objetivo hacia el estado inicial,<br />
haciendo que se vayan consiguiendo las precondiciones necesarias para los estados anteriores<br />
al objetivo, esto nos lleva al uso de la abducción.<br />
Asimilación de conocimiento. Muchas de las aplicaciones de la inteligencia artificial están<br />
relacionadas con la representación y asimilación de conocimiento. En este caso, puede emplearse<br />
la abducción para extender la base de conocimiento, no tanto por acumulación, sino
5.1. LÓGICA EPISTÉMICA Y ABDUCCIÓN 65<br />
más bien por asimilación de los nuevos datos. Así, al llegar un nuevo dato, se incorporan a la<br />
base de conocimientos las hipótesis capaces de explicar dicho dato.<br />
Razonamiento por defecto: El razonamiento por defecto permite la aplicación de ciertas<br />
reglas generales en ausencia de contradicciones y se emplea frecuentemente para modelizar<br />
sistemas en los que no es posible razonar según los parámetros de la lógica clásica. Como<br />
indica Peter Flach, el razonamiento por defecto puede ser contemplado abductivamente.<br />
Aprendizaje: La abducción se puede utilizar como mecanismo de aprendizaje. Cuando intentamos<br />
explicar un hecho que entra en contradicción con la teoría, deberemos modificar esta<br />
teoría, ya que ese hecho, puesto que existe y tenemos evidencia de él, tiene que ser explicado<br />
con la teoría actual.<br />
Vamos ahora a profundizar un poco más en otras aplicaciones. Comenzamos con una aplicación<br />
que permite trabajar con agentes con capacidad de razonamiento abductivo y que colaboran o<br />
compiten, desarrollada por Anna Ciampolini, Evelina Lamma, Paola Mello y Paolo Torroni de la<br />
universidad de Bologna:<br />
5.1. <strong>Lógica</strong> Epistémica y Abducción<br />
Como indicamos al estudiar la lógica epistémica de n agentes, la mayoría de los problemas reales<br />
tratan con entornos complejos que requieren sofisticadas capacidades de razonamiento y reclaman<br />
la solución de varios aspectos simultáneamente. Un planteamiento centralizado, en el que un solo<br />
agente (programa) aborde todos los aspectos del problema, resulta, en general, muy complicado y<br />
muy costoso computacionalmente. La solución más aceptable consiste en contemplar varios agentes<br />
(componentes). Estos agentes han de ser autónomos y poseer capacidades computacionales independientes<br />
y, lo que es más importante, sería deseable que tuvieran la capacidad de interactuar,<br />
colaborar y/o competir con otros agentes.<br />
El problema es cómo combinar el lenguaje de comunicación y el lenguaje de conocimiento local.<br />
Una propuesta de solución a este problema es la arquitectura denominada ALIAS (Abductive Logic<br />
Inteligent Agent System), 1 que hace uso de la lógica para modelizar la capacidad de razonamiento<br />
de los agentes y sus capacidades sociales y en la que el razonamiento local y la interacción global<br />
se especifican en un paradigma basado en programación lógica. En esta arquitectura los agentes<br />
poseen la capacidad de razonamiento abductivo, ya que se considera que la tarea contemplada no<br />
es ajena a situaciones en las que el conocimiento es incompleto, lo cual requiere por parte de los<br />
agentes la capacidad de razonamiento abductivo para poder introducir explicaciones aceptables.<br />
En este ámbito de Sistemas Inteligentes, la abducción se contempla como un modo de ampliar<br />
“dinámicamente” el conocimiento de los agentes mediante explicaciones abductivas.<br />
Podemos considerar entre los agentes dos tipos de coordinación: colaboración y competición. Pensemos,<br />
por ejemplo en sistemas de diagnóstico, donde cada agente (especialista) ha de “suponer”<br />
posibles causas de algunos síntomas. Cuando se considera un solo agente, las hipótesis son asumidas<br />
si son consistentes con el conocimiento previo del agente. Pero en la aplicación que nos ocupa, los<br />
diversos agentes pueden realizar razonamientos abductivos, y será preciso contemplar diferentes<br />
formas de combinación, dependiendo del papel de cada agente en el proceso y de la interacción de<br />
los agentes entre sí.<br />
1 De Paolo Torroni
66 CAPÍTULO 5. APLICACIONES DE LA LÓGICA ABDUCTIVA<br />
En el caso colaborativo, los subproblemas no serán completamente independientes, ya que<br />
las explicaciones abductivas encontradas por separado por cada agente tendrán que ser “conjuntadas”<br />
y mantener la consistencia.<br />
En el caso competitivo, será preciso “confrontar” las explicaciones abductivas y disponer de<br />
un mecanismo de selección.<br />
Para abordar estas tareas, la arquitectura ALIAS utiliza el lenguaje LAILA (Language for Abductive<br />
Logic Agents).<br />
El lenguaje LAILA<br />
El alfabeto de LAILA es<br />
donde:<br />
a LAILA = {true, p, q, . . . , p1, p2, . . . pn, . . . , . . . , q1, q2, . . . , a0, . . . , an, not, ←, &, ; , >, ↓, , }<br />
p, q, . . . , p1, p2, . . . pn, . . . , . . . , q1, q2, . . . son variables proposicionales (átomos básicos, abducibles<br />
o no).<br />
a0, . . . , an los identificadores de n + 1 agentes.<br />
not el símbolo de negación (usado como “negación como fallo”).<br />
← es la conectiva implicación material.<br />
& es la conectiva de colaboración y se utiliza para realizar consultas a diferentes agentes, con<br />
la finalidad de mezclar su respuestas en un único conjunto de hipótesis. Cada consulta puede<br />
ser contemplada como la solución de un sub-problema del problema que se desea resolver.<br />
; es la conectiva de competición.<br />
> es la conectiva de comunicación (usada para la realización de preguntas de un agente a<br />
otros agentes).<br />
↓ es la conectiva de reflexión hacia abajo.<br />
, es el operador de composición de objetivos (estándar de la programación lógica).<br />
Definición 5.1<br />
Un literal es un un átomo, pi o su negación not pi.<br />
Una fórmula comunicación es de la forma: ai > ℓ, donde ai es un agente y ℓ un literal,<br />
Una fórmula simple es de una de las tres siguientes formas:<br />
• true,<br />
• ↓ℓ (con ℓ literal),<br />
• ai > ℓj (es decir, una fórmula de comunicación).
5.1. LÓGICA EPISTÉMICA Y ABDUCCIÓN 67<br />
Una fórmula de LAILA es el cierre inductivo libremente generado del conjunto de fórmulas<br />
simples por los operadores de aridad flexible & y ;.<br />
Como hemos indicado, la interacción entre los agentes se especifica en un paradigma basado en<br />
programación lógica y toda computación comienza con una consulta definida como sigue:<br />
Ejemplo 5.1<br />
Consulta =def ? Cuerpo<br />
la pregunta competitiva formulada por un agente a0:<br />
? ↓ O1 ; a1 > O2<br />
se lee: “el agente a0 ha de ejecutar una derivación abductiva de una explicación para el objetivo<br />
O1, o bien solicitar al agente a1 que explique el objetivo O2”. Podrían existir varias respuestas<br />
disponibles; en cuyo caso, el sistema seleccionará solo una de ellas.<br />
la pregunta colaborativa formulada por el agente a0:<br />
?a1 > O3 & a2 > O4<br />
se lee: “el agente a0 solicita al agente a1 que explique el objetivo O3 y al agente a2 que explique<br />
el objetivo O4. De nuevo, podrían existir varias respuestas disponibles; en cuyo caso, el sistema<br />
mezcla las respuestas de a1 y a2 en un único conjunto de abducibles.<br />
En la arquitectura ALIAS, la estructura interna de cada agente consta de tres módulos:<br />
Módulo de Razonamiento Abductivo, denotado MRA, que contiene las herramientas<br />
de razonamiento abductivo y deductivo.<br />
Módulo de Comportamiento del agente, denotado MCompA.<br />
Módulo de Coordinación entre agentes, denotado MCoorA.<br />
y cada una de ellos incluye una base de conocimiento local, KB.<br />
La KB abductiva viene representada por un programa lógico, es decir, un conjunto de cláusulas<br />
p ← ℓ1 . . . ℓn<br />
donde p es un átomo (la cabeza de la cláusula) y ℓi literales (la secuencia ℓ1 . . . ℓn se denomina<br />
cuerpo de la cláusula);<br />
La KB de comportamiento es un conjunto de cláusulas que describe el comportamiento<br />
del agente dentro del entorno (mediante el lenguaje LAILA). En particular, el comportamiento<br />
social de cada agente puede ser expresado (dentro de MCompA) mediante preguntas colaborativas/competitivas.<br />
Cada vez que el comportamiento de un agente requiere una explicación abductiva<br />
de un objetivo O, se requiere una interacción entre MCompA y MRA para comenzar la prueba<br />
abductiva de O.
68 CAPÍTULO 5. APLICACIONES DE LA LÓGICA ABDUCTIVA<br />
Los distintos agentes lógicos en ALIAS, están provistos de un mecanismo para asegurar la consistencia<br />
en las suposiciones que realizan para resolver sus problemas. Para conseguir este propósito,<br />
contemplan un conjunto de restricciones de integridad como destacamos en el capítulo anterior.<br />
La unión de las bases de conocimiento que tienen todos los agentes forma una base de conocimiento<br />
global que puede ir cambiando dinámicamente en función de la actuación de los distintos agentes.<br />
De hecho, aunque los agentes tiene una base de conocimiento local, también se pueden unir formando<br />
“racimos” 2 , entre los que los agentes que lo forman han de estar de acuerdo sobre el conjunto<br />
de hipótesis supuestas.<br />
Definición 5.2 Dado un conjunto de agentes Ag. Un racimo de agentes es un subconjunto<br />
B Ag ⊆ Ag.<br />
Dada una fórmula A, el racimo de agentes asociado a A, denotado B(A), es el conjunto de<br />
agentes que intervienen en los intercambios de mensajes que ocurren en A:<br />
B(A) = {a | a es un agente en una fórmula de comunicación que ocurre en A}<br />
Por ejemplo, dada la fórmula A = a1 > O1; a2 > O2 & a3AO3, se tiene que A(F ) = {a1, a2, a3}<br />
Para ponerse de acuerdo, los agentes discuten entre sí sobre cómo afrontar los problemas y resolverlos.<br />
Los agentes podrán desplazarse de un racimo a otro para recoger información y transmitirla<br />
a su propio racimo. En definitiva, cada agente está representado por una base de conocimiento<br />
local, como ya hemos mencionado, creada a partir del razonamiento abductivo de un programa<br />
lógico y cada racimo está constituido por un conjunto de agentes y una base de conocimientos<br />
global construida también dinámicamente. Sin embargo, mientras el conocimiento estático de cada<br />
agente puede variar de uno a otro, el conocimiento global de un racimo debe ser común para todos<br />
los agentes del mismo.<br />
Tenemos pues un conjunto de agentes paralelos que cooperan entre sí para resolver determinados<br />
problemas. Cada agente a ∈ Ag tiene su propia (posiblemente incompleta) base de conocimiento,<br />
K(a), y utiliza la abducción como razonamiento para hallar nuevas hipótesis. Los agentes son<br />
agrupados en racimos y cada ramillete está asociado con un conjunto de hipótesis abducibles,<br />
∆. 3 Dada una cierta teoría, se califica de abducibles solo a ciertos predicados, de forma que<br />
son tales predicados los únicos que podrían aparecen en las explicaciones; de esta forma se evitan<br />
explicaciones absurdas (las cuales pueden aumentar continuamente). Además, los agentes de un<br />
mismo grupo parten de un mismo conjunto de hipótesis y si uno de ellos intenta aumentar el<br />
conjunto con una nueva, los agentes que pertenecen al mismo grupo cooperarán entre sí para<br />
comprobar la consistencia de esta nueva hipótesis. De modo que, si todos los agentes están de<br />
acuerdo, incorporarán dicha hipótesis; si no, la desecharán.<br />
Ejemplo 5.2<br />
1. Consideremos la pregunta competitiva formulada por el agente a0:<br />
esta pregunta tiene los efectos siguientes:<br />
? a1 > O1 ; a2 > O2<br />
2 bunches, en la bibliografía inglesa<br />
3 Entre las diversas técnicas para optimizar la búsqueda de explicaciones, una de ellas es el empleo de predicados<br />
abducibles, como estudiamos en el capítulo anterior.
5.1. LÓGICA EPISTÉMICA Y ABDUCCIÓN 69<br />
a0 pregunta al agente a1 para resolver el objetivo O1; si O1 se obtiene en a1, entonces se<br />
pueden obtener n (n¿0) explicaciones abductivas consistentes, E1i (donde i ∈ {1, . . . , n})<br />
consistentes en el ramillete {a0, a1}, para O1.<br />
a0 pregunta al agente a2 para resolver el objetivo O2; si O2 se obtiene en a2, entonces<br />
se pueden obtener m (m > 0) explicaciones abductivas consistentes, E2j (donde j ∈<br />
{1, . . . , m}) consistentes en el ramillete {a0, a2}, para O2.<br />
La explicación abductiva resultante es o bien E1i (para algún i ∈ {1, . . . , n}) o bien E2j<br />
(para algún j ∈ {1, . . . , m}).<br />
Si tanto a1 como a2 fallan, la consulta competitiva falla.<br />
2. Consideremos la pregunta colaborativa formulada por el agente a0:<br />
? a1 > O1 & a2 > O2<br />
que expresa que el agente a0 consulta al agente a1 para resolver O1 y a la vez al agente a2<br />
para resolver el objetivo O2. La pregunta terminará con éxito si y solo si ambos agentes a1 y<br />
a2 terminan con éxito. Esta pregunta tiene los efectos siguientes:<br />
a0 pregunta al agente a1 para resolver el objetivo O1; si O1 se obtiene en a1, entonces<br />
se pueden obtener n (n > 0) explicaciones abductivas consistentes, E1i (donde i ∈<br />
{1, . . . , n}) consistentes en el ramillete {a0, a1}, para O1.<br />
a0 pregunta al agente a2 para resolver el objetivo O2; si O2 se obtiene en a2, entonces<br />
se pueden obtener m (m > 0) explicaciones abductivas consistentes, E2j (donde j ∈<br />
{1, . . . , m}) consistentes en el ramillete {a0, a2}, para O2.<br />
La explicación abductiva resultante para la consulta colaborativa es por lo tanto, el<br />
conjunto<br />
E = {Ek | (Ek = E1i ∪ E2j y Ek es consistente en {ao, a1, a2}}<br />
Si fallan o a1 > O1 o a2 > O2, entonces la consulta q falla.<br />
Definición 5.3 Un programa lógico abductivo es una terna (P, A, IC), donde:<br />
P es un programa lógico (conjunto de cláusulas de programa; la teoría Θ en nuestro desarrollo<br />
anterior), posiblemente con átomos abducibles en los cuerpos de las cláusulas;<br />
A es un conjunto de predicados abducibles, es decir, predicados que pueden ser usados<br />
como explicaciones y que no están definidos en la teoría;<br />
IC es un conjunto de restricciones de integridad que han de ser satisfechas por la teoría. 4<br />
En esencia, las restricciones de integridad reducen el número de explicaciones para una observación.<br />
Dado un programa abductivo (P, A, IC) y una fbf, O (observación), el propósito de la abducción<br />
es encontrar un conjunto de explicaciones atómicas, E, posiblemente minimal, tales que:<br />
4 Aunque los predicados abducibles no están definidos en la teoría, las restricciones de integridad nos pueden<br />
permitir disponer alguna información sobre ellos.
70 CAPÍTULO 5. APLICACIONES DE LA LÓGICA ABDUCTIVA<br />
E ⊆ A<br />
P ∪ E |= O<br />
P ∪ E satisface las restricciones de integridad IC.<br />
A esta relación de consecuencia la denotaremos<br />
(P, A, IC), E |=ab O<br />
Si identificamos un agente a con su programa lógico abductivo, (P, A, IC), podemos usar la notación<br />
a, E |=abd O<br />
Ejemplo 5.3 [J.Pearl] Consideremos el siguiente programa:<br />
donde<br />
Lahierba-está-mojada ← Llovió-última-noche<br />
Lahierba-está-mojada ← Losaspersores-estan-abiertos<br />
Loszapatos-están-mojados ← Lahierba-está-mojada<br />
A = {Llovió-última-noche, Aspersores-abiertos}<br />
IC = {← Llovió-última-noche, Losaspersores-estan-abiertos}<br />
Para satisfacer tales restricciones, los predicados Llovió-última-noche y Losaspersores-estanabiertos<br />
no se pueden contemplar simultáneamente.<br />
Supongamos la observación O = Loszapatos-están-mojados. Esta observación puede ser explicada<br />
por dos conjuntos de enunciados minimales:<br />
Abd1 = {Llovió-última-noche, ¬Losaspersores-estan-abiertos } y<br />
Abd2 = {Losaspersores-estan-abiertos, ¬Llovió-última-noche }<br />
Puesto que ¬ ocurre en el cuerpo de las cláusulas, podemos reemplazar los literales negados, ¬P ,<br />
por un literal positivo ℓ = ¬P .<br />
Ejemplo 5.4 Consideremos el agente a0 que representa un paciente y los agentes a1 y a2 que<br />
representan especialistas médicos. Sean s1 y s2 los síntomas observados por tales especialistas.<br />
El conocimiento del agente a1 puede ser modelizado por las siguientes cláusulas:<br />
donde d1 representa una enfermedad.<br />
<br />
s1 ← d1<br />
MCompA : s1 ←↓ s1; MRA :<br />
← d1, s2<br />
El conocimiento del agente a2 puede ser modelizado por las siguientes cláusulas:<br />
<br />
s1 ←↓ s1<br />
MCompA :<br />
donde d2 y d3 representan enfermedades.<br />
s2 ←↓ s2<br />
<br />
s1 ← d3<br />
MRA :<br />
s2 ← d2
5.1. LÓGICA EPISTÉMICA Y ABDUCCIÓN 71<br />
Ambos agentes tienen que buscar explicaciones para el síntoma s1. Por su parte, solo el agente a2<br />
puede formular una hipótesis para el síntoma s2. Por lo tanto, el paciente, a0, formula la pregunta<br />
siguiente:<br />
?(a1 > s1; a2 > s1) & a2 > s2<br />
El MCompA de a0, interpreta la pregunta y envía tres mensajes diferentes para recabar explicaciones<br />
a los otros agentes:<br />
(1) a0 pregunta por s1 al agente a1 en el ramo B1 = {a0, a1}, lo cual significa que a1 ha de demostrar<br />
s1 en B1. El agente a1 “reflexiona hacia abajo” s1 en MCompA y esta computación<br />
termina produciendo la explicación abductiva E1 = {d1, not s2}.<br />
(2) a0 pregunta por s1 al agente a2 en el ramo B2 = {a0, a2}, lo cual significa que a1 ha de<br />
demostrar s1 en B2. El agente a1 “reflexiona hacia abajo” s1 en el módulo local MRA. Esta<br />
computación termina produciendo la explicación abductiva E2 = {d3}<br />
(3) a0 pregunta por s2 al agente a2 en el ramo B2 = {a0, a2},lo cual significa que a1 ha de demostrar<br />
s2 en B2. El agente a2 aplica s2 a la pregunta abductiva en el módulo local MCompA.<br />
Esta computación termina produciendo la explicación abductiva E3 = {d2}.<br />
Las tres computaciones comienzan en paralelo y tienen que ser coordinadas de acuerdo con los<br />
operadores colaborativos/competitivos que ocurren en la pregunta planteada por el agente a0. En<br />
particular, después de que una o ambas de las computaciones competitivas (la 1 y la 2) finalizan,<br />
el agente selecciona una de las dos explicaciones producidas. Tenemos dos casos posibles:<br />
(a) E1 = {d1, not s2} es seleccionada. La composición colaborativa con a2 sigue, en orden a<br />
analizar su consistencia y producir hipótesis unión de las dos soluciones: E = E1 ∪ E3 =<br />
{d1, not s2, d2}. Si fuese inconsistente. ABM daría lugar a un mecanismo de retroceso para<br />
encontrar otra solución mediante la consulta a1 > s1; a2 > s1. Por lo tanto, a0 cuestiona la<br />
creación de un último ramo B3 = {a0, a1, a2}, al que a0 hará la pregunta {d1, not s2, d2}, para<br />
analizar su consistencia, y generar una solución a la pregunta completa, es decir, la final.<br />
Desafortunadamente, este E falla, debido a la regla de a2: s2 ← d2, por lo tanto, es necesario<br />
de nuevo un retroceso, que en este caso conduce al caso b) siguiente<br />
(b) Se selecciona la expliacación E3 = {d3}. La composición colaborativa con E2 sigue, produciendo<br />
E ′ = E3 ∪ E2 = {d3, d2} que es inconsistente. a0 procede a la creación del ramo<br />
B2 = {a0, a2}, al que a0 le hará la pregunta δ = {d3, d2} que termina con éxito.<br />
Por lo tanto, la única solución posible para la pregunta inicial es la solución abductiva {d3, d2}.
72 CAPÍTULO 5. APLICACIONES DE LA LÓGICA ABDUCTIVA
Capítulo 6<br />
<strong>Lógica</strong> <strong>Paraconsistente</strong><br />
6.1. Motivación<br />
En lógica clásica y en sus extensiones (tales como en las lógicas modales), a partir de una<br />
contradicción se puede inferir cualquier fórmula, es decir: para cualesquiera fórmulas A y B, se<br />
tiene:<br />
A, ¬A |= B<br />
o, equivalentemente, |= A → (¬A → B); o bien |= (A ∧ ¬A) → B<br />
Esta propiedad se conoce como el principio de explosión o ex contradictione sequitur<br />
quodlibet y también se le conoce como “paradoja de la implicación material”, debido a que nos<br />
muestra fórmulas válidas, pero a las que rechaza nuestra intuición. No es la única; podemos considerar<br />
también<br />
|= A → (B → A) o equivalentemente |= A → (B ∨ ¬B)<br />
principio conocido como verum ex quodlibet sequitur.<br />
El principio de explosión tiene como consecuencia que, dada una teoría o base de conocimiento,<br />
Ω, si se tiene que Ω es inconsistente, entonces cualquier fórmula del lenguaje es consecuencia de Ω<br />
y por lo tanto Ω carece de interés.<br />
Las lógicas cuya relación de consecuencia semántica ( |= ) o sintáctica ( ⊢ ) satisfacen el principio<br />
de explosión, se dicen lógicas explosivas.<br />
Nadie duda que en el mundo real están presentes las contradicciones. De aquí el interés de<br />
intentar analizarlas, de intentar proporcionar mecanismos mediante los cuales la existencia de contradicciones<br />
no colapse la tarea de razonar.<br />
Por otra parte, ¿qué hacer con los enunciados del lenguaje natural que son simultáneamente<br />
verdaderos y falsos? Pensemos en las múltiples versiones de la “paradoja del mentiroso”: Si consideramos<br />
la frase “esta frase no es verdadera”, esta frase es simultáneamente verdadera y falsa.<br />
También su existencia reclama un análisis de las fórmulas A ∧ ¬A.<br />
Desde el punto de vista computacional, podemos poner muchos ejemplos que nos reclaman la<br />
necesidad de lidiar con contradicciones. Pensemos por ejemplo en las bases de conocimiento. El<br />
constante control de seguimiento que requiere el comprobar la co<strong>here</strong>ncia interna del conocimiento<br />
hace imposible la eficiencia, ya que cada nuevo conocimiento debe ser co<strong>here</strong>nte con el conocimiento<br />
73
74 CAPÍTULO 6. LÓGICA PARACONSISTENTE<br />
previo y este problema se ve incrementado cada vez que se incremente el tamaño de la base. 1<br />
Solucionar el problema de datos inconsistentes o contradictorios conduce a la revisión en las bases<br />
de conocimiento, que elimina datos hasta conseguir la consistencia. Pero existe otro modo, en el<br />
que estamos interesados, el del uso de la lógica paraconsistente, que no elimina las inconsistencias,<br />
sino que tiene como objetivo evitar las derivaciones triviales a las que llevan consigo.<br />
Ejemplo 6.1 En la lógica clásica proposicional, desde una base de datos {A, ¬A, A → B, C}, podemos<br />
obtener como consecuencias “aceptables o no triviales”: A, ¬A, A → B (usando la propiedad<br />
de reflexividad de |=), B (usando A, A → B y Modus Ponens), A ∧ B (usando A, B y la introducción<br />
de ∧), etc. pero también podemos obtener como consecuencias “triviales”: ¬B, C ∧ ¬C,<br />
cualquier fbf D, etc (por el principio de explosión).<br />
En este texto vamos a acercarnos a la lógica paraconsistente, cuya característica distintiva<br />
acabamos de señalar: rechazar el principio de explosión. Como precursores de la lógica paraconsistente<br />
podemos destacar a Jean ̷Lukasiewicz, Nicolai Vasili’ev, S. Jaskowski, A. Arruda, N. da<br />
Costa y Francisco Miró Quesada (en el siglo XX). Más adelante le prestaremos especial atención a<br />
N. da Costa.<br />
Respecto a los pioneros, sepamos, por ejemplo, que la lógica discursiva de Jaskowski fue pensada<br />
para analizar las posibles conclusiones en un debate entre n agentes que tienen diferentes opiniones<br />
sobre algún tema, algunas de ellas, contradictorias entre sí. Su lógica es una lógica modal en el que<br />
cada mundo posible representa a un agente y en tal mundo se satisface lo que el agente considera<br />
verdadero. Como afirma Jaskowski, “Si dos personas se contradicen en un debate, esto no significa<br />
que los demás crean cualquier cosa, ni que crean su conjunción”, es decir, no se admite el Principio<br />
de Explosión. Lo importante es poder conocer las contradicciones que tienen lugar durante el<br />
debate y las conclusiones que se pueden derivar desde ellas, para obviarlas y poder realizar un<br />
análisis adecuado.<br />
6.2. Inconsistencia y trivialidad<br />
El rechazo del principio de explosión nos indica que la lógica paraconsistente no es una extensión<br />
de la lógica clásica, sino una lógica rival de la lógica clásica que intenta poder tratar con<br />
contradicciones, sin que para ello haya que destruir toda la estructura del aparato deductivo y,<br />
por lo tanto, es de interés en el estudio y desarrollo de los sistemas computacionales tolerantes<br />
con la inconsistencia. Más adelante detallaremos algunas de sus aplicaciones computacionales más<br />
destacadas.<br />
Consideremos la lógica clásica proposicional. Para poder trabajar con contradicciones rechazando<br />
el principio de explosión, es necesario rechazar también por lo menos alguna de los siguientes<br />
principios de la lógica clásica proposicional: Dadas A, B ∈ Lprop y Ω ⊆ Lprop,<br />
1. A |= A ∨ B Introducción de la disyunción<br />
2. A ∨ B, ¬A |= B Silogismo disyuntivo<br />
3. Si Ω |= A y A |= B, entonces Ω |= B Transitividad o Corte<br />
1 Pensemos, por ejemplo en la Web Semántica. Es claro que se trata de una base de conocimiento inconsistente<br />
sujeta a una semántica definida mediante ontologías. Por lo tanto, se requiere razonar con inconsistencias.
6.2. INCONSISTENCIA Y TRIVIALIDAD 75<br />
4. ¬¬A |= A Eliminación de la doble negación<br />
La razón para la necesidad de esta eliminación es que, a partir de estos principios, se puede demostrar<br />
el principio de explosión. En efecto, usemos deducción natural para obtener A, ¬A ⊢DN B<br />
haciendo uso de estos principios:<br />
(1) A Hipótesis.<br />
(2) ¬A Hipótesis.<br />
(3) A ∨ B (1) e Introducción de la disyunción<br />
(4) B (2), (3) y Silogismo Disyuntivo<br />
Por esta razón, existen distintas lógicas paraconsistentes, según qué principio eliminemos (para<br />
asegurar que el principio de explosión no está presente):<br />
La introducción de la disyunción, (∨, i), no parece ser el mejor candidato. Es difícil pensar en<br />
la semántica de ∨ sin que dispongamos de este principio. 2<br />
El principio que más frecuentemente es rechazado es el silogismo disyuntivo (A∨B, ¬A |= B).<br />
¿Pero a qué precio? Si eliminamos este principio no podemos mantener la semántica habitual<br />
de →. En efecto, si consideramos que A → B ≡ ¬A ∨ B ¡tendríamos que eliminar Modus<br />
Ponens!, ya que<br />
A → B, A ⊢ B equivale a ¬A ∨ B, ¬¬A ⊢ B<br />
es decir, o disponemos de una implicación que no esté definida por A → B ≡ ¬A∨B o Modus<br />
Ponens tiene que ser eliminada, lo cual tampoco parece aceptable. Que existan excepciones a<br />
Modus Ponens no significa que sea rechazado, pero tal opción requiere establecer una fuerte<br />
distinción entre violaciones graves de Modus Ponens y una regla Modus Ponens que permita<br />
únicamente algunas excepciones. Además, será necesario poder explicar por qué y dónde<br />
puede fallar Modus Ponens.<br />
¿Qué decir del Principio de la eliminación de la doble negación? Informalmente, podemos<br />
contemplar la paraconsistencia como la aceptación de que un enunciado puede ser tal que él<br />
y su negación son verdaderos, pero esto nos lleva a plantarnos que requerimos una “negación<br />
no clásica”, ya que ésta nos lleva al principio de explosión. Profundicemos en el concepto de<br />
negación. Podemos considerar como definición de la negación clásica la siguiente:<br />
Ω, ¬A |= B para toda fbf B si y solo si Ω |= A<br />
Esta definición es pura, en el sentido de que no involucra a ninguna otra conectiva. Así que<br />
tendremos que discutir qué negación consideramos y, puesto que las dos condiciones mínimas<br />
para la negación en términos semánticos son:<br />
N-(i) : Si A es falsa, entonces su negación es verdadera.<br />
N-(ii) : Si A es verdadera, entonces su negación es falsa.<br />
tendremos que realizar un análisis que nos lleve a decidir qué definición de negación adoptar.<br />
2 Aunque así lo hace la lógica ANA (a la que nos referiremos posteriormente), consecuentemente, ANA trabaja<br />
con una semántica diferente de ∨.
76 CAPÍTULO 6. LÓGICA PARACONSISTENTE<br />
En definitiva, como es habitual, será la aplicación en la que deseemos hacer uso de una lógica<br />
paraconsistente la que nos indiqué cuales han de ser los principios que debamos eliminar. Así, por<br />
ejemplo, en el estudio de Sistemas Software complejos se suele eliminar la regla de la introducción<br />
de la disyunción (A |= A∨B). Tendremos ocasión de conocer ejemplos de algunas de las aplicaciones<br />
y debatir sobre qué principios eliminar. Pero no cabe duda de que, sea cual sea la elección de los<br />
principios a eliminar, deberíamos justificar su elección en razón de:<br />
su efectividad para bloquear explosiones,<br />
su potencia para bloquear otros principios que sean contra-intuitivos (como lo es, claramente,<br />
el pricipio de explosión),<br />
que el número de principios de la lógica proposicional eliminados sea minimal en algún sentido.<br />
Ya hemos establecido el objetivo de la lógica paraconsistente: Deseamos poder trabajar con<br />
teorías inconsistentes, de modo que podamos establecer derivaciones no triviales. 3 ¿Pero cómo lo<br />
haremos? Antes de dar la respuesta a esta pregunta, profundicemos en el concepto de “consistencia”.<br />
Este concepto es clave en la lógica clásica, incluso el concepto de consecuencia lógica puede ser<br />
expresado en términos del concepto de consistencia:<br />
“C se deriva de Ω si y solo si Ω ∪ {¬C} es inconsistente”<br />
¡Tal parece que vamos a adentrarnos en arenas movedizas! Conviene pues aferrarnos a una definición<br />
de consecuencia lógica, que no haga uso del concepto de consistencia:<br />
“C se deriva de Ω si todo modelo de Ω es un modelo de C”<br />
Ahora nuestra tarea será establecer una clara diferencia entre inconsistencia y trivialidad.<br />
Comencemos estableciendo ambos conceptos:<br />
Definición 6.1 Sea Ω ⊆ Lprop y sea Saxiom un sistema axiomático para Lprop. Denotemos por<br />
Con |= (Ω) el conjunto de fbfs que son consecuencia lógica (semántica) de Ω, es decir,<br />
Con |= (Ω) = {A ∈ Lprop | Ω |= A} 4<br />
Denotemos por Con SAxiom (Ω) el conjunto de fbfs que son consecuencia lógica (sintáctica) de Ω en<br />
⊢<br />
S:<br />
{A ∈ Lprop | Ω ⊢SAxiom A} 5<br />
Se dice que:<br />
Ω es inconsistente si existe A ∈ Lprop tal que A, ¬A ∈ Ω.<br />
Ω es explícitamente inconsistente si existe A ∈ Lprop tal que A ∧ ¬A ∈ Ω.<br />
3 Consideremos, por ejemplo, Ω = {A, ¬A, A → B, C} ⊆ Lprop, si Con(Ω) denota el conjunto de consecuencias<br />
lógicas de Ω, se tiene que, por ejemplo, B, B ∧ C ∈ Con(Ω), pero también se tiene que cualquier D ∈ Lprop es tal que<br />
D ∈ Con(Ω)<br />
4 Reiteremos: Ω |= A si todo modelo de Ω es un modelo de A.<br />
5 Recordemos: Ω ⊢ A si existe una secuencia de fbfs en Lprop, A1, . . . , An tal que An = A y toda Ai con 1 ≤ i ≤ n−1<br />
es un axioma de S, o bien pertenece a Ω, o bien se obtiene de dos fbfs anteriores en la secuencia, mediante las reglas<br />
de inferencia de S.
6.3. ALGUNAS LÓGICAS PARACONSISTENTES 77<br />
Ω es trivial si para toda fbf, A ∈ Lprop, se tiene que A ∈ Ω, es decir, Ω = Lprop.<br />
Ω es semánticamente deductivamente trivial si Con |= (Ω) es trivial, es decir, para toda<br />
fbf, A, se tiene que Ω |= A.<br />
Ω es sintácticamente deductivamente trivial si Con ⊢ (Ω) es trivial, es decir, para toda<br />
fbf, A, se tiene que Ω ⊢ SAxiom A.<br />
❡❡ Advirtamos que un conjunto de fbfs, Ω, puede ser inconsistente y no ser explícitamente inconsistente<br />
y, recíprocamente, ser explícitamente inconsistente y no ser inconsistente.<br />
Ahora, parece que hemos delimitado todos los aspectos a considerar antes de definir qué entendemos<br />
por un sistema lógico paraconsistente:<br />
Definición 6.2 Sea SAxiom un sistema axiomático sobre Lprop. Decimos que (Lprop, |=, ⊢ SAxiom ) es<br />
paraconsitente si existe Ω ⊆ Lprop tal que es inconsistente o bien explícitamente inconsistente,<br />
sin ser ni semánticamente deductivamente trivial, ni sintácticamente deductivamente trivial.<br />
❡❡ Se tiene pues que la propiedad fundamental que ha de satisfacer la terna (Lprop, |=, ⊢ ) es<br />
SAxiom<br />
que exista Ω ⊆ Lprop tal que:<br />
Existe A ∈ Lprop tal que A, ¬A ∈ Ω o bien A ∧ ¬A ∈ Ω.<br />
Existe B ∈ Lprop tal que Ω |= B o bien Ω ⊢ B<br />
SAxiom<br />
❡❡ Una definición alternativa es la siguiente: Una lógica (Lprop, ⊢ ) se dice paraconsistente<br />
SAxiom<br />
si el conjunto de SAxiom-teoremas es inconsistente, pero no trivial.<br />
En la lógica clásica proposicional, un sistema es inconsistente si y solo si es trivial. En general,<br />
las lógicas explosivas no pueden distinguir entre inconsistencia y trivialidad.. Por lo tanto, las<br />
lógicas paraconsistentes son no-explosivas.<br />
6.3. Algunas lógicas paraconsistentes<br />
6.3.1. La <strong>Lógica</strong> de la Paradoja LP<br />
Esta lógica fue introducida por Graham Priest, uno de los más activos defensores de la lógica<br />
paraconsistente. El lenguaje es el de la lógica clásica proposicional.<br />
La semántica es S = ({0, 1, {0, 1}}, {1, {0, 1}}, I), con I ⊂ {I : LP −→ {0, 1, {0, 1}}}.<br />
Si I ∈ I y A ∈ LP se dice que:<br />
A es simplemente verdadera en I si I(A) = 1.<br />
A es simplemente falsa en I si I(A) = 0.<br />
A es contradictoria en I si I(A) = {0, 1}.<br />
Así pues, las contradicciones en LP son los enunciados que son (simultáneamente) falsos y verdaderos.<br />
La semántica de las conectivas viene definida por las siguientes tablas:
78 CAPÍTULO 6. LÓGICA PARACONSISTENTE<br />
¬<br />
0 1<br />
1 0<br />
{0, 1} {0, 1}<br />
❡❡ <br />
Advirtamos que en LP :<br />
Definición 6.3<br />
∧ 0 1 {0, 1}<br />
0 0 0 0<br />
1 0 1 {0, 1}<br />
{0, 1} 0 {0, 1} {0, 1}<br />
→ 0 1 {0, 1}<br />
0 1 1 1<br />
1 1 1 {0,1}<br />
{0, 1} {0, 1} 1 {0, 1}<br />
∨ 0 1 {0, 1}<br />
0 0 1 {0, 1}<br />
1 1 1 1<br />
{0, 1} {0, 1} 1 {0, 1}<br />
↔ 0 1 {0, 1}<br />
0 1 0 {0, 1}<br />
1 0 1 {0,1}<br />
{0, 1} {0, 1} {0, 1} {0, 1}<br />
la negación es una extensión de la negación clásica: “¬A es simplemente verdadera si y<br />
solo si A es simplemente falsa”,<br />
la negación de una contradicción es una contradicción,<br />
1 ∈ I(A ∧ B) si y solo si 1 ∈ I(A) y 1 ∈ I(B),<br />
0 ∈ I(A ∨ B) si y solo si 0 ∈ I(A) ó 0 ∈ I(B),<br />
1. A ∈ LP se dice válida si, para toda interpretación I ∈ I se tiene que 1 ∈ I(A).<br />
2. Sea Ω ⊂ LP (conjunto de fbfs) y C ∈ LP (una fbf). Se dice que C se deduce de Ω,<br />
denotado Ω |=LP C si, para toda interpretación I ∈ I se tiene que si 1 ∈ I(Ai), para toda<br />
Ai ∈ Ω, entonces 1 ∈ I(C), es decir:<br />
Ω |=LP C si y solo si, para toda I ∈ I se tiene que o 1 ∈ I(C) o existe Ai ∈ Ω tal<br />
que 1 ∈ I(Ai)<br />
En consecuencia,<br />
En LP se satisface la ley del tercero excluido, es decir, |=LP A ∨ ¬A,<br />
LP es una extensión de Lprop, ya que las fbfs válidas en Lprop, son válidas en LP ,<br />
NO se satisface que A |=LP B si y solo si {A, ¬B} es insatisfacible,<br />
Para toda fbf, A, se tiene que Ω = {A, ¬A} es satisfacible y |=LP A → A.<br />
puesto que podemos considerar una interpretación, I, tal que I(p) = {0, 1} para toda p ∈<br />
Vprop, tenemos que en LP existen conjuntos de fbfs que no son insatisfacibles<br />
Ejemplo 6.2 Construyendo la tabla de verdad, podemos comprobar que en LP se tiene que<br />
¬A ∨ B ≡ A → B
6.3. ALGUNAS LÓGICAS PARACONSISTENTES 79<br />
6.3.1.1. Conectivas definidas en LP<br />
En LP definimos las conectivas descritas en la siguiente tabla, que no son más que afirmaciones<br />
de valores de verdad:<br />
- TA expresa que A es verdadera.<br />
- FA expresa que A es falsa.<br />
A TA FA ∆A ∇A ◦A •A<br />
1 1 0 1 0 1 0<br />
0 0 1 0 1 1 0<br />
{0, 1} 1 1 0 0 0 1<br />
- ∆A expresa que A es simplemente verdadera.<br />
- ∇A expresa que A es simplemente falsa.<br />
- ◦ A expresa que A no es contradictoria.<br />
- •A expresa que A es contradictoria.<br />
El siguiente resultado es de comprobación inmediata.<br />
Lema 6.1 Para toda fbf, A, se tiene que:<br />
1. ∇A ≡ ∆¬A.<br />
2. ◦ A ≡ ∆A ∨ ∇A.<br />
3. • A ≡ ¬ ◦ A.<br />
❡❡ Advirtamos que:<br />
∆A y ∇A no son contradictorias, pero son incompatibles.<br />
T A y ∇A son contradictorias<br />
F A y ∆A son contradictorias<br />
El siguiente resultado (cuya demostración, inmediata a partir de las definiciones, se deja al<br />
lector) nos detalla qué:<br />
Proposición 6.1 Dadas A, B ∈ LP , se tiene que:<br />
1. |=LP (A ∧ (A → B)) → B<br />
2. |=LP (A ∧ (A → B)) → (A → B)<br />
3. |=LP (A ∧ ¬A) → B<br />
El item 3 parece preocupante, ya que parece que nos impide el objetivo de anti-trivialidad. Sin<br />
embargo, debemos volver a la definición 6.3: ¡no debemos confundir las nociones de validez de las<br />
fbfs y validez de la relación de consecuencia!. El siguiente resultado nos detalla qué principios de la<br />
relación de consecuencia de la lógica clásica se mantienen en LP y cuáles no, asegurando que LP<br />
es una lógica paraconsistente:
80 CAPÍTULO 6. LÓGICA PARACONSISTENTE<br />
Proposición 6.2 Dadas A, B ∈ LP , se tiene que:<br />
1. A |=LP A ∨ B Se satisface la Introducción de la Disyunción<br />
2. A, B |=LP A ∧ B Se satisface la Introducción de la Conjunción<br />
3. A ∧ B |=LP A Se satisface la Ley de Eliminación de la conjunción<br />
4. A → B |=LP ¬B → ¬A Se satisface la Ley de Contraposición<br />
5. ¬¬A |=LP A Se satisface la Ley de Eliminación de la doble negación<br />
6. (A → (C → B)) |=LP (C → (A → B)) Se satisface la Ley de Permutación<br />
7. A, ¬A |=LP B No se satisface el Principio de Explosión<br />
8. ¬A, A ∨ B |=LP B No se satisface el Silogismo Disyuntivo<br />
9. A → B, B → C |=LP A → C No se satisface el Silogismo Hipotético<br />
10. A, A → B |= B No se satisface Modus Ponens<br />
11. A → B, ¬B |=LP ¬A No se satisface Modus Tollens<br />
12. A → B, ¬B |= ¬A No se satisface la Introducción de la negación<br />
Un simple uso de las tablas de verdad, nos permiten asegurar el siguiente resultado, de gran<br />
importancia para abordar la tarea de búsqueda de razonadores automáticos para LP :<br />
Teorema 6.1 Dadas las fbfs A1, . . . , An, C ∈ LP se tiene que<br />
Si A1, . . . , An |=LP C entonces A1, . . . , An−1 |=LP An → C<br />
6.3.1.2. Método de las Tablas Semánticas en LP<br />
Como sistema de refutación, en la adaptación de este método a LP , para verificar la validez de<br />
una inferencia H1, . . . , Hn |=LP C (o una fbf, |=LP ), se organizan las fbfs de Ω = {H1, . . . , Hn, ∇C}<br />
(respectivamente, ∇A) en un árbol de una sola rama como sigue:<br />
T H1<br />
T H2<br />
.<br />
T Hn<br />
∇C<br />
Llamaremos a este árbol el árbol inicial asociado a Ω. Como en el caso clásico, este árbol se<br />
irá ampliando sucesivamente mediante reglas de extensión, basadas únicamente en la estructura<br />
sintáctica de las fórmulas. Cada árbol obtenido se denomina árbol asociado a Ω.<br />
Para la descripción del método se agrupan las fórmulas por tipos, que en el caso de LP son los<br />
siguientes:
6.3. ALGUNAS LÓGICAS PARACONSISTENTES 81<br />
Definición 6.4 Las fbfs se clasifican en: literales, de tipo α (o de comportamiento conjuntivo)<br />
y de tipo β (o de comportamiento disyuntivo). Cada fórmula de tipo α o de tipo β tiene asociada<br />
dos componentes, denotadas α1, α2 y β1, β2 respectivamente. Las siguientes tablas muestran las<br />
fórmulas de tipo α y de tipo β junto con sus componentes.<br />
α α1 α2<br />
T (A ∧ B) T A T B<br />
∆(A ∧ B) ∆A ∆B<br />
F (A ∨ B) F A F B<br />
∇(A ∨ B) ∇A ∇B<br />
F (A → B) T A F B<br />
∇(A → B) ∆A ∇B<br />
6.3.1.3. Reglas de Extensión<br />
T ¬A F A F A<br />
F ¬A T A T A<br />
∇¬A ∆A ∆A<br />
∆¬A ∇A ∇A<br />
β β1 β2<br />
T (A ∨ B) T A T B<br />
∆(A ∨ B) ∆A ∆B<br />
F (A ∧ B) F A F B<br />
∇(A ∧ B) ∇A ∇B<br />
T (A → B) F A T B<br />
∆(A → B) ∇A ∆B<br />
T (A ↔ B) T A F A<br />
T B F B<br />
F (A ↔ B) T A F A<br />
F B T B<br />
∆(A ↔ B) ∆A ∇A<br />
∆B ∇B<br />
∇(A ↔ B) ∇A ∇B<br />
∆B ∆A<br />
El árbol inicial asociado a un conjunto de fbfs Ω, denotado TΩ, es extendido sucesivamente,<br />
para obtener árboles asociados a Ω, mediante las siguientes reglas:<br />
(α) Si ρA denota la rama determinada por el nodo hoja A y una α-fórmula ocurre en ρA, extendemos<br />
dicha rama añadiendo:<br />
Dos nodos etiquetados con sus componentes α1, α2 si α1 = α2.<br />
Un nodo etiquetado con la componente común si α1 = α2.<br />
.<br />
α<br />
.<br />
A<br />
−→<br />
(β) Si ρA denota la rama determinada por el nodo hoja A y una β-fórmula ocurre en ρA, extendemos<br />
dicha rama añadiendo:<br />
Dos nodos si β1 = β2: uno como descendiente izquierdo y otro como descendiente derecho<br />
etiquetados con sus componentes β1 y β2 respectivamente.<br />
.<br />
α<br />
.<br />
A<br />
α1<br />
α2<br />
Un nodo etiquetado con la componente común, si β1 = β2.
82 CAPÍTULO 6. LÓGICA PARACONSISTENTE<br />
.<br />
β<br />
.<br />
A<br />
−→<br />
.<br />
β<br />
.<br />
A<br />
<br />
β2<br />
❅ β1<br />
Definición 6.5 Sea Ω = {T H1, . . . , Tn, ∇C} un conjunto de fbfs. Un árbol T se dice que es un<br />
árbol para Ω, si existe una secuencia de árboles T1, . . . , Tk tal que:<br />
T1 es el árbol inicial asociado a Ω, es decir, el árbol de una sola rama:<br />
T H1<br />
T H2<br />
.<br />
T Hn<br />
∇C<br />
Cada árbol Ti (2 ≤ i ≤ k) es un árbol asociado a Ω que es extensión inmediata de Ti−1,<br />
es decir, Ti se obtiene de Ti−1 por aplicación de una regla de extensión a uno de sus nodos.<br />
Tk = T .<br />
Definición 6.6 Sea T un árbol para Ω. Una rama de T se dice cerrada, si en ella ocurren una<br />
fórmula A y una fórmula A ′ tales que ambas son incompatibles, es decir, en ella ocurre un par de<br />
fórmulas del tipo:<br />
(∇B, ∆B); (T B, ∇B); (F B, ∆B); (A, ∇A)<br />
En caso contrario, se dice que la rama es abierta. El árbol T se dice cerrado si todas sus ramas<br />
son cerradas.<br />
Una rama ρ de un árbol T para Ω se dice completa si satisface las siguientes condiciones:<br />
1. Si la fórmula α ocurre en ρ, también sus componentes α1 y α2 ocurren en ρ.<br />
2. Si la fórmula β ocurre en ρ, o la componente β1 o la componente β2 ocurre en ρ.<br />
Definición 6.7 Un árbol T para Ω se dice terminado si toda rama es cerrada o completa.<br />
Teorema 6.2 Para todo conjunto finito Ω de fbfs, mediante un número finito de extensiones inmediatas<br />
se obtiene un árbol terminado para Ω.<br />
Demostración: Basta advertir que para toda α-fórmula y para toda β-fórmula, el grado de<br />
sus componentes (α1 y α2, y β1 y β2 respectivamente), en los casos en que son diferentes, es<br />
estrictamente menor que el grado de α o β respectivamente.<br />
Definición 6.8 Llamamos refutación para un conjunto Ω de fbfs a todo árbol cerrado para Ω.<br />
Una fbf C se dice que se deriva del conjunto de fbfs {H1, . . . , Hn}, si existe una refutación para<br />
{H1, . . . , Hn, ∇C}. En particular, una fbf A se dice demostrable si existe una refutación para<br />
{∇A}.
6.3. ALGUNAS LÓGICAS PARACONSISTENTES 83<br />
Teorema 6.3 (Corrección y completitud) El método de las tablas semánticas es:<br />
1. Correcto: Si {H1, . . . , Hn, ∇C} puede ser refutado entonces H1, . . . , Hn |=LP C.<br />
2. Completo: Si H1, . . . , Hn |=LP C, entonces existe una refutación para {H1, . . . , Hn, ∇C}.<br />
6.3.1.4. Descripción del método<br />
En la construcción de un árbol para refutar un conjunto de fórmulas, se tienen en cuenta las<br />
siguientes consideraciones:<br />
Para evitar ramificaciones innecesarias, se da prioridad a la regla (α).<br />
La regla (α) y la regla (β) se aplican sobre cada nodo una sola vez. Para indicar que la αfórmula<br />
o β-fórmula correspondiente no será usada más, tras su aplicación, se marca el nodo<br />
con .<br />
No se realiza ninguna extensión sobre las ramas cerradas. Para indicar que una rama es<br />
cerrada se marca con ×.<br />
En los siguientes ejemplos hacemos uso del método.<br />
Ejemplo 6.3 Demostramos que Modus Ponens, p, p → q |=LP q, no es válida en LP :<br />
T p<br />
T (p → q) 1<br />
∇ q ❍❍<br />
✟<br />
✟<br />
F p<br />
◦<br />
T q<br />
⊗<br />
La rama izquierda es abierta, ya que T p y F p son compatibles. La rama derecha es cerrada,<br />
ya que ∇ q y T q son incompatibles.<br />
Ejemplo 6.4 Demostramos que la Ley de Absorción |=LP (p → (p → q)) → (p → q), es válida en<br />
LP :<br />
∇[(p → (p → q)) → (p → q)] 1<br />
∆(p → (p → q)) 2<br />
6.3.2. Las C-lógicas de da Costa<br />
∇(p → q)3<br />
✟✟<br />
❍❍ ∇p ∆(p → q) 4<br />
∆p ∆p<br />
∇q ∇q<br />
⊗<br />
✟✟<br />
❍❍ ∇p ∆q<br />
⊗ ⊗<br />
El profesor da Costa introdujo una jerarquía de lógicas denominadas C-sistemas, que son tolerantes<br />
a la inconsistencia y que pueden admitir explosión respecto a algunos enunciados. Estos<br />
C-sistemas son extensiones de la parte positiva (sin negación) de lógicas consistentes, como la lógica
84 CAPÍTULO 6. LÓGICA PARACONSISTENTE<br />
clásica y el comportamiento de la negación caracteriza a cada uno de los sistemas de la jerarquía.<br />
La jerarquía se denota C1, C2, . . . , Cn, . . .. Podemos decir que, las lógicas desarrolladas por Newton<br />
da Costa, persiguen tres objetivos:<br />
El principio de no contradicción, ¬(A ∧ ¬A), no debe ser válido.<br />
De dos fórmulas A y ¬A, en general, no debe existir la posibilidad de deducir una fbf arbitraria.<br />
Mantener los esquemas de axiomas y reglas de inferencia de la lógica clásica que no den lugar<br />
a conficto con las dos exigencias anteriores.<br />
Comencemos prestando atención a la lógica C1, limitándonos al caso proposicional.<br />
6.3.2.1. La lógica C1<br />
Comenzamos describiendo el cálculo C1. El lenguaje de C1 es el mismo que el de la lógica clásica<br />
proposicional y se introduce en el modo habitual la conectiva definida ↔:<br />
A ↔ B =def (A → B) ∧ (B → A)<br />
La idea de da Costa al definir su lógica C1, fue disponer de una lógica paraconsistente, pero<br />
lo más cercana posible a la lógica clásica proposicional. En ella, la negación, ¬, es una negación<br />
paraconsistente, es decir, existe al menos una teoría, T , tal que:<br />
existen fbfs, A tales que T |=P A y T |=P ¬A (T es inconsistente),<br />
existen fbfs, B, tales que o T |=P B o bien T |=P ¬B (T no es trivial).<br />
donde el subíndice P denota que se trata de una derivación “paraconsistente”.<br />
6.3.2.2. Un sistema axiomático para C1<br />
Definimos un sistema axiomático para C1 en el que, en principio, disponemos de:<br />
Axiomas:<br />
1. Axiom→1 : A → (B → A)<br />
2. Axiom→2 : (A → B) → ((A → (B → C)) → (A → C))<br />
3. Axiom∧1 : (A ∧ B) → A<br />
4. Axiom∧2 : (A ∧ B) → B<br />
5. Axiom∧3 : A → (B → (A ∧ B))<br />
6. Axiom∨1 : A → (A ∨ B)<br />
7. Axiom∨2<br />
B → (A ∨ B)<br />
8. Axiom∨3 (A → C) → ((B → C) → ((A ∨ B) → C))
6.3. ALGUNAS LÓGICAS PARACONSISTENTES 85<br />
Regla de Inferencia:<br />
A, A → B<br />
Modus Ponens:<br />
B<br />
¿Y como tratar la negación? Podríamos optar por añadir como axioma el esquema<br />
(A → B) → ((A → ¬B) → ¬A) († 1)<br />
Sin embargo esta opción no es aceptable, ya que de († 1) se deriva ¬(A ∧ ¬A) y se tiene que<br />
A, ¬A, B ⊢ A y A, ¬A, B ⊢ ¬A y, por lo tanto, A, ¬A ⊢ ¬B. Por todo ello, optamos por el siguiente<br />
esquema de axioma:<br />
¬(B ∧ ¬B) → ((A → B) → ((A → ¬B) → ¬A)) (♯)<br />
❡❡ ¬(A ∧ ¬A) significa que A satisface el principio de no-contradicción, es decir, A is “aceptable”.<br />
Por otra parte, si A ∧ ¬A es verdadera, entonces A es “inaceptable”. Podemos pues introducir<br />
la definición siguiente:<br />
Definición 6.9 Para toda fbf A definimos A o =def ¬(A ∧ ¬A).<br />
A o expresa que A es consistente, es decir, no se tiene A y ¬A. Así, la inconsistencia se considera<br />
una noción primitiva, expresada por A o .<br />
Ahora podemos formular el esquema (♯) como sigue:<br />
9. Axiom¬1 : Bo → ((A → B) → ((A → ¬B) → ¬A))<br />
Necesitamos también introducir un esquema de axioma que asegure que las fbfs construidas a partir<br />
de fbfs aceptables son así mismo aceptables:<br />
10. Axiom¬2 : (Ao ∧ B o ) → ((A ∧ B) o ∧ (A ∨ B) o ∧ (A → B) o<br />
con lo cual podremos deducir que (A o ∧ B o ) → (A ↔ B) o<br />
❡❡ o o Advirtamos que no es preciso suponer que A → (¬A) ya que se trata de una forma derivable<br />
en nuestro sistema.<br />
También parece conveniente incluir el siguiente esquema de axioma:<br />
11. Axiom¬3 : A ∨ ¬A<br />
Finalmente, ¿Qué podemos decir del esquema ¬¬A → A († 2)? Podemos razonar que, si A es<br />
aceptable, se comporta de forma clasica y † 2 es válida. Por otra parte, si A es inaceptable, tanto<br />
A como ¬A son verdaderas y por el comportamiento de →, y tenemos que ¬¬A → A († 2) es<br />
verdadera. Así pues, consideramos el esquema<br />
12. Axiom¬4 : ¬¬A → A († 2)<br />
Tenemos pues definido un sistema axiomático para C1 que consta de 12 axiomas y la regla de<br />
inferencia Modus Ponens. El concepto de deducción de una fbf desde un conjunto de fbfs es el<br />
habitual.<br />
Estudiamos las propiedades básicas de C1. En primer lugar, directamente de las definiciones, se<br />
tiene el siguiente resultado:
86 CAPÍTULO 6. LÓGICA PARACONSISTENTE<br />
Proposición 6.3<br />
1. {A} ⊢C1 A Reflexividad<br />
2. Si Ω ⊢C1 C, entonces si Ω′ ⊇ Ω, se tiene que Ω ′ |=C1<br />
C Monotonía<br />
3. Si para toda A ∈ Γ se tiene que Ω ⊢C1 A y Γ ⊢C1 B, entonces Ω ⊢C1 B Corte<br />
Teorema 6.4 En C1 se satisface que, para todo conjunto de fbfs, Ω y cualesquiera fbfs, A, B, C:<br />
1. Si Ω, A ⊢ B entonces Ω ⊢ A → B teorema de la Deducción<br />
2. A, A → B ⊢ B Modus Ponens<br />
3. A, B ⊢ A ∧ B; A, B ⊢ A y A, B ⊢ A<br />
4. A ⊢ A ∨ B; B ⊢ A ∨ B<br />
5. Si Ω, A ⊢ C y Ω, B ⊢ C, entonces Ω, A ∨ B ⊢ C demostración por casos<br />
6. ¬¬A ⊢ A<br />
Demostración: la demostración es la misma que para la lógica clásica.<br />
Teorema 6.5 En C1 no son esquemas de teoremas los siguientes:<br />
1. ¬A → (A → B)<br />
2. ¬A → (A → ¬B)<br />
3. A → (¬A → B)<br />
4. A → (¬A → ¬B)<br />
5. (A ∧ ¬A) → B<br />
6. (A ∧ ¬A) → ¬B<br />
7. (A → B) → ((A → B) → ¬A)<br />
8. A → ¬¬A<br />
9. (A ↔ ¬A) → B<br />
10. (A ↔ ¬A) → ¬B<br />
11. ¬(A ∧ ¬A)<br />
12. (A ∧ ¬A) → ¬(A ∧ ¬A)<br />
Demostración: El resultado puede ser probado usando las tablas siguientes con 1 y 2 como<br />
valores destacados
6.3. ALGUNAS LÓGICAS PARACONSISTENTES 87<br />
A ¬A<br />
1 3<br />
2 1<br />
3 1<br />
A B A → B A ∧ B A ∨ B<br />
1 1 1 1 1<br />
2 1 1 1 1<br />
3 1 1 3 1<br />
1 2 1 1 1<br />
2 2 1 1 1<br />
3 2 1 3 1<br />
1 3 3 3 1<br />
2 3 3 3 1<br />
3 3 1 3 3<br />
Por lo tanto, en C1 no son válidos los siguientes principios, que pueden conducir a trivialización<br />
¬A → (A → B); ¬A → (A → ¬B); (A ∧ ¬A) → B; (A ∧ ¬A) → ¬B<br />
El siguiente resultado nos sitúa a C1 como lógica rival de la lógica clásica proposicional.<br />
Teorema 6.6 Si añadimos a los axiomas de C1 el principio de contradicción, ⊢ ¬(A ∧ ¬A), obtenemos<br />
la lógica clásica proposicional.<br />
Ahora definimos la negación fuerte en C1, que nos establecerá la cercanía de C1 a la lógica clasica<br />
proposicional.<br />
Definición 6.10 Llamamos negación fuerte a la conectiva definida<br />
¬ ∗ A =def ¬A ∧ A o<br />
Los resultados siguientes reflejan el buen comportamiento anunciado de la nueva conectiva.<br />
Teorema 6.7 En C1 son teoremas los siguientes esquemas<br />
1. (A → B) → ((A → ¬ ∗ B) → ¬ ∗ A)<br />
2. A → (¬ ∗ A → B)<br />
3. A ∨ ¬ ∗ A<br />
En definitiva,<br />
Teorema 6.8 En C1, Las conectivas {¬ ∗ , ∧, ∨, →} satisfacen todos los esquemas y reglas de inferencia<br />
de la lógica clásica proposicional.<br />
Teorema 6.9 Si se añade a C1 como axioma cualquier fbf de la forma A ∧ ¬ ∗ A se trivializa C1,<br />
es decir, todas las fbfs son teoremas.
88 CAPÍTULO 6. LÓGICA PARACONSISTENTE<br />
6.3.2.3. La jerarquia Cn, 0 ≤ n ≤ ω<br />
C1 no es la única lógica en la que no son válidos el principio de no contradicción y el principio de<br />
explosión. da Costa propone una jerarquía de lógicas que gozan de estas propiedades (exceptuando<br />
la primera de ellas, denotada C0 y que representa la lógica clásica proposicional). La jerarquía es<br />
la siguiente<br />
C0, C1, C2, . . . , Cn, . . . , Cω<br />
Como hemos indicado, C0 representa la lógica clásica proposicional. Definimos las restantes. Para<br />
ello, comenzamos con la definición siguiente:<br />
Definición 6.11 Para toda fbf, A, se definen:<br />
A (1) =def A o<br />
A (n) =def A n−1 ∧ (A (n−1) ) o , 2 ≤ n < ω<br />
La lógica Cω se describe mediante el siguiente sistema axiomático:
6.4. APLICACIONES DE LA LÓGICA PARACONSISTENTE 89<br />
Axiomas:<br />
1. Axiom→1 : A → (B → A)<br />
2. Axiom→2 : (A → B) → ((A → (B → C)) → (A → C))<br />
3. Axiom∧1 : (A ∧ B) → A<br />
4. Axiom∧2 : (A ∧ B) → B<br />
5. Axiom∧3 : A → (B → (A ∧ B))<br />
6. Axiom∨1 : A → (A ∨ B)<br />
7. Axiom∨2<br />
8. Axiom∨3<br />
9. A ∨ ¬A<br />
10. ¬¬A → A<br />
B → (A ∨ B)<br />
Regla de Inferencia:<br />
Modus Ponens:<br />
(A → C) → ((B → C) → ((A ∨ B) → C))<br />
A A → B<br />
B<br />
Las lógicas Cn, 1 ≤ n < ω, se obtienen añadiendo en el sistema axiomático descrito para Cω los<br />
siguientes axiomas:<br />
C 1 n) : B (n) → ((A → B) → ((A → ¬B) → ¬A)<br />
C 2 n) : (A (n) ∧ B (n) ) → ((A → B) (n) ∧ (A ∧ B) (n) ∧ (A ∨ B) (n) )<br />
Terminamos esta breve visión de las jerarquía de lógicas paraconsistente de da Costa con el siguiente<br />
resultado.<br />
Teorema 6.10 Cada una de las lógicas de la jerarquía de Da Costa es más fuerte que las que le<br />
preceden.<br />
6.4. Aplicaciones de la lógica paraconsistente<br />
Las lógicas paraconsistentes tienen numerosos campos de aplicación, tanto en la tecnología como<br />
en la informática. En esta sección destacamos alguno de ellos.<br />
1. Bases de Datos. En la actualidad, existen gran variedad de Bases de Conocimiento de gran<br />
tamaño, que son utilizadas por numerosos usuarios y generadas a partir de diversas fuentes<br />
(quizás el ejemplo más significativo es el la Web). Con estas circunstancias es difícil asegurar<br />
que no existen informaciones contradictorias. El coste de comprobar que la información que<br />
se introduce no es contradictoria con la información ya existente es muy alto. Por eso es<br />
conveniente tener mecanismos que nos permitan razonar sobre bases de conocimiento con<br />
inconsistencias.
90 CAPÍTULO 6. LÓGICA PARACONSISTENTE<br />
2. Sistemas Expertos: El desarrollo de un Sistema Experto requiere, habitualmente, conjuntar<br />
el conocimiento de diversos expertos y, si el número de ellos es alto, no es extraño que existan<br />
algunos expertos con opiniones contradictorias.<br />
3. Percepción en Robótica: Habitualmente, un robot es equipado con múltiples sensores para<br />
obtener información sobre un mismo aspecto, tales como sensores visuales, auditivos, táctiles<br />
etc. Es posible que estos sensores proporciones información contradictoria. Por ejemplo, si<br />
un robot avanza y se encuentra con un cristal, un sensor visual puede indicar que no hay<br />
obstáculo (por lo tanto, que el robot puede avanzar), mientras que un sensor de tipo auditivo<br />
(radar/sonar) detecta el obstáculo (por lo que indica que el robot no puede avanzar). Ante<br />
esta situación, es preciso dotar al robot de la capacidad de tomar una decisión adecuada y,<br />
para ello, la lógica paraconsistente es una útil herramienta.<br />
4. Planificación: En un sistema multiagente, un agente puede encontrar información contradictoria<br />
debido a la interacción con otros agentes. Así, por ejemplo, después de haber planificado<br />
una serie de acciones, el agente se dispone a coger un bloque que espera que esté en una<br />
determinada posición, pero puede que otro agente lo haya movido a otra y, en consecuencia,<br />
se encontrará con información contradictoria con sus hipótesis de partida.<br />
5. Control de tráfico: Se han desarrollado sistemas software de control y seguridad de tráfico<br />
aéreo, de ferrocarril y de automóviles. Este se ha llevado a cabo utilizando un programa<br />
llamado EVALPSN (y versiones posteriores).<br />
6. Epistemología: En el estudio del conocimiento, al analizar las circunstancias que llevan a<br />
su obtención y los criterios de validación, es necesario tener en cuenta la posibilidad de que<br />
exista información inconsistente.<br />
7. Ingeniería del software: Para tratar las inconsistencias entre la documentación, casos de<br />
uso y el código en sistemas software complejos.