Incremental whole-program analysis in Datalog with lattices
Tamás Szabó, Sebastian Erdweg, Gábor Bergmann
摘要
Incremental static analyses provide up-to-date analysis results in time proportional to the size of a code change, not the entire code base. This promises fast feedback to programmers in IDEs and when checking in commits. However, existing incremental analysis frameworks fail to deliver on this promise for whole-program lattice-based data-flow analyses. In particular, prior Datalog-based frameworks yield good incremental performance only for intra-procedural analyses.
In this paper, we first present a methodology to empirically test if a computation is amenable to incrementalization. Using this methodology, we find that incremental wholeprogram analysis may be possible. Second, we present a new incremental Datalog solver called Laddder to eliminate the shortcomings of prior Datalog-based analysis frameworks. Our Datalog solver uses a non-standard aggregation semantics which allows us to loosen monotonicity requirements on analyses and to improve the performance of lattice aggregators considerably. Our evaluation on real-world Java code confirms that Laddder provides up-to-date points-to, constant propagation, and interval information in milliseconds.
• Software and its engineering → Automated static analysis.
问问这篇 Paper
智能体会读完全文。
Lune 把这篇 Paper 索引到了最后一个公式,引用它的顶会 Paper 也一样。你提问,回答直接引用原文。
引用它的顶会 Paper16
- Bring Your Own Data Structures to DatalogArash Sahebolamri, Langston Barrett, Scott Moore, Kristopher K. MicinskiOOPSLA 2023 · 被引用 11 次
- Efficient algorithms for dynamic bidirected Dyck-reachabilityYuanbo Li, Kris Satya, Qirun ZhangPOPL 2022 · 被引用 8 次
- Datalog-Based Language-Agnostic Change Impact Analysis for MicroservicesQingkai Shi, Xiaoheng Xie, Xianjin Fu, Peng Di 等ICSE 2025 · 被引用 4 次
- On Abstraction Refinement for Bayesian Program AnalysisYuanfeng Shi, Yifan Zhang, Xin ZhangOOPSLA 2025 · 被引用 4 次
- Interactive Debugging of Datalog ProgramsAndré Pacak, Sebastian ErdwegOOPSLA 2023 · 被引用 4 次
它引用的顶会 Paper1
相关 Paper
- IncIDFA: An Efficient and Generic Algorithm for Incremental Iterative Dataflow AnalysisAman Nougrahiya, V. Krishna NandivadaOOPSLA 2025 · 被引用 4 次
- Hybrid Inlining: A Framework for Compositional and Context-Sensitive Static AnalysisJiangchao Liu, Jierui Liu, Peng Di, Diyu Wu 等ISSTA 2023 · 被引用 3 次
- Incremental Program Analysis in the Wild: An Empirical Study on Real-World Program ChangesXizao Wang, Xiangrong Bin, Lanxin Huang, Shangqing Liu 等ASE 2025
- An Incremental Algorithm for Algebraic Program AnalysisChenyu Zhou, Yuzhou Fang, Jingbo Wang, Chao WangPOPL 2025 · 被引用 2 次
- A programming model for semi-implicit parallelization of static analysesDominik Helm, Florian Kübler, Jan Thomas Kölzer, Philipp Haller 等ISSTA 2020 · 被引用 8 次
