Monotonicity and the Precision of Program Analysis
Marco Campion, Mila Dalla Preda, Roberto Giacobazzi, Caterina Urban
摘要
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.
问问这篇 Paper
智能体会读完全文。
Lune 把这篇 Paper 索引到了每一个公式,引用它的顶会 Paper 也一样。你提问,回答直接引用原文。
引用它的顶会 Paper1
问问它们各自怎么用它它引用的顶会 Paper11
- AI2: Safety and Robustness Certification of Neural Networks with Abstract InterpretationTimon Gehr, Matthew Mirman, Dana Drachsler-Cohen, Petar Tsankov 等S&P 2018 · 被引用 987 次
- Formal Security Analysis of Neural Networks using Symbolic IntervalsShiqi Wang, Kexin Pei, Justin Whitehouse, Junfeng Yang 等USENIX Security 2018 · 被引用 523 次
- Scalable Verified Training for Provably Robust Image ClassificationSven Gowal, Krishnamurthy Dvijotham, Robert Stanforth, Rudy Bunel 等ICCV 2019 · 被引用 196 次
- A simple differentiable programming languageMartín Abadi, Gordon D. PlotkinPOPL 2020 · 被引用 49 次
- A Logic for Locally Complete Abstract InterpretationsRoberto Bruni, Roberto Giacobazzi, Roberta Gori, Francesco RanzatoLICS 2021 · 被引用 34 次
相关 Paper
- Abstract extensionality: on the properties of incomplete abstract interpretationsRoberto Bruni, Roberto Giacobazzi, Roberta Gori, Isabel Garcia-Contreras 等POPL 2020 · 被引用 27 次
- Partial (In)Completeness in abstract interpretation: limiting the imprecision in program analysisMarco Campion, Mila Dalla Preda, Roberto GiacobazziPOPL 2022 · 被引用 21 次
- Program analysis via efficient symbolic abstractionPeisen Yao, Qingkai Shi, Heqing Huang, Charles ZhangOOPSLA 2021 · 被引用 12 次
- Solvable Polynomial Ideals: The Ideal Reflection for Program AnalysisJohn Cyphert, Zachary KincaidPOPL 2024 · 被引用 11 次
- Compiling with Abstract InterpretationDorian Lesbre, Matthieu LemerrePLDI 2024 · 被引用 6 次
