paperbot · PL 论文追踪

全部论文 待读 收藏

P2 Solvable Polynomial Ideals: The Ideal Reflection for Program Analysis

可解多项式理想:程序分析中的理想反射
POPL 8(POPL)2024匹配度 4/10 · 论文属于程序分析与形式化验证,和用户对静态分析/形式化验证的兴趣有领域重叠,且兼具理论与实现。但它不涉及 LLM/Agent、ML 系统、浮点程序分析或贝叶斯程序分析,未命中用户当前核心交叉方向。引用 11 inbox
John Cyphert, Zachary Kincaid
crossref: 2026-09-10

AI 速览

一句话:将任意循环抽象为可解多项式映射模型,从而把循环多项式不变式生成技术推广到一般程序。

已有基于可解多项式映射的循环摘要技术只能为一类受限程序生成全部多项式不变式,无法处理嵌套循环、条件分支、非结构化控制流等一般程序。本文不限制可处理的程序种类,而是通过「理想反射」把每个循环抽象成可用既有技术求解的模型,从而将可解多项式映射的工作推广到一般程序。由于任何方法都无法为任意程序生成全部多项式不变式,作者提出单调性结果来刻画该方法的合理性。作者实现了相应技术,并在文献中的基准程序集上进行了测试,实验表明该方法在需要非线性推理的困难验证任务上具有潜力。

问题
如何把仅适用于受限循环的可解多项式映射技术推广到含嵌套循环、条件分支与非结构化控制流的一般程序,以生成多项式形式的程序摘要。
方法
通过「理想反射」,将每个循环抽象为可用已有可解多项式映射技术求解的模型,并给出单调性结果来论证方法的合理性。
评估
实现原型工具,在文献中的基准程序集上测试,考察其在需要非线性推理的验证任务上的表现。
原文摘要(Abstract)

This paper presents a program analysis method that generates program summaries involving polynomial arithmetic. Our approach builds on prior techniques that use solvable polynomial maps for summarizing loops. These techniques are able to generate all polynomial invariants for a restricted class of programs, but cannot be applied to programs outside of this class—for instance, programs with nested loops, conditional branching, unstructured control flow, etc. There currently lacks approaches to apply these prior methods to the case of general programs. This paper bridges that gap. Instead of restricting the kinds of programs we can handle, our method abstracts every loop into a model that can be solved with prior techniques, bringing to bear prior work on solvable polynomial maps to general programs. While no method can generate all polynomial invariants for arbitrary programs, our method establishes its merit through a monotonicty result. We have implemented our techniques, and tested them on a suite of benchmarks from the literature. Our experiments indicate our techniques show promise on challenging verification tasks requiring non-linear reasoning.

链接与引用

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

BibTeX
@article{paperbot2618,
  title = {Solvable Polynomial Ideals: The Ideal Reflection for Program Analysis},
  author = {John Cyphert and Zachary Kincaid},
  journal = {Proceedings of the ACM on Programming Languages},
  volume = {8},
  number = {POPL},
  year = {2024},
  doi = {10.1145/3632867}
}