paperbot · PL 论文追踪

全部论文 待读 收藏

P2 Proving termination by <i>k</i> -induction

用 k-归纳证明终止性
ASE Proceedings of the 35th IEEE/ACM International Conference on Automated Software Engineering2020匹配度 3/10 · 论文属于程序验证中的终止性证明与不变式合成,与用户关注的静态分析/形式化验证有间接关联;但未涉及 LLM/Agent、浮点程序分析或贝叶斯程序分析,与核心研究方向匹配度较低。引用 2 inbox
Jianhui Chen, Fei He
crossref: 2026-09-12

AI 速览

一句话:将命令式程序的终止性证明归约为 k-归纳不变式合成,从而更高效地合成终止性论证。

论文提出一种用 k-归纳(k-induction)证明命令式程序终止性的新方法。其核心思想是把终止性证明问题形式化为一个 k-归纳不变式合成任务。与标准的归纳方法相比,k-归纳所需的不变式更弱,因而更容易被发现;同时 k-归纳的 base case 会对程序进行展开,从而为不变式合成提供更强的前置条件。这两点结合使得终止性论证的自动合成比标准方法更高效。作者实现了该 k-归纳方法的原型工具,实验结果表明该方法在有效性与效率上都有显著提升。

问题
如何自动证明命令式程序的终止性,特别是如何自动合成支撑终止性论证的不变式。
方法
将终止性证明形式化为 k-归纳不变式合成任务,利用 k-归纳所需不变式更弱、且其 base case 展开程序带来更强前置条件的优势来合成终止性论证。
评估
实现原型工具,并通过实验验证方法的有效性与效率,结果显示相较标准归纳方法有显著提升。
原文摘要(Abstract)

We propose a novel approach to proving the termination of imperative programs by k-induction. By our approach, the termination proving problem can be formalized as a k-inductive invariant synthesis task. On the one hand, k-induction uses weaker invariants than that required by the standard inductive approach. On the other hand, the base case of k-induction, which unrolls the program, can provide stronger pre-condition for invariant synthesis. As a result, the termination arguments of our approach can be synthesized more efficiently than the standard method. We implement a prototype of our k-inductive approach. The experimental results show the significant effectiveness and efficiency of our approach.

链接与引用

DOI 原文 ·

BibTeX
@inproceedings{paperbot6018,
  title = {Proving termination by
            <i>k</i>
            -induction},
  author = {Jianhui Chen and Fei He},
  booktitle = {ASE},
  year = {2020},
  doi = {10.1145/3324884.3418929}
}