简介
编辑否定即失败(简称NAF)是逻辑编程中的一个非单调推理规则,用于推导出{displaystyle~p},取决于推理算法的完整性,从而也取决于形式逻辑系统。取决于推理算法的完整性,因此也取决于形式逻辑系统。
从最早的记事簿 (Planner)和逻辑语言 (Prolog)开始,作为失败的否定就一直是逻辑编程的一个重要特征。在逻辑语言 (Prolog)中,它通常使用逻辑语言 (Prolog)的族外结构来实现。更广泛地说,这种否定被称为弱否定,与强否定(即明确的、可证明的)相反。
记事簿 (Planner)语义
编辑在记事簿 (Planner)中,作为失败的否定可以按如下方式实现。如果(不是(目标p)),那么(断言¬p)。这就是说,如果证明p的穷举搜索失败,那么就断言¬p。这说明命题p在任何后续处理中都应被假定为不真实。然而,记事簿 (Planner)不是基于一个逻辑模型,对前面的逻辑解释仍然是模糊的。
逻辑语言 (Prolog)语义
编辑在纯逻辑语言 (Prolog)中,NAF字元的形式为可以出现在子句的主体中,并且可以用来推导出其他NAF字词。例如,只给定四个子句
完成语义
编辑NAF的语义仍然是一个开放的问题,直到1978年,克拉克.凯斯 (Keith Clark) 表明它在逻辑程序的完成方面是正确的,其中,宽泛地讲,只有和NAF推理规则模拟了用完成度进行明确的推理,等价关系的两边都被否定了,右边的否定被分布到原子式上。
例如,为了表明在非命题情况下,完成度需要用平等公理来增强,以正式确定具有不同名字的个体是不同的假设。NAF通过统一的失败来模拟这一点。例如,只给定两个子句用唯 一的名字公理和域封闭公理来增强。完成语义与包围法和封闭世界假设都密切相关。
自动表征语义
编辑完成语义证明了对结果的解释不被相信,就像在自体地方逻辑中一样。盖尔封特 (Gelfond) 和列夫席兹(Lifschitz)在1988年进一步发展了自体现象解释,它是答案集编程的基础。
带有NAF字元的纯Prolog程序P的自体语义是通过用一组地面(无变量)NAF字元Δ扩展P而得到的,在这个意义上是稳定的,即{displaystylep}的暗示。不是由P∪Δ所隐含的}。
内容由匿名用户提供,本内容不代表vibaike.com立场,内容投诉举报请联系vibaike.com客服。如若转载,请注明出处:https://vibaike.com/170985/