07.05.2013 Views

Logica Abductiva y Lógica Paraconsistente Computacional - here

Logica Abductiva y Lógica Paraconsistente Computacional - here

Logica Abductiva y Lógica Paraconsistente Computacional - here

SHOW MORE
SHOW LESS

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.

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!