stringtranslate.com

Resolución (lógica)

En lógica matemática y demostración automatizada de teoremas , la resolución es una regla de inferencia que conduce a una técnica de demostración de teoremas con refutación completa para oraciones en lógica proposicional y lógica de primer orden . Para la lógica proposicional, la aplicación sistemática de la regla de resolución actúa como un procedimiento de decisión para la insatisfacibilidad de fórmulas, resolviendo el (complemento del) problema booleano de satisfacibilidad . Para la lógica de primer orden , la resolución se puede utilizar como base para un semialgoritmo para el problema de insatisfacibilidad de la lógica de primer orden , proporcionando un método más práctico que uno que se deriva del teorema de completitud de Gödel .

La regla de resolución se remonta a Davis y Putnam (1960); [1] sin embargo, su algoritmo requería probar todas las instancias básicas de la fórmula dada. Esta fuente de explosión combinatoria fue eliminada en 1965 por el algoritmo de unificación sintáctica de John Alan Robinson , que permitió instanciar la fórmula durante la prueba "bajo demanda" tanto como fuera necesario para mantener la integridad de la refutación . [2]

La cláusula producida por una regla de resolución a veces se denomina resolutiva .

Resolución en lógica proposicional

Regla de resolución

La regla de resolución en lógica proposicional es una única regla de inferencia válida que produce una nueva cláusula implícita en dos cláusulas que contienen literales complementarios. Un literal es una variable proposicional o la negación de una variable proposicional. Se dice que dos literales son complementos si uno es la negación del otro (en lo sucesivo, se considera el complemento de ). La cláusula resultante contiene todos los literales que no tienen complementos. Formalmente:

dónde

todos , , y son literales,
la línea divisoria significa " entraña ".

Lo anterior también se puede escribir como:

O esquemáticamente como:

Contamos con la siguiente terminología:

La cláusula producida por la regla de resolución se denomina resolutiva de las dos cláusulas de entrada. Es el principio de consenso aplicado a cláusulas más que a términos. [3]

Cuando las dos cláusulas contengan más de un par de literales complementarios, la regla de resolución podrá aplicarse (independientemente) para cada uno de esos pares; sin embargo, el resultado es siempre una tautología .

El modus ponens puede verse como un caso especial de resolución (de una cláusula de un literal y de una cláusula de dos literales).

es equivalente a

Una técnica de resolución

Cuando se combina con un algoritmo de búsqueda completo , la regla de resolución produce un algoritmo sólido y completo para decidir la satisfacibilidad de una fórmula proposicional y, por extensión, la validez de una oración bajo un conjunto de axiomas.

Esta técnica de resolución utiliza la prueba por contradicción y se basa en que cualquier oración en lógica proposicional puede transformarse en una oración equivalente en forma normal conjuntiva . [4] Los pasos son los siguientes.

Un ejemplo de este algoritmo es el algoritmo original de Davis-Putnam que luego se perfeccionó hasta convertirse en el algoritmo DPLL que eliminó la necesidad de una representación explícita de los resolutivos.

Esta descripción de la técnica de resolución utiliza un conjunto S como estructura de datos subyacente para representar derivaciones de resolución. Listas , Árboles y Gráficos Acíclicos Dirigidos son otras alternativas posibles y comunes. Las representaciones en árbol son más fieles al hecho de que la regla de resolución es binaria. Junto con una notación posterior para las cláusulas, una representación en árbol también deja claro cómo se relaciona la regla de resolución con un caso especial de la regla de corte , restringida a fórmulas de corte atómicas. Sin embargo, las representaciones de árbol no son tan compactas como las representaciones de conjuntos o de listas, porque muestran explícitamente subderivaciones redundantes de cláusulas que se utilizan más de una vez en la derivación de la cláusula vacía. Las representaciones gráficas pueden ser tan compactas en el número de cláusulas como las representaciones de listas y también almacenan información estructural sobre qué cláusulas se resolvieron para derivar cada resolutivo.

