Affiliation:
1. Univ. di Verona, Verona, Italy
2. Univ. di Padova, Padua, Italy
3. École Polytechnique, Palaiseau, France
Abstract
Completeness is an ideal, although uncommon, feature of abstract interpretations, formalizing the intuition that, relatively to the properties encoded by the underlying abstract domains, there is no loss of information accumulated in abstract computations. Thus, complete abstract interpretations can be rightly understood as optimal. We deal with both pointwise completeness, involving generic semantic operations, and (least) fixpoint completeness. Completeness and fixpoint completeness are shown to be properties that depend on the underlying abstract domains only. Our primary goal is then to solve the problem of making abstract interpretations complete by minimally extending or restricting the underlying abstract domains. Under the weak and reasonable hypothesis of dealing with continuous semantic operations, we provide constructive characterizations for the least complete extensions and the greatest complete restrictions of abstract domains. As far as fixpoint completeness is concerned, for merely monotone semantic operators, the greatest restrictions of abstract domains are constructively characterized, while it is shown that the existence of least extensions of abstract domains cannot be, in general, guaranteed, even under strong hypotheses. These methodologies, which in finite settings give rise to effective algorithms, provide advanced formal tools for manipulating and comparing abstract interpretations, useful both in static program analysis and in semantics design. A number of examples illustrating these techniques are given.
Publisher
Association for Computing Machinery (ACM)
Subject
Artificial Intelligence,Hardware and Architecture,Information Systems,Control and Systems Engineering,Software
Cited by
182 articles.
订阅此论文施引文献
订阅此论文施引文献,注册后可以免费订阅5篇论文的施引文献,订阅后可以查看论文全部施引文献
1. Adversities in Abstract Interpretation - Accommodating Robustness by Abstract Interpretation;ACM Transactions on Programming Languages and Systems;2024-04-27
2. Tarsis: An effective automata‐based abstract domain for string analysis;Journal of Software: Evolution and Process;2024-02-14
3. Monotonicity and the Precision of Program Analysis;Proceedings of the ACM on Programming Languages;2024-01-05
4. Demystifying Template-Based Invariant Generation for Bit-Vector Programs;2023 38th IEEE/ACM International Conference on Automated Software Engineering (ASE);2023-09-11
5. Fixpoint Theory -- Upside Down;Logical Methods in Computer Science;2023-06-07