paperbot · PL 论文追踪

全部论文 待读 收藏

P2 ARDiff: scaling program equivalence checking via iterative abstraction and refinement of common code

ARDiff:通过公共代码的迭代抽象与精化扩展程序等价性检查
FSE Proceedings of the 28th ACM Joint Meeting on European Software Engineering Conference and Symposium on the Foundations of Software Engineering2020匹配度 3/10 · 论文属于传统程序等价性检查与抽象精化,虽涉及静态分析和形式化验证,但未结合 LLM/Agent,也未涉及浮点程序分析或贝叶斯程序分析,与用户当前主攻的 PL 与 AI 交叉方向无直接关联。引用 43 inbox
Sahar Badihi, Faridah Akinotcho, Yi Li, Julia Rubin
crossref: 2026-09-12

AI 速览

一句话:提出 ARDiff,通过迭代抽象与精化程序版本间的公共代码,提升程序等价性检查的可扩展性。

程序等价性检查用于判定两个程序版本是否具有相同行为,但主流形式化方法多依赖符号执行,而符号执行在面对循环和非线性算术等复杂语言构造时难以扩展到实际程序。为此,本文提出 ARDiff,其核心思想是识别两个版本中的公共代码,并对这些公共代码进行迭代抽象与精化,从而缩减等价性检查中需要精确推理的代码范围,降低符号执行负担。摘要主要描述了问题与方法,未给出具体实验评估或结果。

问题
如何形式化证明或反驳两个程序版本的等价性,同时克服符号执行在循环和非线性算术等复杂构造上的可扩展性瓶颈。
方法
ARDiff 通过对版本间公共代码进行迭代抽象与精化,减少等价性检查中需要符号执行精确处理的代码范围,从而提升可扩展性。
评估
摘要未说明评估方式、数据集、基线或实验结果。
原文摘要(Abstract)

Equivalence checking techniques help establish whether two versions of a program exhibit the same behavior. The majority of popular techniques for formally proving/refuting equivalence relies on symbolic execution – a static analysis approach that reasons about program behaviors in terms of symbolic input variables. Yet, symbolic execution is difficult to scale in practice due to complex programming constructs, such as loops and non-linear arithmetic.

链接与引用

DOI 原文 ·

BibTeX
@inproceedings{paperbot5764,
  title = {ARDiff: scaling program equivalence checking via iterative abstraction and refinement of common code},
  author = {Sahar Badihi and Faridah Akinotcho and Yi Li and Julia Rubin},
  booktitle = {FSE},
  year = {2020},
  doi = {10.1145/3368089.3409757}
}