Un ejemplo sencillo

En lenguaje sencillo: supongamos que es falso. Para que la premisa sea cierta, debe ser cierta. Alternativamente, supongamos que es cierto. Para que la premisa sea cierta, debe ser cierta. Por lo tanto, independientemente de la falsedad o veracidad de , si ambas premisas se cumplen, entonces la conclusión es verdadera.

Resolución en lógica de primer orden

La regla de resolución se puede generalizar a la lógica de primer orden para: [5]

donde es el unificador más general de y , y y no tienen variables comunes.

Ejemplo

Las cláusulas y pueden aplicar esta regla con como unificador.

Aquí x es una variable y b es una constante.

Aquí vemos que

explicación informal

En la lógica de primer orden, la resolución condensa los silogismos tradicionales de la inferencia lógica en una sola regla.

Para comprender cómo funciona la resolución, considere el siguiente ejemplo de silogismo de lógica de términos :

Todos los griegos son europeos.
Homero es griego.
Por tanto, Homero es europeo.

O, más generalmente:

Por lo tanto,

Para reformular el razonamiento utilizando la técnica de resolución, primero se deben convertir las cláusulas a la forma normal conjuntiva (CNF). De esta forma, toda cuantificación se vuelve implícita: los cuantificadores universales de variables ( X , Y , ...) simplemente se omiten tal como se entiende, mientras que las variables cuantificadas existencialmente se reemplazan por funciones de Skolem .

Por lo tanto,

Entonces la pregunta es: ¿cómo deriva la técnica de resolución la última cláusula de las dos primeras? La regla es simple:

Para aplicar esta regla al ejemplo anterior, encontramos que el predicado P ocurre en forma negada

¬P ( X )

en la primera cláusula, y en forma no negada

P ( una )

en la cláusula segunda. X es una variable independiente, mientras que a es un valor (término) vinculado. La unificación de los dos produce la sustitución.

Xun

Descartar los predicados unificados y aplicar esta sustitución a los predicados restantes (solo Q ( X ), en este caso), produce la conclusión:

Q ( a )

Para otro ejemplo, considere la forma silogística

Todos los cretenses son isleños.
Todos los isleños son unos mentirosos.
Luego todos los cretenses son mentirosos.

O más en general,

X P ( X ) → Q ( X )
X Q ( X ) → R ( X )
Por lo tanto, ∀ X P ( X ) → R ( X )

En CNF, los antecedentes pasan a ser:

¬ P ( X ) ∨ Q ( X )
¬ Q ( Y ) ∨ R ( Y )

(Tenga en cuenta que se cambió el nombre de la variable en la segunda cláusula para dejar claro que las variables en diferentes cláusulas son distintas).

Ahora, unificar Q ( X ) en la primera cláusula con ¬ Q ( Y ) en la segunda cláusula significa que X e Y se convierten en la misma variable de todos modos. Sustituyendo esto en las cláusulas restantes y combinándolas se obtiene la conclusión:

¬ P ( X ) ∨ R ( X )

Factorización

La regla de resolución, tal como la define Robinson, también incorporó el factoring, que unifica dos literales en una misma cláusula, antes o durante la aplicación de la resolución tal como se define anteriormente. La regla de inferencia resultante es de refutación completa, [6] en el sentido de que un conjunto de cláusulas es insatisfactorio si y sólo si existe una derivación de la cláusula vacía utilizando únicamente resolución, mejorada mediante factorización.

Un ejemplo de un conjunto de cláusulas insatisfactorias para el cual se necesita factorización para derivar la cláusula vacía es:

Dado que cada cláusula consta de dos literales, también lo hace cada posible resolutivo. Por lo tanto, por resolución sin factorización nunca se podrá obtener la cláusula vacía. Usando factorización, se puede obtener, por ejemplo, de la siguiente manera: [7]

