Skip to main content
QUICK REVIEW

[论文解读] Computing Stable Models of Normal Logic Programs Without Grounding

Kyle Marple, Elmer Salazar|arXiv (Cornell University)|Sep 1, 2017
Logic, Reasoning, and Knowledge参考文献 32被引用 20
一句话总结

本文提出了一种新颖的、目标导向的方法,用于在不进行基底化(grounding)的情况下,计算具有任意项和否定的正常逻辑程序的稳定模型,采用非赫尔勃兰(non-Herbrand)论域、共归纳法以及通过对偶规则实现的构造性否定。该方法为一大类谓词逻辑程序(包括具有无限域和复杂数据结构的程序)提供了可靠且部分的模型计算。

ABSTRACT

We present a method for computing stable models of normal logic programs, i.e., logic programs extended with negation, in the presence of predicates with arbitrary terms. Such programs need not have a finite grounding, so traditional methods do not apply. Our method relies on the use of a non-Herbrand universe, as well as coinduction, constructive negation and a number of other novel techniques. Using our method, a normal logic program with predicates can be executed directly under the stable model semantics without requiring it to be grounded either before or during execution and without requiring that its variables range over a finite domain. As a result, our method is quite general and supports the use of terms as arguments, including lists and complex data structures. A prototype implementation and non-trivial applications have been developed to demonstrate the feasibility of our method.

研究动机与目标

  • 解决基于基底化的稳定模型计算方法的根本局限性,这些方法在处理具有无限域或任意项的程序时会失效。
  • 实现对具有否定和复杂数据结构的正常逻辑程序的自顶向下、查询驱动执行,避免完全基底化。
  • 支持涉及无限或大规模数据域的实际应用,例如对列表和递归数据结构的符号推理。
  • 为在稳定模型语义下具有谓词的正常逻辑程序提供一种可靠且可操作的语义,而无需限制程序语法或要求有限域。
  • 克服现有系统存在的局限性,这些系统要么过早地进行基底化,要么通过限制程序接受范围来确保一致性。

提出的方法

  • 该方法采用非赫尔勃兰论域——即赫尔勃兰论域的无限超集——以在保持逻辑性质所需一致性的同时,支持对无限项的计算。
  • 使用共归纳逻辑编程来处理相互递归和共归纳依赖关系,确保在存在循环或无限推导时的一致性。
  • 引入对偶规则以管理构造性否定,允许在不依赖经典否定或基于失败的推理的情况下推导出否定文字。
  • 使用负约束变量来跟踪否定存在时的合一约束,从而在查询求解过程中实现约束的可靠传播。
  • 系统执行目标导向计算,仅探索响应查询时相关的模型部分,避免完全基底化和SAT求解。
  • 一个原型实现 s(ASP) 将程序编译为抽象机器,并通过类似WAM的模拟器执行,从而实现类似于Prolog的高效执行。

实验结果

研究问题

  • RQ1能否在不进行基底化的情况下,有效将稳定模型语义应用于具有任意项和否定的正常逻辑程序?
  • RQ2是否可以设计一种可靠且目标导向的执行机制,用于稳定模型,以支持列表和递归项等复杂数据结构?
  • RQ3如何结合共归纳法与构造性否定,以确保在存在递归和相互依赖子句时的一致性和完备性?
  • RQ4能否使用非赫尔勃兰论域在保持一致性的同时,仍允许对无限或大规模域进行有用的部分模型计算?
  • RQ5为确保在查询驱动的稳定模型计算系统中的一致性和实际效率,所需的最小语法限制是什么?

主要发现

  • 该方法成功计算了具有任意项(包括具有无限赫尔勃兰论域的程序)的正常逻辑程序的部分稳定模型,且无需基底化。
  • 使用非赫尔勃兰论域使得该方法在包括递归和共归纳结构在内的广泛程序类别中保持了可靠性和正确性。
  • 共归纳逻辑编程与对偶规则使得能够实现构造性否定,并在查询求解过程中一致地处理否定文字。
  • 原型系统 s(ASP) 已实现并用于开发非平凡的应用,包括一个生物学教材推理系统和一个生日礼物推荐系统。
  • 该方法支持具有无界整数和复杂数据结构的程序,而无需像某些系统那样要求有限域边界或对数值大小设限。
  • 该方法通过仅在响应查询时计算模型的相关部分,避免了基于自底向上的基底化方法所存在的完备性和一致性问题。

更好的研究,从现在开始

从阅读论文到最终审阅,大幅缩短您的研究时间。

无需绑定信用卡

本解读由 AI 生成,并经人工编辑审核。