Back to Search
Start Over
Interactive Abstract Interpretation with Demanded Summarization.
- Source :
-
ACM Transactions on Programming Languages & Systems . Mar2024, Vol. 46 Issue 1, p1-40. 40p. - Publication Year :
- 2024
-
Abstract
- We consider the problem of making expressive, interactive static analyzers compositional. Such a technique could help bring the power of server-based static analyses to integrated development environments (IDEs), updating their results live as the code is modified. Compositionality is key for this scenario, as it enables reuse of already-computed analysis results for unmodified code. Previous techniques for interactive static analysis either lack compositionality, cannot express arbitrary abstract domains, or are not from-scratch consistent. We present demanded summarization, the first algorithm for incremental compositional analysis in arbitrary abstract domains that guarantees from-scratch consistency. Our approach analyzes individual procedures using a recent technique for demanded analysis, computing summaries on demand for procedure calls. A dynamically updated summary dependency graph enables precise result invalidation after program edits, and the algorithm is carefully designed to guarantee from-scratch-consistent results after edits, even in the presence of recursion and in arbitrary abstract domains. We formalize our technique and prove soundness, termination, and from-scratch consistency. An experimental evaluation of a prototype implementation on synthetic and real-world program edits provides evidence for the feasibility of this theoretical framework, showing potential for major performance benefits over non-demanded compositional analyses. [ABSTRACT FROM AUTHOR]
- Subjects :
- *ALGORITHMS
Subjects
Details
- Language :
- English
- ISSN :
- 01640925
- Volume :
- 46
- Issue :
- 1
- Database :
- Academic Search Index
- Journal :
- ACM Transactions on Programming Languages & Systems
- Publication Type :
- Academic Journal
- Accession number :
- 176329896
- Full Text :
- https://doi.org/10.1145/3648441