Source: https://es.scribd.com/document/93796494/Logica-proposicional
Timestamp: 2020-08-11 04:29:59+00:00

Document:
Logica proposicional | Proposición | Física y matemáticas
5modelo Lineal Secuencial
38_paso2_A
Circuitos Logicos - Logica Formal
Tema1-Teoria y Ejercicios de Logica de Proposiciones
Los presentes apuntes contienen una introducción a la lógica proposicional y sus aplicaciones orientada principalmente a carreras técnicas.
Los apuntes se utilizan en la primera parte de la asignatura “Lógica” de la Escuela Universitaria de Ingeniería Técnica Informática de Oviedo impartida por los autores.
sugenrencia,
labra@lsi.uniovi.es ó anaisabel@lsi.uniovi.es
J. E. Labra G Ana I. Fernández M. Octubre, 1998
1. Lenguaje de la Lógica Proposicional
1.1. Alfabeto de la Lógica Proposicional
1.2. Sintaxis de la Lógica Proposicional
1.3. Semántica de la Lógica Proposicional
2. Equivalencia lógica
3. Consecuencia Lógica
4. Técnicas Semánticas de Estudio de Validez Proposicional
4.1. Tablas de Verdad
4.2. Árboles Semánticos
4.3. Demostraciones por Contradicción
4.4. Resolución Proposicional
4.4.1. Formas Normales
4.4.2. Algoritmo de Resolución Proposicional
4.4.3. Estrategias de resolución
Estrategias de Borrado
4.4.3.1.1. Eliminación de cláusulas con literales puros
4.4.3.1.2. Eliminación de tautologías
4.4.3.1.3. Eliminación de Subsunciones
4.4.3.2. Resolución unitaria
4.4.3.3. Resolución de Entrada
4.4.3.4. Resolución
4.4.3.5. Resolución Ordenada
5. Teoría de la Prueba: Deducción Natural
6. Aplicación al diseño de Circuitos: Álgebra de Boole
Definición de álgebra de Boole y Teoremas
6.4.1. Formas Canónicas
Transformación en forma canónica
6.4.2. Simplificación de funciones lógicas
(enunciados
Nombre de la conectiva
Ejemplos de frases en las que aparece
no p es falso p no es cierto p
sin embargo q
no obstante q
⁄ q
o p o q o ambos al menos p o q como mínimo p o q
pÆ q
si p entonces q p sólo si q
(Implicación)
q cuando p
es necesario para p
para p es necesario q
es suficiente para q
para q es suficiente p no p a menos que q
p es necesario y suficiente para q
(Equivalencia)
El lenguaje de la lógica proposicional trabajará con los siguientes conjuntos de símbolos:
Variables o letras proposicionales: p, q, r, Símbolos de Conectivas:
Las reglas de formación de frases en el lenguaje de la lógica proposicional (LPROP) son:
1.- Las constantes V (Verdadero) y F (Falso) pertenecen a LPROP
2. Las letras de proposición p,q,r,
pertenecen a LPROP
3. Si A y B pertenecen a LPROP entonces
(ÿA) , (ÿB ), ( A Ÿ B ), ( A ⁄ B ), ( A Æ B ) , ( A ´ B )
4. Sólo pertenecen a LPROP las fórmulas que cumplan los requisitos 1, 2 y 3.
Con el fin de evitar el exceso de paréntesis se establece la siguiente jerarquía de prioridades:
Con dicha tabla, la fórmula ÿp ⁄ q Æ p Ÿ r se reconocería como: ((ÿp) ⁄ q) Æ (p Ÿ r)
La teoría semántica de la lógica proposicional trata de atribuir significados (Verdadero o Falso) a las distintas fórmulas del lenguaje. Dichos significados dependen del contexto particular en el que se utilice la fórmu la. Cada contexto se denomina Interpretación.
Definición 1: Una interpretación de una fórmula F en lógica proposicional es una asignación de valores
a cada una de las letras proposicionales de F. El valor de una proposición
interpretación I se denota como V I (
Definición 2: Dada una fórmula F y una interpretación I, el valor de F bajo I (denotado por V
{V, F}
° Si F está formada por una proposición p, entonces V
° Si F es de la forma ÿG entonces V
Ï V
° Si F es de la forma G Ÿ H entonces V
F en caso contrario
° Si
G ⁄ H entonces V
G Æ H
G ´ H
Ejemplo 1: Sea la fórmula
F = ( p Æ q) ´ ÿq ⁄ ÿp
y la interpretación I que asigna
Definición 3: Una interpretación I es un modelo para una fórmula F si V I (
F ) = V
p bajo una
)) es:
V ( p)
Es posible establecer una clasificación de las fórmulas proposicionales en función de los valores que tomen bajo las diferentes interpretaciones, de esta forma una fórmula F se clasifica en:
Válida ó Tautología: Todas las interpretaciones son un modelo (Para toda interpretación I, V
) = V )
Satisfacible: Alguna interpretación es un modelo (Existe una interpretación I tal que V I (
F ) = V )
Insatisfacible: Ninguna interpretación es un modelo (No existe una interpretación I tal que V I (
Una fórmula puede ser: satisfacible o insatisfacible. Un tipo especial de fórmula satisfacible, es aquella que toma siempre valor V (es válida). Por tanto, las fórmulas válidas son un subconjunto de las satisfacibles.
Teorema 1: Una fórmula F es válida si y sólo si su negación ÿF es insatisfacible.
F es válida
¤ { Def. válida} "I V I (F)= V
¤ { Def. Interpretación ÿ } "I V I (ÿF) = F
¤ { Def. Insat. } ÿF es Insatisfacible
NOTA: A lo largo de estos apuntes se utilizará un formato lineal para las demostraciones promovido por E. W. Dijkstra [Dijkstra, 90]. En este formato, las líneas impares contienen los principales pasos de la demostración y las líneas pares, comentarios para pasar de un paso a otro.
En algunas ocasiones, el comentario recurre a la regla de Leibniz que dice lo siguiente:
Si se cumple F(X) y X = Y entonces también se cumple F(Y)
Definición 4: Se dice que dos fórmulas
Teorema 2: A B si y sólo si la fórmula A´B es válida
A y B son equivalentes lógicamente (se denota por A B ó
A ¤ B) si para toda interpretación I, se cumple que V
¤ { Def. } "I
¤ { Def. Interpretación ´ } "I V I (A´B) = V
¤ { Def. Válida } A´B es válida
V I (A) = V I (B)
El teorema anterior reduce la demostración de equivalencia entre fórmulas a la demostración de validez de
A continuación se presenta una tabla con una serie de equivalencias de uso común y de fácil
Supresión de Implicación:
A Æ B ÿA ⁄ B
A Æ B ÿB Æ ÿ A
Supresión de Doble Implicación:
A ´ B (A Æ B)Ÿ (B Æ A)
AŸ(B⁄ A) A
A⁄(B Ÿ A) A
A Ÿ F F
A ⁄ V V
Ÿ V A
A ⁄ F A
E. Complementario
Medio Excluido A ⁄ ÿA V
AŸ ÿA F
⁄ A A
A ⁄ B B ⁄ A
A Ÿ B B Ÿ A
AŸ(BŸ C) (AŸ B)ŸC
A⁄(B ⁄C) (A⁄ B)⁄C
A⁄(B ŸC) (A⁄ B)Ÿ(A⁄ C)
AŸ(B ⁄C) (AŸ B)⁄(AŸ C)
ÿ(A⁄ B) ÿA Ÿ ÿB
ÿ(AŸ B) ÿA⁄ ÿB
ÿÿA A
Teorema 3: Si A es válida y A B entonces B es válida
A es válida
¤ { Def. Válida } "I V I (A) = V
¤ {Si A B entonces "I V I (A) = V I (B), Leibniz } "I V I (B) = V
¤ { Def. Válida } B es válida
Con el teorema anterior, si se sabe que X es válida, para demostrar que Z es válida se podrá utilizar el
Definición 5: Sea C un conjunto de fórmulas {P , ,L y sea Q una fórmula. Se dice que Q es
consecuencia lógica del conjunto C de premisas (se denotará C ﬁ Q ) si toda interpretación que es un modelo de C es también un modelo de Q .
= V entonces
) = V (Intuitivamente, se podría considerar cada interpretación como un "posible mundo". De esa
Es decir, si para toda interpretación I se cumple que si V
forma, decir que Q es consecuencia lógica de unas premisas es equivalente a pensar que Q toma valor V
en cualquier mu ndo en el que las premisas tomen valor V ).
Una estructura de la forma {P ,
el conjunto de premisas y Q, la conclusión.
se denomina razonamiento. Donde {P
Se dice que un razonamiento es correcto si la conclusión es consecuencia lógica de las premisas.
Teorema 4: {P ,
es correcto si y sólo si P
ŸLŸ
{P 1 , P 2 ,
P n } ﬁ Q es correcto
¤ { Def. Razonamiento } "I Si V I (P 1 ) = V I (P 2 ) =
¤ { Def. Interpretación de conjunción }
= V I (P n ) = V entonces V I (Q) = V
"I Si V I (P 1 Ÿ P 2 Ÿ
P n ) = V entonces V I (Q) = V
¤ { Def. Interpretación de Implicación }
"I V I (P 1 Ÿ P 2 Ÿ
P n Æ Q) = V
¤ { Def. Válida }
P 1 Ÿ P 2 Ÿ
P n Æ Q es válida
Técnicas Semánticas de Estudio de Validez
Definición 6: Una tabla de verdad es una representación en forma de árbol del valor de una fórmula en todas las posibles interpretaciones.
Por ejemplo, para calcular el valor de verdad de la fórmula F = pÆq ´ ÿp⁄q , la tabla de verdad consiste en representar las 4 posibles interpretaciones y evaluar la fórmula en dichas interpretaciones
pÆq ´ ÿp⁄q
El número de posibles interpretaciones de una fórmula F es 2 n donde n es el número de variables proposicionales de F. Por tanto, este método tiene una complejidad exponencial que complica su utilización para fórmulas complejas
Definición 7: Un árbol semántico es una técnica similar a las tablas de verdad que puede simplificar la evaluación de algunas fórmulas.
Inicialmente, se forma el conjunto LP de letras proposicionales de la fórmula. Se construye un nodo inicial del árbol que se tomará como nodo actual y se aplica el siguiente procedimiento:
1.- Se intenta evaluar la fórmula en el nodo actual.
2.- Si es posible asignar a F un valor {V, F} se etiqueta el nodo con dicho valor y se finaliza el tratamiento
del nodo actual.
3.-En caso.contrario:
- Se Selecciona la primera letra proposicional p del conjunto LP
- Se Borra p de LP.
- Se Construyen dos ramas, una correspondiente a p interpretado con valor V
(identificada como p) y la otra correspondiente a p con valor F como ÿp ).
- Repetir el procedimiento por cada uno de los dos nuevos nodos.
(identificada
Definición 8: Los nodos del árbol semántico en los que el conjunto de significados atribuidos hasta ellos hacen Falsa la fórmula, se denominan nodos de fallo y los que la hacen verdadera, nodos de éxito
Ejemplo 2: Dada la fórmula (pÆq) Æ(ÿpÆÿq). Seleccionando los literales por orden alfabético, se obtiene el árbol semántico:
ÿq
Para demostrar que una fórmula F es válida por contradicción se realiza lo siguiente:
1.- Se supone que existe una interpretación I tal que V I (F) = F y se intentan calcular los diversos valores de
2.- Si se llega a una contradicción:
ÿ$I V I (F) = F ﬁ "I V I (F) = V ﬁ F es válida $I V I (F) = F ﬁ F no es válida
Este tipo de demostraciones se suelen representar etiquetando la fórmula con valor F y evaluando posibles valores hasta que se llegue la contradicción.
Ejemplo 3. A continuación se demuestra que la fórmula ÿp⁄ ÿqÆÿ(pŸ q) es válida
ÿ p ⁄ ÿq Æ ÿ( pŸ q)
A la hora de evaluar una conectiva pueden aparecer varias alternativas. Conviene recordar que:
Para poder asegurar que F es válida debe llegarse a contradicción por todas las alternativas
Si no se llega a contradicción por alguna alternativa se puede decir que F no es válida
Ejemplo 4. A continuación se demuestra que la transitividad de la equivalencia lógica. Es decir que:
{A ´ B, B ´ C) ﬁ (A ´ C)
Para ello, basta con demostrar que la fórmula (A ´B)Ÿ (B´C)Æ(A´C) es válida. En dicha
demostración aparecen dos alternativas y, como se llega a contradicción por ambas, puede concluirse que
la fórmula es válida.
A ´ B Ÿ B ´ C
El método de resolución es un algoritmo fácilmente mecanizable propuesto por J.A. Robinson en 1965. La entrada del algoritmo no es una fórmula, sino un conjunto de cláusulas y el algoritmo chequea si son insatisfacibles. Antes de presentar el algoritmo de resolución, se define qué es una cláusula y cómo transformar una fórmula en un conjunto de cláusulas mediante las formas normales.
Definición 9: Una fórmula F es una conjunción si es de la forma F
Definición 10: Una fórmula F es una disyunción si es de la forma F
⁄L⁄
Definición 11: Un literal es una proposición (p) o una proposición negada (ÿp) .
Definición 12: Una fórmula F está en Forma Normal Conjuntiva (FNC) si es una conjunción de la forma
donde cada F i
es una disyunción de literales. Se representa como Ÿ
⁄ i l
Ejemplo 5: La siguiente fórmula está en Forma Normal Conjuntiva: (ÿp⁄q) Ÿ (ÿp⁄r⁄ÿs) Ÿ p
Definición 13: Una fórmula F está en Forma Normal Disyuntiva (FND) si es una disyunción de la forma
F 1 ⁄F 2 ⁄
⁄F
n donde cada F i
es una conjunción de literales. Se representa como ⁄
Ejemplo 6: La siguiente fórmula está en Forma Normal Disyuntiva: (p Ÿ ÿq Ÿ r) ⁄ ÿp ⁄ (r Ÿ ÿs)
Ejemplo 7: Obsérvese que la fórmula ÿp está a la vez en FNC y FND
Teorema 5: Toda fórmula de la lógica de proposiciones puede ser transformada en una fórmula lógicamente equivalente a ella en Forma Normal Conjuntiva (Disyuntiva). Dem:
La demostración consiste en indicar los pasos del algoritmo de transformación a forma normal conjuntiva. Puesto que estos pasos mantienen la equivalencia y dado que la equivalencia cumple la propiedad transitiva (ejemplo 4), la fórmula resultante es equivalente a la fórmula original. Para demostrar formalmente que el algoritmo termina, se requiere el estudio de sistemas de re-escritura de términos que puede consultarse en [Abramsky, 92]. Los pasos de transformación son:
1. Eliminar conectiva ´. A´B (AÆB)Ÿ (BÆA)
2. Eliminar conectiva Æ. A Æ B ÿA ⁄ B
3. Introducir negaciones hasta que afecten a literales mediante las leyes de Morgan.
ÿ(A Ÿ B) ÿA ⁄ ÿB
ÿ(A ⁄ B) ÿA Ÿ ÿB
4. Eliminar negaciones múltiples. ÿÿA A
5. Aplicar propiedades distributivas para eliminar las posibles conjunciones (disyunciones) dentro
de disyunciones (conjunciones) obteniendo Forma Normal Conjuntiva (Disyuntiva).
Puesto que las fórmulas resultantes de aplicar cada uno de los pasos anteriores mantienen la equivalencia, la fórmula obtenida será equivalente a la fórmula original.
En muchas ocasiones se añaden otros tres pasos que simplifican la fórmula resultante:
6. Eliminar conjunciones/disyunciones con un literal y su opuesto. (pŸ ÿp Ÿ X) ⁄ Y Y (p⁄ ÿp ⁄ X) Ÿ Y Y
7. Eliminar literales repetidos
8. Eliminar subsunciones. Una subsunción se produce cuando una conjunción (o disyunción) C está incluida en otra D. En dicho caso se elimina la cláusula D (A ⁄ B) Ÿ A A
(A Ÿ B) ⁄ A A
Ejemplo 8: Para transformar la fórmula ÿ(pÆq)´p⁄ r a Forma Normal Conjuntiva, se pueden emplear los siguientes pasos:
ÿ(pÆq)´p⁄ r
{ Eliminación ´ }
(ÿ (p Æ q) Æ p ⁄ r) Ÿ ( (p ⁄ r) Æ ÿ(p Æ q))
{ Eliminación Æ }
(ÿ (ÿ (ÿp ⁄ q) ⁄ p ⁄ r) Ÿ ( ÿ (p ⁄ r) ⁄ ÿ(ÿ p ⁄ q))
{ Eliminación doble negación }
(ÿp ⁄ q ⁄ p ⁄ r ) Ÿ ( ÿ (p ⁄ r) ⁄ ÿ(ÿ p ⁄ q))
{ Eliminación disyunción con literal y su opuesto }
( ÿ (p ⁄ r) ⁄ ÿ(ÿ p ⁄ q))
{ De Morgan }
(ÿp Ÿ ÿ r) ⁄ (ÿÿp Ÿ ÿ q)
(ÿp Ÿ ÿ r) ⁄ (p Ÿ ÿ q)
{ Distributiva ⁄ }
((ÿp Ÿ ÿ r) ⁄ p) Ÿ ((ÿp Ÿ ÿ r) ⁄ ÿ q)
Ÿ (p ⁄ ÿ r) Ÿ (ÿp⁄ ÿq) Ÿ (ÿ q⁄ ÿ r)
⁄ ÿ r) Ÿ (ÿp⁄ ÿq) Ÿ (ÿ q⁄ ÿ r)
(ÿp ⁄ p)
Definición 14: Una cláusula es una disyunción de literales.
Definición 15: Una fórmula está en Forma Clausal si se expresa como un conjunto de cláusulas.
La transformación de una fórmula en Forma Normal Conjuntiva a Forma Clausal es inmediata sustituyendo las conectivas Ÿ por comas y englobando las disyunciones entre llaves.
Ejemplo 9: La fórmula (ÿp ⁄ q) Ÿ(ÿp ⁄ q ⁄ ÿr) Ÿ (p) en Forma Normal Conjuntiva equivale a
{ÿp ⁄ q, ÿp ⁄ q ⁄ ÿr, p} en Forma Clausal
Definición 16: Una cláusula sin literales se denomina cláusula vacía, se representa por y su valor es siempre Falso.
Definición 17: Una cláusula que tiene a lo sumo un literal positivo, se denomina cláusula Horn. Una
cláusula Horn será de la forma: A
⁄ ÿ
⁄ÿ
Si n=0, se denomina hecho, si no existe literal positivo (no existe A) entonces se denomina objetivo y, finalmente, si n>0 y existe literal positivo, se denomina regla.
El algoritmo se basa en una regla de inferencia sencilla y, a la vez de gran potencia: la regla de resolución. Puesto que se utiliza una sola regla, el algoritmo es fácil de analizar e implementar.
La idea del principio de resolución es simple: Si se sabe que se cumple: "P ó Q" y también se sabe que se cumple "no P ó R" entonces se puede deducir que se cumplirá "Q ó R".
Ejemplo 10: Si se tiene: "Gana o Pierde o Empata" y "Si Gana entonces da una Fiesta o Va de Viaje". Se puede deducir que: "O Pierde o Empata o da una Fiesta o va de Viaje".
Formalizando, la primera frase sería: G ⁄ P ⁄ E y la segunda: G Æ F ⁄V ÿG ⁄ F ⁄V
La regla de resolución inferirá: P ⁄ E ⁄ F ⁄V
Definición 18: Dadas dos cláusulas C 1 y C 2 tales que exista un literal l de forma que l ŒC 1 y ÿl ŒC 2 , se denomina resolvente de C 1 y C 2 respecto a l a la cláusula:
{l})
Se dice que C 1 y C 2 son cláusulas resolubles.
Teorema 6 (Consistencia de la regla de resolución): El resolvente de dos cláusulas es consecuencia
lógica de ellas. Es decir {C
Dem: Se demuestra por contradicción:
2 = ÿ
El resolvente de C 1 y C 2 respecto a l será R
Por el teorema 2, probar que {C , ﬁ
R(C C
es equivalente a probar que C
válida. Supóngase que existe una interpretación que la hace Falsa, la asignación de valores será:
Puesto que se llega a una contradicción, la fórmula no puede ser Falsa y será siempre verdadera, es decir,
Teorema 7: Dadas dos cláusulas C 1 y C 2 pertenecientes a un conjunto C y resolubles respecto un literal l,
Recordando que un conjunto de cláusulas equivale a forma normal conjuntiva,
. La demostración es:
{ Absorción A A Ÿ B }
Teorema 8: Si el resolvente de dos cláusulas C 1 y C 2 pertenecientes a un conjunto C es la cláusula vacía, entonces C es insatisfacible.
{ Teorema 7, Leibniz }
C C Ÿ
{ Def. F }
C C Ÿ F
{ El. Neutro, C Ÿ F ºº F }
{ Def. Interpretación } "I V I (C) = V I (F)
{ Def. Interpretación: V I (F) = F } "I V I (C) = F { Def. Insatisfacible } C es insatisfacible
A partir de los teoremas anteriores, se define el algoritmo de resolución que chequeará si un conjunto de cláusulas es insatisfacible.
Algoritmo de resolución proposicional
Un conjunto de cláusulas C
Detecta si C es insatisfacible
1.- Buscar dos cláusulas C
tales que exista un literal l que cumple que l ŒC 1 y ÿl ŒC 2
2.- Si se encuentran:
3.- Calcular R
y añadirlo al conjunto C
= r entonces SALIR indicando que C es insatisfacible.
5.- Si no, Volver a 1
3.- Si no se encuentran: SALIR indicando que C no es insatisfacible.
Ejemplo 11: Sea C el
que C es insatisfacible por resolución. Para ello:
- Se resuelve la tercera cláusula ( ÿ r ) con la cuarta ( ÿp ⁄ ÿq ⁄ r ), obteniendo ÿp ⁄ ÿq .
- Se resuelve ahora la cláusula anterior con la segunda cláusula ( ÿp ⁄ q ) obteniendo: ÿp
- Se resuelve ahora la cláusula anterior con la primera y se llaga a la cláusula vacía o
Puesto que se llega a la cláusula vacía, C es insatisfacible.
siguiente conjunto de cláusulas {p, ÿp ⁄ q, ÿr, ÿp ⁄ ÿq ⁄ r} , se puede demostrar
cláusulas {
forma clausal y ÿQ c es el resultado de transformar la negación de la conclusión a forma clausal.
Un razonamiento de la forma
, ,L,
es correcto si y sólo si el conjunto de
es insatisfacible. Cada
P i c es el resultado de transformar la premisa P i
¤ { Teorema 4}
ŸL Ÿ
¤ { Teorema 1}
ÿ( P
Q ) es insatisfacible
¤ { Pasando a Forma Normal Conjuntiva cada premisa y operando }
es insatisfacible
resolución, es necesario transformar cada premisa a forma clausal y añadir el resultado de transformar la
clausal. El conjunto obtenido sería
Para estudiar si el razonamiento {p Ÿ q Æ r Ÿ s, p Æ ÿs} ﬁ ÿp ⁄ ÿq es correcto por
{ÿp ⁄ ÿq ⁄ r,ÿp ⁄ ÿq ⁄ s,ÿp ⁄ ÿs, p,q} . Aplicando el algoritmo de resolución:
- Se resuelve la segunda cláusula ( ÿ p ⁄ ÿq ⁄ s ) con la tercera ( ÿp ⁄ ÿs), obteniendo ÿp ⁄ ÿq
- Se resuelve ahora la cláusula anterior con la cuarta cláusula (p) obteniendo: ÿq
- Se resuelve ahora la cláusula anterior con la quinta y se llega a la cláusula vacía o
Puesto que se llega a la cláusula vacía, el conjunto de cláusulas es insatisfacible y el razonamiento es correcto.
Demostración de la completud del algoritmo de resolución
Se presentan las ideas generales de la demostración de la completud del algoritmo de resolución proposicional sin entrar en una demostración formal que se sale del ámbito de estos apuntes.
Ejemplo 13: Sea el conjunto de cláusulas C = {p, ÿp ⁄ q, ÿr, ÿp ⁄ ÿq ⁄ r}, para construir el árbol
semántico para C se recuerda que un conjunto de cláusulas equivale a una fórmula en Forma Normal Conjuntiva, en este caso, p Ÿ (ÿp ⁄ q) Ÿ (ÿr) Ÿ (ÿp ⁄ ÿq ⁄ r) . En la siguiente figura se muestra el árbol
semántico correspondiente marcando la cláusula falsificada en los nodos de fallo. El árbol semántico será:
p ÿp
q ÿq
F (ÿp ⁄ q)
r ÿr
(ÿp ⁄ ÿq ⁄ r)
(ÿr)
Lema 1: Si un conjunto de cláusulas es insatisfacible, entonces el árbol semántico es finito y está limitado por nodos de fallo, se denomina, en ese caso, árbol de fallo.
Lema 2: Cada nodo de fallo n falsifica al menos a una de las cláusulas del conjunto que será la cláusula asociada a n.
Lema 3: La cláusula C asociada a un nodo de fallo n contiene un subconjunto de los complementos de los literales que aparecen en la rama que va desde la raíz del árbol semántico hasta n.
Dem: Puesto que la cláusula C es falsificada en el nodo n, todos sus literales deben tener asignado un valor en la interpretación parcial correspondiente a n. Además, el valor de esos literales debe ser F (puesto que C es una disyunción). El valor asignado debe ser el complementario. n
Definición 19: Se denomina nodo de inferencia a un nodo del árbol semántico cuyos dos hijos son nodos de fallo.
Lema 4: En un árbol de fallo, salvo que sólo tenga un nodo, debe existir al menos un nodo de inferencia.
Dem: Puesto que el árbol de fallo es finito y las ramas se desarrollan de dos en dos, necesariamente
tendremos un último nodo desarrollado con dos hijos.
Lema 5: Si el árbol semántico de un conjunto de cláusulas es de fallo y contiene un sólo nodo, entonces dicho conjunto contiene la cláusula vacía.
Lema 6: Un nodo de inferencia i indica un paso de resolución de las cláusulas asociadas a sus dos hijos. El resolvente de dichas cláusulas es falsificado por el nodo i y, ocasionalmente, por alguno de sus antecesores.
Dem: En un nodo de inferencia i cualquiera, se tendrá un esquema como el que sigue:
F (C k )
- Puesto que el nodo i no falsificó C j y lo único que cambia en el nodo j respecto a i es el valor de p, la
cláusula C j debe contener el literal ÿ p (complementado para que sea Falso).
- Por la misma razón anterior, la cláusula C k debe contener el literal p (sin complementar para que sea Falso)
Por tanto C j y C k son resolubles respecto a p. El esquema será:
resto C
En el nodo j, C j toma valor Falso, por tanto resto _
contiene el literal p también tomarán valor Falso en el nodo i. De la misma forma, resto
Falso en el nodo i. Por tanto, R
el nodo i, es un nodo de fallo para el resolvente de C j y C k
tomará también valor Falso, como resto _
tomará valor
tomará valor Falso en el nodo i, es decir,
En ocasiones, puede ocurrir que el resolvente sea falsificado también por alguno de los padres del nodo de inferencia, como ejemplo, considérese el conjunto de cláusulas {p, ÿp ⁄ q, ÿ r, ÿp ⁄ r} , el árbol
semántico, junto con los resolventes sería:
( ÿp)
( ÿp ⁄ q)
(ÿ r)
(ÿ p ⁄ r)
El resolvente de los nodos 6 y 7 es ( ÿ p ) que falsifica al nodo 4 pero también falsifica a su antecesor, el
Teorema 10 (Completud del Algoritmo de Resolución Proposicional): Si un conjunto de cláusulas es insatisfacible entonces, aplicando el algoritmo de resolución, se alcanza la cláusula vacía.
C es un conjunto de cláusulas insatisfacibles
¤ {Lema 1}
El árbol semánttico de C será un árbol de fallo
¤ {Lema 4}
$ un nodo de inferencia i
¤ {Lema 6, un nodo de inferencia indica un paso de resolución }
Se puede formar el resolvente con las cláusulas asociadas a los dos hijos i
El resolvente puede añadirse al conjunto C y construir de nuevo el árbol semántico
¤ { Hipótesis, C es insatisfacible, Consistencia Resolución }
El nuevo árbol seguirá siendo insatisfacible, pero contendrá menos nodos
Repitiendo el proceso se llegará a un árbol semántico con un solo nodo que corresponderá a la cláusula vacía {Lema 5} y, por tanto, queda demostrado que se alcanza la cláusula vacía por resolución.
El método de resolución es un algoritmo no determinista ya que pueden encontrarse múltiples formas de alcanzar la cláusula vacía en un conjunto insatisfacible. Muchas veces, siguiendo un determinado camino se alcanzará la cláusula vacía con muchos menos pasos de resolución que por otro camino.
Durante el desarrollo del algoritmo es necesario responder las siguientes preguntas: ¿Qué dos cláusulas se seleccionan? y ¿sobre qué literales se realiza la resolución?.
Las distintas estrategias de resolución tratan de responder a ambas preguntas de forma que se mantenga la completud (si el conjunto es insatisfacible, alcanzar la cláusula vacía) y que se obtenga un comportamiento eficiente.
Una de las desventajas de la utilización de la reglas de resolución sin ninguna restricción consiste en que se pueden seleccionar cláusulas cuyo resolvente no sea útil en el camino de búsqueda de la cláusula vacía. Se observa que muchas veces los resolventes son redundantes o no aportan ninguna utilidad para la búsqueda. A continuación se mencionan una serie de estrategias que servirán para eliminar el trabajo inútil.
4.4.3.1. Estrategias de Borrado
Una estrategia de borrado será una técnica en la cual se eliminan una serie de cláusulas antes de que sean utilizadas. Si dichas cláusulas no van a aportar nada para la búsqueda de la cláusula vacía, su eliminación permitirá un ahorro computacional.
Definición 20: Un literal es puro si y sólo si no existe un literal complementario a él en el conjunto de cláusulas.
Una cláusula que contenga un literal puro es inútil en la búsqueda de la cláusula vacía, puesto que el literal puro no podrá ser eliminado nunca mediante resolución. Por tanto, una estrategia de borrado consiste en la eliminación de cláusulas con literales puros.
Ejemplo 14: El conjunto
es insatisfacible, sin embargo, para
demostrarlo, se puede ignorar la segunda y la tercera cláusula, puesto que ambas contienen el literal puro
C = {ÿp ⁄ ÿ q ⁄ r, ÿ p ⁄ s, ÿ q ⁄ s, p, q, ÿr}
Definición 20: Una tautología es una cláusula que contiene el mismo literal en su forma directa e inversa.
Ejemplo 15: La cláusula p ⁄ ÿq ⁄ r ⁄ ÿp es una tautología.
La presencia o ausencia de tautologías en un conjunto de cláusulas no afecta la condición de satisfacibilidad del conjunto. Un conjunto de cláusulas permanecerá satisfacible independientemente de que se le añadan tautologías. De la misma forma, un conjunto de cláusulas insatisfacible seguirá siendo insatisfacible aunque se eliminen todas sus tautologías. Es posible, por tanto, eliminar las tautologías de
un conjunto de cláusulas para que no intervengan en el proceso de búsqueda sin alterar la satisfacibilidad del conjunto.
Definición 21: Una cláusula C subsume a una cláusula D si y sólo si todo literal de C pertenece también a
D, es decir, C Õ
Ejemplo 16: La cláusula p ⁄ ÿq subsume a la cláusula p ⁄ ÿ q ⁄ r .
Debido a la ley de absorción, un conjunto de cláusulas en el que se eliminan todas las cláusulas subsumidas es equivalente al conjunto original. Las cláusulas subsumidas pueden ser, por tanto, eliminadas.
Es necesario observar que, durante el desarrollo del proceso de resolución, se pueden generar resolventes de cláusulas que sean tautologías o cláusulas subsumidas. Las estrategias de borrado deberán chequear el conjunto de cláusulas original así como los distintos resolventes generados en cada resolución.
Definición 22: Un resolvente unitario es un resolvente en el cual al menos uno de sus padres es una cláusula unitaria (con un sólo literal).
Una estrategia de resolución unitaria es una aplicación del algoritmo de resolución en la cual todos los resolventes son unitarios.
Ejemplo 17: Sea C = {p ⁄ q, ÿp ⁄ r, ÿq ⁄ r, ÿr} . A continuación se aplicará la estrategia de resolución
unitaria, para ello, se seleccionan siempre dos cláusulas resolubles tales que una de ellas tenga un literal.
p ⁄ q
R p (1,5)
⁄ r
R q (1,6)
R q (3,7)
R q (6,7)
4.- ÿr
R r (2,4)
R r (3,4)
Obsérvese que los resolventes generados son un subconjunto de los que se podrían generar mediante la resolución sin restricciones. Por ejemplo, las cláusulas 1 y 2 podrían haberse seleccionado para obtener q ⁄ r . Sin embargo ni esa cláusula ni sus descendientes podrán ser generados porque ninguna de las cláusulas que la generan es unitaria.
Los procedimientos de resolución basados en resolución unitaria son sencillos de implementar y, normalmente, bastante eficientes. Obsérvese que si una cláusula es resuelta con una cláusula unitaria, su resolvente tiene menos literales que la cláusula original. De esa forma los procedimientos siguen una búsqueda directa hacia la cláusula vacía ganando en eficiencia.
Desafortunadamente, los procedimientos de inferencia basados en resolución unitaria no son, en general, completos. Por ejemplo, el conjunto C = {p ⁄ q, ÿ p ⁄ q, p ⁄ ÿq, ÿ p ⁄ ÿq} es insatisfacible, sin embargo,
la resolución unitaria no encontrará la cláusula vacía porque ninguna de las cláusulas es unitaria.
Por otro lado, restringiendo el formato de cláusulas a cláusulas Horn (cláusulas con un literal positivo como máximo) se puede demostrar que si un conjunto de cláusulas Horn es insatisfacible, entonces se llegará a la cláusula vacía aplicando la estrategia de resolución unitaria.
Definición 23: Un resolvente de entrada es un resolvente en el cual al menos uno de sus padres es una cláusula del conjunto original de entrada.
Una estrategia de resolución de entrada es una aplicación del algoritmo de resolución en la cual todos los resolventes son de entrada.
Ejemplo 18: Sea C = {p ⁄ q, ÿp ⁄ r, ÿq ⁄ r, ÿr} . A continuación se aplicará la estrategia de resolución de
entrada, para ello, se seleccionan siempre dos cláusulas resolubles tales que una de ellas pertenezca al conjunto inicial de cláusulas:
ÿ p ⁄
R p (2,6)

References: Resolución 
 Resolución 
 resolución

 Resolución 
 Resolución 
 Resolución

 Resolución 
 resolución 
 resolución 
 resolución 
 resolución 
 resolución 
 resolución

 resolución 
 resolución 
 Resolución 
 resolución 
 Resolución 
 resolución 
 resolución 
 resolución 
 resolución 
 resolución 
 resolución 
 resolución

 resolución 
 resolución 
 resolución 
 resolución 
 resolución 
 resolución 
 resolución 
 resolución 
 resolución