paperbot · PL 论文追踪

全部论文 待读 收藏

P2 Inter-procedural Two-Variable Herbrand Equalities

过程间双变量 Herbrand 等式
LMCS vol.Volume 13, Issue 22017匹配度 3/10 · 该论文属于程序分析与抽象解释的理论工作,与静态分析基础相关,但未涉及用户核心关注的 PL 与 AI/LLM/Agent 交叉、浮点程序分析或贝叶斯程序分析。引用 1 inbox
Stefan Schulze Frielinghaus, Michael Petter, Helmut Seidl
dblp: 2026-09-10crossref: 2026-09-10arxiv: 2026-09-10

AI 速览

一句话:提出过程间推断所有有效双变量 Herbrand 等式的分析方法,并给出多项式时间不变式验证。

论文研究过程间 Herbrand 等式推断,针对所有赋值右侧至多依赖一个变量的程序,证明其全部有效 Herbrand 等式均可被过程间推断。方法基于过程摘要表示有限多个带模板变量通用后置条件的最弱前置条件;为有效表示这些前置条件,作者证明几乎全部运行时可能计算的值都可唯一分解为树模式与 ground term,并引入可判定的近似 subsumption,以保证有限等式合取不会无限增长。基于这些结果,论文实现有效不动点迭代,推断所有过程间有效的 Herbrand 等式,并进一步证明变量数恒定的不变候选可在多项式时间内验证。

问题
如何为赋值右侧至多依赖一个变量的程序,过程间推断所有有效的 Herbrand 等式。
方法
使用过程摘要表示带模板变量通用后置条件的最弱前置条件,结合树模式与 ground term 的唯一分解以及可判定的近似 subsumption,构造有限表示并做不动点迭代。
评估
以理论结果为主:证明可有效推断所有过程间有效 Herbrand 等式,并证明变量数恒定的不变候选可在多项式时间内验证。
原文摘要(Abstract)

We prove that all valid Herbrand equalities can be inter-procedurally inferred for programs where all assignments whose right-hand sides depend on at most one variable are taken into account. The analysis is based on procedure summaries representing the weakest pre-conditions for finitely many generic post-conditions with template variables. In order to arrive at effective representations for all occurring weakest pre-conditions, we show for almost all values possibly computed at run-time, that they can be uniquely factorized into tree patterns and a ground term. Moreover, we introduce an approximate notion of subsumption which is effectively decidable and ensures that finite conjunctions of equalities may not grow infinitely. Based on these technical results, we realize an effective fixpoint iteration to infer all inter-procedurally valid Herbrand equalities for these programs. Finally we show that an invariant candidate with a constant number of variables, can be verified in polynomial time.

链接与引用

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

BibTeX
@article{FrielinghausPS15,
  title = {Inter-procedural Two-Variable Herbrand Equalities},
  author = {Stefan Schulze Frielinghaus and Michael Petter and Helmut Seidl},
  journal = {Logical Methods in Computer Science},
  volume = {Volume 13, Issue 2},
  year = {2017},
  doi = {10.23638/lmcs-13(2:5)2017}
}