stringtranslate.com

La negación como fracaso

La negación como fallo ( NAF , por sus siglas en inglés) es una regla de inferencia no monótona en programación lógica , que se utiliza para derivar (es decir, que se supone que no se cumple) del fallo para derivar . Nótese que puede ser diferente del enunciado de la negación lógica de , dependiendo de la completitud del algoritmo de inferencia y, por lo tanto, también del sistema lógico formal.

La negación como falla ha sido una característica importante de la programación lógica desde los primeros días de Planner y Prolog . En Prolog, se suele implementar mediante construcciones extralógicas de Prolog.

De manera más general, este tipo de negación se conoce como negación débil , [1] [2] en contraste con la negación fuerte (es decir, explícita, demostrable).

Semántica del planificador

En Planner, la negación como fracaso podría implementarse de la siguiente manera:

if (not (goal p)), then (assert ¬p)

que dice que si una búsqueda exhaustiva para probar pfalla, entonces asevere ¬p. [3] Esto establece que la proposición pse asumirá como "no verdadera" en cualquier procesamiento posterior. Sin embargo, como Planner no se basa en un modelo lógico, una interpretación lógica de lo precedente sigue siendo oscura.

Semántica de Prolog

En Prolog puro, los literales NAF de la forma pueden aparecer en el cuerpo de las cláusulas y pueden usarse para derivar otros literales NAF. Por ejemplo, dadas solo las cuatro cláusulas

NAF deriva , y así como y .

Semántica de finalización

La semántica de NAF siguió siendo un tema abierto hasta 1978, cuando Keith Clark demostró que es correcta con respecto a la finalización del programa lógico, donde, en términos generales, "sólo" y " se interpretan como "si y sólo si", escrito como "si y solo si" o " ".

Por ejemplo, la finalización de las cuatro cláusulas anteriores es

La regla de inferencia NAF simula el razonamiento explícitamente con la completitud, donde ambos lados de la equivalencia se niegan y la negación en el lado derecho se distribuye hasta las fórmulas atómicas . Por ejemplo, para mostrar , NAF simula el razonamiento con las equivalencias

En el caso no proposicional, la compleción debe ser aumentada con axiomas de igualdad, para formalizar el supuesto de que los individuos con nombres distintos son distintos. NAF simula esto mediante el fracaso de la unificación. Por ejemplo, dadas solo las dos cláusulas

NAF deriva .

La finalización del programa es

Ampliado con axiomas de nombres únicos y axiomas de cierre de dominio.

La semántica de completitud está estrechamente relacionada tanto con la circunscripción como con el supuesto de mundo cerrado .

Semántica autoepistémica

La semántica de completitud justifica la interpretación del resultado de una inferencia NAF como la negación clásica de . Sin embargo, en 1987, Michael Gelfond demostró que también es posible interpretar literalmente como " no se puede demostrar", " no se sabe" o " no se cree", como en la lógica autoepistémica . La interpretación autoepistémica fue desarrollada por Gelfond y Lifschitz en 1988, y es la base de la programación de conjuntos de respuestas .

La semántica autoepistémica de un programa Prolog puro P con literales NAF se obtiene "expandiendo" P con un conjunto de literales NAF básicos (libres de variables) Δ que es estable en el sentido de que

Δ = {no p | p no está implícito en P ∪ Δ}

En otras palabras, un conjunto de suposiciones Δ acerca de lo que no se puede demostrar es estable si y solo si Δ es el conjunto de todas las oraciones que verdaderamente no se pueden demostrar a partir del programa P desarrollado por Δ. Aquí, debido a la sintaxis simple de los programas Prolog puros, "implícito por" se puede entender muy simplemente como derivabilidad utilizando solo modus ponens e instanciación universal.

Un programa puede tener cero, una o más expansiones estables. Por ejemplo,

No tiene expansiones estables.

tiene exactamente una expansión estable Δ = {no q }

tiene exactamente dos expansiones estables Δ 1 = {no p } y Δ 2 = {no q }.

La interpretación autoepistémica de NAF se puede combinar con la negación clásica, como en la programación lógica extendida y la programación de conjuntos de respuestas . Combinando las dos negaciones, es posible expresar, por ejemplo

(el supuesto del mundo cerrado) y
( se mantiene por defecto).

Notas al pie

  1. ^ Bílková, M.; Colacito, A. (2020). "Teoría de la prueba para lógica positiva con negación débil". Studia Logica . 108 (4): 649–686. arXiv : 1907.05411 . doi :10.1007/s11225-019-09869-y. S2CID  195886568.
  2. ^ Wagner, G. (2003). "Las reglas web necesitan dos tipos de negación" (PDF) . En Bry, F.; Henze, N.; Maluszynski, J. (eds.). Principios y práctica del razonamiento de la web semántica. PPSW3 2003. Apuntes de clase en informática. Vol. 2901. Apuntes de clase en informática: Springer. págs. 33–50. doi :10.1007/978-3-540-24572-8_3. ISBN . 978-3-540-24572-8.
  3. ^ Clark, Keith (1978). "La negación como un fracaso" (PDF) . Lógica y bases de datos . Springer-Verlag . pp. 293–322. doi :10.1007/978-1-4684-3384-5_11. ISBN . 978-1-4684-3384-5.

Referencias

Enlaces externos