Affiliation
University of ArizonaIssue Date
2024-01-05Keywords
Abstract InterpretationComplete-Analyzability
Completeness
Program Analysis
Program Monotonicity
Metadata
Show full item recordPublisher
Association for Computing MachineryCitation
Marco Campion, Mila Dalla Preda, Roberto Giacobazzi, and Caterina Urban. 2024. Monotonicity and the Precision of Program Analysis. Proc. ACM Program. Lang. 8, POPL, Article 55 (January 2024), 34 pages. https://doi.org/10.1145/3632897Rights
© 2024 Copyright held by the owner/author(s). This work is licensed under a Creative Commons Attribution 4.0 International License.Collection Information
This item from the UA Faculty Publications collection is made available by the University of Arizona with support from the University of Arizona Libraries. If you have questions, please contact us at repository@u.library.arizona.edu.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. © 2024 Owner/Author.Note
Open access journalISSN
2475-1421DOI
10.1145/3632897Version
Final Published Versionae974a485f413a2113503eed53cd6c53
10.1145/3632897
Scopus Count
Collections
Except where otherwise noted, this item's license is described as © 2024 Copyright held by the owner/author(s). This work is licensed under a Creative Commons Attribution 4.0 International License.