paperbot · PL 论文追踪

全部论文 待读 收藏

P2 Finite-Choice Logic Programming

有限选择逻辑编程
POPL 9(POPL)2025匹配度 2/10 · 该论文研究逻辑编程的形式语义与求解器实现,属于PL理论方向,但不涉及静态分析、ML/Agentic程序、LLM与静态分析/形式化验证的结合,也不涉及浮点或贝叶斯程序分析,与用户研究画像的核心问题无直接交集。引用 2 inbox
Chris Martens, Robert J. Simmons, Michael Arntzenius
crossref: 2026-09-10

AI 速览

一句话:提出有限选择逻辑编程,用选择代替否定表达多解,并实现 Dusa 求解器。

逻辑编程(如 Datalog)通常以唯一最小模型定义程序含义,但许多问题需要在满足结构与逻辑约束下枚举多个模型,不存在单一规范模型。带否定的逻辑程序通过稳定模型语义刻画这类解集,形成答案集编程,但稳定模型的定义较为间接,尤其含自由变量时。本文提出有限选择逻辑编程(finite-choice logic programming),以选择而非否定允许多个解,覆盖稳定模型语义的表达力,并为新一类程序赋予意义;它在一种新域上具有最小不动点解释。作者给出解空间探索算法并证明其相对于该语义的正确性,还实现 Dusa 语言,性能与先进答案集求解器相当,且随问题规模扩展更可预测。

问题
逻辑编程通常只有唯一最小模型,而答案集编程依赖稳定模型语义来枚举多解,但稳定模型定义间接,尤其在有自由变量时不易理解。
方法
提出有限选择逻辑编程,用选择而非否定允许多个解,并在新域上给出最小不动点语义;同时设计解空间探索算法并证明正确性。
评估
实现 Dusa 逻辑编程语言,与先进答案集求解器进行性能比较,显示相当性能且随问题规模扩展更可预测。
原文摘要(Abstract)

Logic programming, as exemplified by datalog, defines the meaning of a program as its unique smallest model: the deductive closure of its inference rules. However, many problems call for an enumeration of models that vary along some set of choices while maintaining structural and logical constraints—there is no single canonical model. The notion of stable models for logic programs with negation has successfully captured programmer intuition about the set of valid solutions for such problems, giving rise to a family of programming languages and associated solvers known as answer set programming. Unfortunately, the definition of a stable model is frustratingly indirect, especially in the presence of rules containing free variables. We propose a new formalism, finite-choice logic programming, that uses choice, not negation, to admit multiple solutions. Finite-choice logic programming contains all the expressive power of the stable model semantics, gives meaning to a new and useful class of programs, and enjoys a least-fixed-point interpretation over a novel domain. We present an algorithm for exploring the solution space and prove it correct with respect to our semantics. Our implementation, the Dusa logic programming language, has performance that compares favorably with state-of-the-art answer set solvers and exhibits more predictable scaling with problem size.

链接与引用

DOI 原文 · PDF(开放获取) ·

BibTeX
@article{paperbot3245,
  title = {Finite-Choice Logic Programming},
  author = {Chris Martens and Robert J. Simmons and Michael Arntzenius},
  journal = {Proceedings of the ACM on Programming Languages},
  volume = {9},
  number = {POPL},
  year = {2025},
  doi = {10.1145/3704849}
}