Scaling Abstraction Refinement for Program Analyses in Datalog Using Graph Neural Networks
Counterexample-guided abstraction refinement (CEGAR) is a popular approach for automatically selecting appropriate abstractions with high precision and low time costs. Existing works cast abstraction refinements as constraint-solving problems. Due to the complexity of these problems, they cannot be scaled to large programs or complex analyses. We propose an approach that applies graph neural networks to improve the scalability of CEGAR for Datalog-based program analyses. By directly constructing graphs from the Datalog solver’s calculations, we can then use a neural network to score abstraction parameters from the information in those graphs. Then we reform the constraint problems such that the constraint solver ignores parameters with low scores. This in turn reduces the solution space and the size of the constraint problems. Since our graphs are directly constructed from Datalog computation without human effort, our approach can be applied to a broad range of parametric static analyses implemented in Datalog. We evaluate our approach on a pointer analysis and a typestate analysis and our approach can answer 2.83× and 1.5× as many queries as the baseline approach on large programs for the pointer analysis and the typestate analysis, respectively.
Thu 24 OctDisplayed time zone: Pacific Time (US & Canada) change
10:40 - 12:20 | |||
10:40 20mTalk | A Typed Multi-Level Datalog IR and its Compiler Framework OOPSLA 2024 DOI | ||
11:00 20mTalk | Finding Cross-rule Optimization Bugs in Datalog Engines OOPSLA 2024 Chi Zhang Nanjing University, Linzhang Wang Nanjing University, Manuel Rigger National University of Singapore DOI | ||
11:20 20mTalk | Making Formulog Fast: An Argument for Unconventional Datalog EvaluationOOPSLA 2024 Distinguished Artifact Award OOPSLA 2024 Aaron Bembenek University of Melbourne, Michael Greenberg Stevens Institute of Technology, Stephen Chong Harvard University DOI Pre-print | ||
11:40 20mTalk | Object-Oriented Fixpoint Programming with Datalog OOPSLA 2024 DOI | ||
12:00 20mTalk | Scaling Abstraction Refinement for Program Analyses in Datalog Using Graph Neural Networks OOPSLA 2024 DOI |