stringtranslate.com

La negación como fracaso

La negación como fracaso ( NAF , para abreviar) 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) a partir de una falla en la derivación . Tenga en cuenta que puede ser diferente del enunciado de la negación lógica de , dependiendo de la integridad del algoritmo de inferencia y, por tanto, también del sistema lógico formal.

La negación como fracaso ha sido una característica importante de la programación lógica desde los primeros días de Planner y Prolog . En Prolog, generalmente se implementa utilizando 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 falla 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 afirmar ¬p. [3] Esto establece que la proposición pse asumirá como "falsa" en cualquier procesamiento posterior. Sin embargo, dado que Planner no se basa en un modelo lógico, una interpretación lógica de lo anterior sigue siendo oscura.

Semántica del prólogo

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 sólo las cuatro cláusulas

NAF deriva , y además de 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 por " ".

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

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

En el caso no proposicional, es necesario aumentar la compleción con axiomas de igualdad, para formalizar la suposición de que los individuos con nombres distintos son distintos. La NAF simula esto por el fracaso de la unificación. Por ejemplo, dadas sólo las dos cláusulas

NAF deriva .

La finalización del programa es

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

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

Semántica autoepistémica

La semántica de compleción justifica interpretar el resultado de una inferencia NAF como la negación clásica de . Sin embargo, en 1987, Michael Gelfond demostró que también es posible interpretarlo 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 aún más 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 (sin variables) Δ que es estable en el sentido de que

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

En otras palabras, un conjunto de supuestos Δ sobre lo que no se puede mostrar es estable si y sólo si Δ es el conjunto de todas las oraciones que realmente no se pueden mostrar a partir del programa P expandido por Δ. Aquí, debido a la sintaxis simple de los programas Prolog puros, "implícito por" puede entenderse de manera muy simple como derivabilidad usando modus ponens y instanciación universal únicamente.

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 de forma predeterminada).

Notas a pie de página

  1. ^ Bílková, M.; Colacito, A. (2020). "Teoría de la prueba de la lógica positiva con negación débil". Estudios Lógica . 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 conferencias sobre informática. vol. 2901. Apuntes de conferencias sobre 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 fracaso» (PDF) . Lógica y Bases de Datos . Springer-Verlag . págs. 293–322. doi :10.1007/978-1-4684-3384-5_11. ISBN 978-1-4684-3384-5.

Referencias

enlaces externos