Resolución no clausal

Se han ideado generalizaciones de la regla de resolución anterior que no requieren que las fórmulas originales estén en forma clausal normal . [8] [9] [10] [11] [12] [13]

Estas técnicas son útiles principalmente en la demostración interactiva de teoremas donde es importante preservar la legibilidad humana de las fórmulas de resultados intermedios. Además, evitan la explosión combinatoria durante la transformación a forma de cláusula, [10] : 98  y, a veces, ahorran pasos de resolución. [13] : 425 

Resolución no cláusulal en lógica proposicional

Para la lógica proposicional, Murray [9] : 18  y Manna y Waldinger [10] : 98  utilizan la regla

,

donde denota una fórmula arbitraria, denota una fórmula que contiene una subfórmula y se construye reemplazando en cada aparición de por ; de igual manera para . Se pretende simplificar el resolutivo utilizando reglas como , etc. Para evitar generar resolutivos triviales inútiles, la regla se aplicará sólo cuando tenga al menos una ocurrencia "negativa" y "positiva" [14] en y , respectivamente. Murray ha demostrado que esta regla es completa si se aumenta con reglas de transformación lógica apropiadas. [10] : 103 

Traugott usa la regla

,

donde los exponentes de indican la polaridad de sus ocurrencias. Si bien y se construyen como antes, la fórmula se obtiene reemplazando cada aparición positiva y negativa de in por y , respectivamente. De manera similar al enfoque de Murray, se deben aplicar transformaciones simplificadoras apropiadas al resolutivo. Traugott demostró que su regla es completa, siempre que sean los únicos conectivos utilizados en las fórmulas. [12] : 398–400 

La resolución de Traugott es más fuerte que la de Murray. [12] : 395  Además, no introduce nuevos junctores binarios, evitando así una tendencia hacia la forma clausal en resolución repetida. Sin embargo, las fórmulas pueden alargarse cuando un pequeño se reemplaza varias veces por uno más grande y/o . [12] : 398 

Ejemplo de resolución proposicional no cláusulal

Como ejemplo, partiendo de las suposiciones dadas por el usuario

la regla de Murray se puede utilizar de la siguiente manera para inferir una contradicción: [15]

Para el mismo propósito, la regla de Traugott se puede utilizar de la siguiente manera: [12] : 397 

De la comparación de ambas deducciones se desprenden las siguientes cuestiones:

Resolución no cláusulal en lógica de primer orden

Para la lógica de predicados de primer orden, la regla de Murray se generaliza para permitir subfórmulas distintas, pero unificables, y de y , respectivamente. Si es el unificador más general de y , entonces el resolutivo generalizado es . Si bien la regla sigue siendo válida si se utiliza una sustitución más especial, no es necesario aplicar dichas reglas para lograr su integridad. [ cita necesaria ]

La regla de Traugott se generaliza para permitir varias subfórmulas distintas por pares de y de , siempre que tengan un unificador común más general, digamos . El resolutivo generalizado se obtiene después de aplicar las fórmulas principales, haciendo aplicable así la versión proposicional. La prueba de integridad de Traugott se basa en el supuesto de que se utiliza esta regla totalmente general; [12] : 401  no está claro si su regla permanecería completa si se restringiera a y . [dieciséis]

Paramodulación

La paramodulación es una técnica relacionada para razonar sobre conjuntos de cláusulas donde el símbolo del predicado es la igualdad. Genera todas las versiones "iguales" de cláusulas, excepto las identidades reflexivas. La operación de paramodulación toma una cláusula from positiva , que debe contener un literal de igualdad. Luego busca una cláusula into con un subtérmino que se unifique con un lado de la igualdad. Luego, el subtérmino se reemplaza por el otro lado de la igualdad. El objetivo general de la paramodulación es reducir el sistema a átomos, reduciendo el tamaño de los términos al sustituir. [17]

