Abstraction Refinement Guided by a Learnt Probabilistic Model
The core challenge in designing an effective static program analysis is to find a good program abstraction – one that retains only details relevant to a given query. In this paper, we present a new approach for automatically finding such an abstraction, by using guidance from a probabilistic model, which itself is tuned by observing prior runs of the analysis. Our approach applies to parametric static analyses implemented in Datalog, and is based on counterexample-guided abstraction refinement. For each untried abstraction, our probabilistic model provides a probability of success, while the size of the abstraction provides an estimate of its cost in terms of analysis time. Combining these two metrics, probability and cost, our refinement algorithm picks an optimal abstraction. Our probabilistic model is a variant of the Erdos–Renyi random graph model, and it is tunable by what we call hyperparameters. We present a method to learn good values for these hyperparameters, by observing past runs of the analysis on an existing codebase. We implemented our approach on an object-sensitive pointer analysis for Java programs with two client analyses (PolySite and Downcast). Experiments show the benefits of our approach on reducing the runtime of the analysis.
Thu 21 JanDisplayed time zone: Guadalajara, Mexico City, Monterrey change
14:20 - 16:00 | Track 1: Learning and verificationResearch Papers at Grand Bay North Chair(s): David Monniaux CNRS, VERIMAG | ||
14:20 25mTalk | Combining Static Analysis with Probabilistic Models to Enable Market-Scale Analysis Research Papers Damien Octeau University of Wisconsin and Pennsylvania State University, Somesh Jha University of Wisconsin, Madison, Matthew Dering Pennsylvania State University, Patrick McDaniel Pennsylvania State University, Alexandre Bartel Technical University Darmstadt, Hongyu Li Rice University, Jacques Klein University of Luxembourg, Yves Le Traon University of Luxembourg Media Attached | ||
14:45 25mTalk | Abstraction Refinement Guided by a Learnt Probabilistic Model Research Papers Media Attached | ||
15:10 25mTalk | Learning Invariants using Decision Trees and Implication Counterexamples Research Papers Pranav Garg University of Illinois at Urbana-Champaign, Daniel Neider University of Illinois at Urbana-Champaign, P. Madhusudan University of Illinois at Urbana-Champaign, Dan Roth University of Illinois at Urbana-Champaign Media Attached | ||
15:35 25mTalk | Symbolic Abstract Data Type Inference Research Papers Media Attached |