Skip to main content
QUICK REVIEW

[论文解读] Stable models and an alternative logic programming paradigm

Victor W. Marek, Mirosław Truszczyński|ArXiv.org|Sep 18, 1998
Logic, Reasoning, and Knowledge参考文献 25被引用 19
一句话总结

本文提出了稳定逻辑编程(SLP),一种将程序解释为约束集合而非递归定义的逻辑编程范式,利用稳定模型语义将解表示为稳定模型。通过限制语法以排除函数符号,并将子句重新解释为约束,SLP 提供了一种声明式、控制分离的框架,特别适用于 NP 完全问题和约束满足问题,其高效计算得益于现代稳定模型求解器的支持。

ABSTRACT

In this paper we reexamine the place and role of stable model semantics in logic programming and contrast it with a least Herbrand model approach to Horn programs. We demonstrate that inherent features of stable model semantics naturally lead to a logic programming system that offers an interesting alternative to more traditional logic programming styles of Horn logic programming, stratified logic programming and logic programming with well-founded semantics. The proposed approach is based on the interpretation of program clauses as constraints. In this setting programs do not describe a single intended model, but a family of stable models. These stable models encode solutions to the constraint satisfaction problem described by the program. Our approach imposes restrictions on the syntax of logic programs. In particular, function symbols are eliminated from the language. We argue that the resulting logic programming system is well-attuned to problems in the class NP, has a well-defined domain of applications, and an emerging methodology of programming. We point out that what makes the whole approach viable is recent progress in implementations of algorithms to compute stable models of propositional logic programs.

研究动机与目标

  • 将稳定模型语义重新构想为逻辑编程的基础范式,超越传统的霍恩逻辑和 SLG 分解。
  • 通过提出一种新计算模型,弥合稳定模型语义与标准逻辑编程之间的不匹配,充分接纳其固有特性。
  • 证明 SLP 在受限语法和基于约束的解释下,特别适用于 NP 问题和约束满足任务。
  • 建立 SLP 编程的方法论,并探讨其相较于命题逻辑编码在简洁性和最小性方面的优势。
  • 推动对 SLP 理论基础、性能表现及其与约束求解系统集成的进一步研究。

提出的方法

  • 将逻辑程序语法限制为排除函数符号,与带否定的 DATALOG 保持一致,并限制递归。
  • 将每个子句解释为对潜在解的约束,而非递归定义,实现从逻辑推理到模型生成的转变。
  • 使用稳定模型语义将程序的含义定义为一组稳定模型,每个模型代表一个约束满足问题的有效解。
  • 采用回溯搜索算法(如 smodels)计算稳定模型,取代 SLD 分解作为控制机制。
  • 利用稳定模型计算的最新进展,实现 SLP 程序的实际实现与性能评估。
  • 将 SLP 编码与命题 CNF 编码进行比较,强调稳定模型的基底性和最小性在简洁性和正确性方面的优势。

实验结果

研究问题

  • RQ1能否将稳定模型语义重新解释为一种可行的、独立的逻辑编程范式,而非仅作为否定的语义?
  • RQ2基于稳定模型和约束解释的逻辑编程系统,其计算与表达特性如何?
  • RQ3在 NP 问题的编码效率和解结构方面,SLP 与命题逻辑相比有何差异?
  • RQ4当程序被视为约束集合而非递归定义时,会涌现出怎样的编程方法论?
  • RQ5SLP 能否在人工智能和运筹学中的约束求解与规划系统中实现有效集成?

主要发现

  • SLP 为应用提供了一个明确定义的领域,主要针对 NP 中的问题,包括组合优化和约束满足。
  • 稳定模型语义自然产生最小模型,这对要求最小性的优化问题具有优势。
  • SLP 程序是基底的——仅当被证明时才包含事实,这提升了语义清晰度并减少了非预期模型。
  • 在 SLP 中编码哈密顿回路等问题的表达式,其渐近简洁性优于等价的命题逻辑 CNF 编码。
  • 利用 smodels 等系统支持的回溯搜索算法进行稳定模型计算,使 SLP 尽管非霍恩形式,仍具备实际可行性。
  • 稳定模型计算算法的近期实现,已支持实用 SLP 系统的开发,为后续研究和基准测试提供了可能。

更好的研究,从现在开始

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

无需绑定信用卡

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