Implementaciones

Ver también

Notas

  1. ^ Davis, Martín; Putnam, Hilary (1960). "Un procedimiento de cálculo para la teoría de la cuantificación". J. ACM . 7 (3): 201–215. doi : 10.1145/321033.321034 . S2CID  31888376.Aquí: pág. 210, "III. Regla para la eliminación de fórmulas atómicas".
  2. ^ Robinson 1965
  3. ^ DE Knuth, El arte de la programación informática 4A : algoritmos combinatorios , parte 1, p. 539
  4. ^ ab Leitsch 1997, pág. 11 "Antes de aplicar el método de inferencia en sí, transformamos las fórmulas a la forma normal conjuntiva sin cuantificadores".
  5. ^ Arís, Enrique P.; González, Juan L.; Rubio, Fernando M. (2005). Lógica Computacional. Ediciones Paraninfo, SA ISBN 9788497321822.
  6. ^ Russell, Stuart J.; Norvig, Peter (2009). Inteligencia artificial: un enfoque moderno (3ª ed.). Prentice Hall. pag. 350.ISBN 978-0-13-604259-4.
  7. ^ Duffy, David A. (1991). Principios de la demostración automatizada de teoremas . Wiley. ISBN 978-0-471-92784-6.Ver pág. 77. El ejemplo aquí se modifica ligeramente para demostrar una sustitución de factorización no trivial. Para mayor claridad, el paso de factorización (5) se muestra por separado. En el paso (6), se introdujo la nueva variable para permitir la unificabilidad de (5) y (6), necesaria para (7).
  8. ^ Wilkins, D. (1973). QUEST: Un sistema de demostración de teoremas no cláusulas (tesis de maestría). Universidad de Essex.
  9. ^ ab Murray, Neil V. (febrero de 1979). Un procedimiento de prueba para una lógica de primer orden no clausal sin cuantificadores (informe técnico). Ingeniería Eléctrica e Informática, Universidad de Syracuse. 39.(Citado de Manna, Waldinger, 1980 como: "Un procedimiento de prueba para la lógica de primer orden no cláusula", 1978)
  10. ^ abcd Maná, Zohar ; Waldinger, Richard (enero de 1980). "Un enfoque deductivo de la síntesis de programas". Transacciones ACM sobre lenguajes y sistemas de programación . 2 : 90–121. doi :10.1145/357084.357090. S2CID  14770735.
  11. ^ Murray, Nevada (1982). "Demostración de teoremas completamente no cláusulas". Inteligencia artificial . 18 : 67–85. doi :10.1016/0004-3702(82)90011-x.
  12. ^ abcdef Traugott, J. (1986). "Resolución anidada". VIII Congreso Internacional sobre Deducción Automatizada. CADE 1986 . LNCS . vol. 230. Saltador. págs. 394–403. doi :10.1007/3-540-16780-3_106. ISBN 978-3-540-39861-5.
  13. ^ ab Schmerl, UR (1988). "Resolución sobre árboles de fórmulas". Acta Informática . 25 (4): 425–438. doi :10.1007/bf02737109. S2CID  32702782.Resumen
  14. Estas nociones, llamadas "polaridades", se refieren al número de negaciones explícitas o implícitas encontradas anteriormente . Por ejemplo, ocurre positivo en y en , negativo en y en , y en ambas polaridades en .
  15. ^ " " se utiliza para indicar simplificación después de la resolución.
  16. ^ Aquí, " " denota el cambio de nombre del módulo de igualdad de términos sintácticos
  17. ^ Nieuwenhuis, Robert; Rubio, Alberto (2001). "7. Demostración de teoremas basada en paramodulación" (PDF) . En Robinson, Alan JA; Voronkov, Andrei (eds.). Manual de razonamiento automatizado. Elsevier. págs. 371–444. ISBN 978-0-08-053279-0.

Referencias

enlaces externos