Demanded abstract interpretation
Benno Stein, Bor-Yuh Evan Chang, Manu Sridharan
摘要
We consider the problem of making expressive static analyzers interactive. Formal static analysis is seeing increasingly widespread adoption as a tool for verification and bug-finding, but even with powerful cloud infrastructure it can take minutes or hours to get batch analysis results after a code change. While existing techniques offer some demand-driven or incremental aspects for certain classes of analysis, the fundamental challenge we tackle is doing both for arbitrary abstract interpreters. Our technique, demanded abstract interpretation, lifts program syntax and analysis state to a dynamically evolving graph structure, in which program edits, client-issued queries, and evaluation of abstract semantics are all treated uniformly. The key difficulty addressed by our approach is the application of general incremental computation techniques to the complex, cyclic dependency structure induced by abstract interpretation of loops with widening operators. We prove that desirable abstract interpretation meta-properties, including soundness and termination, are preserved in our approach, and that demanded analysis results are equal to those computed by a batch abstract interpretation. Experimental results suggest promise for a prototype demanded abstract interpretation framework: by combining incremental and demand-driven techniques, our framework consistently delivers analysis results at interactive speeds, answering 95% of queries within 1.2 seconds.
问问这篇 Paper
智能体会读完全文。
Lune 把这篇 Paper 索引到了每一个公式,引用它的顶会 Paper 也一样。你提问,回答直接引用原文。
引用它的顶会 Paper6
- Incremental Verification of Neural NetworksShubham Ugare, Debangshu Banerjee, Sasa Misailovic, Gagandeep SinghPLDI 2023 · 被引用 19 次
- Incremental Randomized Smoothing CertificationShubham Ugare, Tarun Suresh, Debangshu Banerjee, Gagandeep Singh 等ICLR 2024 · 被引用 14 次
- IncIDFA: An Efficient and Generic Algorithm for Incremental Iterative Dataflow AnalysisAman Nougrahiya, V. Krishna NandivadaOOPSLA 2025 · 被引用 4 次
- Webs and Flow-Directed Well-Typedness Preserving Program TransformationsBenjamin Quiring, David Van Horn, John H. Reppy, Olin ShiversPLDI 2025 · 被引用 2 次
- Persisting and Reusing Results of Static Program Analyses on a Large ScaleJohannes Düsing, Ben HermannASE 2023 · 被引用 1 次
相关 Paper
- A programming model for semi-implicit parallelization of static analysesDominik Helm, Florian Kübler, Jan Thomas Kölzer, Philipp Haller 等ISSTA 2020 · 被引用 8 次
- Automatically Tailoring Abstract Interpretation to Custom Usage ScenariosMuhammad Numair Mansur, Benjamin Mariano, Maria Christakis, Jorge A. Navas 等CAV 2021 · 被引用 5 次
- Deterministic parallel fixpoint computationSung Kook Kim, Arnaud J. Venet, Aditya V. ThakurPOPL 2020 · 被引用 9 次
- Compiling with Abstract InterpretationDorian Lesbre, Matthieu LemerrePLDI 2024 · 被引用 6 次
- Taking Out the Toxic Trash: Recovering Precision in Mixed Flow-Sensitive Static AnalysesFabian Stemmler, Michael Schwarz, Julian Erhard, Sarah Tilscher 等PLDI 2025 · 被引用 3 次
