Automatic Synthesis of Data-Flow AnalyzersVirtual
Tue 19 Oct 2021 21:50 - 22:05 at Zurich D - Session 3C Chair(s): Kedar Namjoshi
Data-flow analyzers (DFAs) are widely deployed in many stages of software development, such as compiler optimization, bug detection, and program verification. Automating their synthesis is non-trivial but will be practically beneficial. In this paper, we propose DFASy, a framework for the automatic synthesis of DFAs. Given a specification consisting of a control flow graph and the expected data-flow facts before and after each of its nodes, DFASy automatically synthesizes a DFA that satisfies the specification, including its flow direction, meet operator, and transfer function. DFASy synthesizes transfer functions by working with a domain-specific language that supports rich data-flow fact extraction operations, set operations, and logic operations. To avoid exploding the search space, we introduce an abstraction-guided pruning technique to assess the satisfiability of partially instantiated candidates and drop unsatisfiable ones from further consideration as early as possible. In addition, we also introduce a brevity-guided pruning technique to improve the readability and simplicity of synthesized DFAs and further accelerate the search. We have built a benchmark suite, which consists of seven classic (e.g., live variable analysis and null pointer detection) and seven custom data-flow problems. DFASy has successfully solved all the 14 data-flow problems in 21.8 seconds on average, outperforming significantly the three baselines compared. Both DFASy and its associated benchmark suite will be open-sourced.
Tue 19 OctDisplayed time zone: Central Time (US & Canada) change
13:50 - 15:10 | |||
13:50 15mTalk | Automatic Synthesis of Data-Flow AnalyzersVirtual SAS | ||
14:05 15mTalk | Disjunctive Interval AnalysisVirtual SAS Graeme Gange , Jorge A. Navas SRI International, Peter Schachte , Harald Sondergaard , Peter J. Stuckey Monash University | ||
14:20 15mTalk | Hash Consed Points-To SetsVirtual SAS Mohamad Barbar University of Technology Sydney; CSIRO’s Data61, Yulei Sui University of New South Wales, Sydney | ||
14:35 15mTalk | Selective Context-Sensitivity for k-CFA with CFL-ReachabilityVirtual SAS | ||
14:50 20mLive Q&A | Session 3C Discussion, Questions and Answers SAS |
21:50 - 23:10 | |||
21:50 15mTalk | Automatic Synthesis of Data-Flow AnalyzersVirtual SAS | ||
22:05 15mTalk | Disjunctive Interval AnalysisVirtual SAS Graeme Gange , Jorge A. Navas SRI International, Peter Schachte , Harald Sondergaard , Peter J. Stuckey Monash University | ||
22:20 15mTalk | Hash Consed Points-To SetsVirtual SAS Mohamad Barbar University of Technology Sydney; CSIRO’s Data61, Yulei Sui University of New South Wales, Sydney | ||
22:35 15mTalk | Selective Context-Sensitivity for k-CFA with CFL-ReachabilityVirtual SAS | ||
22:50 20mLive Q&A | Session 3C Discussion, Questions and Answers SAS |