paperbot · PL 论文追踪

全部论文 待读 收藏

P2 Monotonicity and the Precision of Program Analysis

单调性与程序分析的精度
POPL 8(POPL)2024匹配度 4/10 · 论文属于抽象解释与程序分析理论,讨论单调性与分析精度,与静态分析基础相关;但未涉及用户核心关注的 LLM/Agent、浮点程序分析或贝叶斯程序分析,因此与当前研究方向核心匹配度有限。引用 1 inbox
Marco Campion, Mila Dalla Preda, Roberto Giacobazzi, Caterina Urban
crossref: 2026-09-10

AI 速览

一句话:刻画程序单调性与抽象解释完备性之间的关系,给出可被精确分析的单调程序片段。

程序分析器的精度通常与程序的内涵性质(如写法)密切相关,但程序的外延输入输出关系是否影响分析精度尚不明确。本文探索这一联系,旨在找出可被抽象解释完备分析的程序片段。作者首先形式化了程序相对于给定输入和一组数值变量的单调性,并提出了一个可靠的证明系统,其判断可指定程序相对于变量集和输入集是否单调。核心理论结果是:单调程序族在一类非平凡数值抽象和输入上存在完备的抽象解释。该类包括所有精化区间分析的非关系抽象域,并满足拓扑凸性假设。

问题
研究程序的外延输入输出关系与其抽象解释分析精度之间的联系,并寻找存在完备抽象解释的可精确分析程序片段。
方法
形式化程序相对于给定输入和数值变量集合的单调性,提出一个可靠的证明系统来判定程序在指定变量和输入下的单调性,并证明单调程序在特定数值抽象上具有完备性。
评估
通过理论证明建立主要结果:单调程序族在一类数值抽象上存在完备抽象解释,该类包含所有精化区间分析且满足拓扑凸性假设的非关系抽象域。
原文摘要(Abstract)

It is widely known that the precision of a program analyzer is closely related to intensional program properties, namely, properties concerning how the program is written. This explains, for instance, the interest in code obfuscation techniques, namely, tools explicitly designed to degrade the results of program analysis by operating syntactic program transformations. Less is known about a possible relation between what the program extensionally computes, namely, its input-output relation, and the precision of a program analyzer. In this paper we explore this potential connection in an effort to isolate program fragments that can be precisely analyzed by abstract interpretation, namely, programs for which there exists a complete abstract interpretation. In the field of static inference of numeric invariants, this happens for programs, or parts of programs, that manifest a monotone (either non-decreasing or non-increasing) behavior. We first formalize the notion of program monotonicity with respect to a given input and a set of numerical variables of interest. A sound proof system is then introduced with judgments specifying whether a program is monotone relatively to a set of variables and a set of inputs. The interest in monotonicity is justified because we prove that the family of monotone programs admits a complete abstract interpretation over a specific class of non-trivial numerical abstractions and inputs. This class includes all non-relational abstract domains that refine interval analysis (i.e., at least as precise as the intervals abstraction) and that satisfy a topological convexity hypothesis.

链接与引用

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

BibTeX
@article{paperbot2640,
  title = {Monotonicity and the Precision of Program Analysis},
  author = {Marco Campion and Mila Dalla Preda and Roberto Giacobazzi and Caterina Urban},
  journal = {Proceedings of the ACM on Programming Languages},
  volume = {8},
  number = {POPL},
  year = {2024},
  doi = {10.1145/3632897}
}