paperbot · PL 论文追踪

全部论文 待读 收藏

P2 Multi-phase invariant synthesis

多阶段不变式合成
FSE Proceedings of the 30th ACM Joint European Software Engineering Conference and Symposium on the Foundations of Software Engineering2022匹配度 3/10 · 论文属于程序验证中的循环不变式合成,与静态分析/形式化验证背景相邻,但未涉及用户核心关注的 LLM/Agent 与静态分析交叉、浮点程序分析或贝叶斯程序分析。引用 13 inbox
Daniel Riley, Grigory Fedyukovich
crossref: 2026-09-12

AI 速览

一句话:提出基于SMT的多阶段循环蕴含不变式合成方法,可同时发现相互依赖的周期性阶段不变式。

多阶段循环因需要析取式不变式而难以验证;其中一类不变式可表示为阶段前置条件与阶段内有效引理之间的蕴含关系,但现有先进验证器对此类不变式结构支持不足。本文提出一种基于SMT的蕴含不变式合成方法:利用模型投影(Model Based Projections)发现程序阶段,并结合数据学习推断循环变量在任意位置的关联。该方法能够处理相互依赖的周期阶段,此类场景需要同时发现多个蕴含不变式。作者实现了该算法并与多个先进求解器进行对比,在具有复杂阶段结构的程序上展现出有前景的验证效果。

问题
多阶段循环的验证需要析取式或蕴含式不变式,而现有验证工具对蕴含不变式结构的支持不足。
方法
提出基于SMT的方法,通过模型投影发现程序阶段,并用数据学习获得循环变量之间的关系,从而合成蕴含不变式。
评估
实现算法并与多个先进求解器对比,在复杂多阶段循环及相互依赖周期阶段程序上验证效果有前景。
原文摘要(Abstract)

Loops with multiple phases are challenging to verify because they require disjunctive invariants. Invariants could also have the form of implication between a precondition for the phase and a lemma that is valid throughout the phase. Such invariant structure is however not widely supported in state-of-the-art verification. We present a novel SMT-based approach to synthesize implication invariants for multi-phase loops. Our technique computes Model Based Projections to discover the program's phases and leverages data learning to get relationships among loop variables at an arbitrary place in the loop. It is effective in the challenging cases of mutually-dependent periodic phases, where many implication invariants need to be discovered simultaneously. Our approach has shown promising results in its ability to verify programs with complex phase structures. We have implemented and evaluated our algorithm against several state-of-the-art solvers.

链接与引用

DOI 原文 ·

BibTeX
@inproceedings{paperbot7130,
  title = {Multi-phase invariant synthesis},
  author = {Daniel Riley and Grigory Fedyukovich},
  booktitle = {FSE},
  year = {2022},
  doi = {10.1145/3540250.3549166}
}