paperbot · PL 论文追踪

全部论文 待读 收藏

P2 Big-Stop Semantics: Small-Step Semantics in a Big-Step Judgment

Big-Stop 语义:在大步判断中实现小步语义
POPL 10(POPL)2026匹配度 2/10 · 该论文属于纯编程语言形式语义与定理证明,讨论 big-step/small-step 语义等价性,与用户核心关注的静态分析、LLM/Agent 交叉、浮点或贝叶斯程序分析均无直接关系。仅在形式化验证/证明工程上有非常边缘的关联。引用 0 inbox
David M. Kahn, Jan Hoffmann, Runming Li
crossref: 2026-09-10

AI 速览

一句话:提出 big-stop 语义,用归纳定义的大步求值判断等价刻画小步闭包,可表达发散且无需错误状态。

论文针对大步语义通常无法描述发散等行为的问题,提出一种鲜为人知的扩展——big-stop 语义。它在标准大步推理规则上仅增加少量归纳规则,就定义出与小步转移自反传递闭包等价的求值判断,可在不引入错误状态的情况下捕捉发散计算。作者以带类型、无类型和带效应变体的 PCF 为例展示该语义,避免其他方案为保留人因工程而引入大量规则、全局状态或余归纳等难理解原理。并用 Agda 给出关键结果和编译定理的简洁机器化证明,说明该定义便于推理与验证。

问题
大步操作语义虽然简洁易用,但标准形式难以描述发散等小步语义可以表达的程序行为。
方法
通过归纳定义在标准大步推理规则上增加少量规则,构造 big-stop 语义,使求值判断等价于小步转移的自反传递闭包,并以 typed、untyped 与 effectful PCF 为例说明。
评估
在 Agda 中机器化验证若干关键结果与编译定理,并与其他需要大量额外规则、全局状态或余归纳的解决方案进行对比,展示其人因工程优势。
原文摘要(Abstract)

As is evident in the programming language literature, many practitioners favor specifying dynamic program behavior using big-step over small-step semantics. Unlike small-step semantics, which must dwell on every intermediate program state, big-step semantics conveniently jumps directly to the ever-important result of the computation. Big-step semantics also typically involves fewer inference rules than their small-step counterparts. However, in exchange for ergonomics, big-step semantics gives up power: Small-step semantics describes program behaviors that are outside the grasp of big-step semantics, notably divergence. This work presents a little-known extension of big-step semantics with inductive definitions that captures diverging computations without introducing error states. This big-stop semantics is illustrated for typed, untyped, and effectful variants of PCF. Big-stop semantics extends the standard big-step inference rules with a few additional rules to define an evaluation judgment that is equivalent to the reflexive-transitive closure of small-step transitions. This simple extension contrasts with other solutions in the literature that sacrifice ergonomics by introducing many additional inference rules, global state, and/or less-commonly-understood reasoning principles like coinduction. The ergonomics of big-stop semantics is exemplified via concise Agda proofs for some key results and compilation theorems.

链接与引用

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

BibTeX
@article{KahnHL26,
  title = {Big-Stop Semantics: Small-Step Semantics in a Big-Step Judgment},
  author = {David M. Kahn and Jan Hoffmann and Runming Li},
  journal = {Proceedings of the ACM on Programming Languages},
  volume = {10},
  number = {POPL},
  year = {2026},
  doi = {10.1145/3776718}
}