Two Birds with One Stone: Multi-Derivation for Fast Context-Free Language Reachability Analysis
Context-free language (CFL) reachability is a fundamental framework for formulating program analyses. CFL-reachability analysis works on top of an edge-labeled graph by deriving reachability relations and adding them as labeled edges to the graph. Existing CFL-reachability algorithms typically adopt a single-reachability relation derivation (SRD) strategy, i.e., one reachability relation is derived at a time. Unfortunately, this strategy can lead to redundancy, hindering the efficiency of the analysis.
To address this problem, this paper proposes PEARL, a multi-derivation approach that reduces derivation redundancy for transitive relations that frequently arise when solving reachability relations, significantly improving the efficiency of CFL-reachability analysis. Our key insight is that multiple edges involving transitivity can be simultaneously derived via batch propagation of reachability relations on the transitivity-aware subgraphs that are induced from the original edge-labeled graph. We evaluate the performance of PEARL on two clients, i.e., context-sensitive value-flow analysis and field-sensitive alias analysis for C/C++. By eliminating a large amount of redundancy, PEARL achieves average speedups of 82.73x for value-flow analysis and 155.26x for alias analysis over the standard CFL-reachability algorithm. The comparison with POCR, a state-of-the-art CFL-reachability solver, shows that PEARL runs 10.1x (up to 29.2x) and 2.37x (up to 4.22x) faster on average respectively for value-flow analysis and alias analysis with less consumed memory.
Multi-derivation (Multi-derivation.pdf) | 999KiB |
Wed 13 SepDisplayed time zone: Amsterdam, Berlin, Bern, Rome, Stockholm, Vienna change
10:30 - 12:00 | Program AnalysisResearch Papers / Tool Demonstrations / NIER Track / Journal-first Papers at Room D Chair(s): Domenico Bianculli University of Luxembourg | ||
10:30 12mTalk | An Integrated Program Analysis Framework for Graduate Courses in Programming Languages and Software Engineering Research Papers Prantik Chatterjee Indian Institute Of Technology Kanpur and MathWorks, Pankaj Kumar Kalita IIT Kanpur, Sumit Lahiri Indian Institute Of Technology Kanpur, Sujit Kumar Muduli IIT Kanpur, Vishal Singh Indian Institute of Technology Kanpur, Gourav Takhar Indian Institute of Technology Kanpur, Subhajit Roy IIT Kanpur | ||
10:42 12mTalk | Two Birds with One Stone: Multi-Derivation for Fast Context-Free Language Reachability Analysis Research Papers Chenghang Shi SKLP, Institute of Computing Technology, CAS, Haofeng Li , Yulei Sui University of New South Wales, Sydney, Jie Lu SKLP, Institute of Computing Technology, CAS, Lian Li Institute of Computing Technology at Chinese Academy of Sciences; University of Chinese Academy of Sciences, Jingling Xue UNSW Pre-print File Attached | ||
10:54 12mTalk | NRAgo: Solving SMT(NRA) Formulas with Gradient-based Optimization Tool Demonstrations Minghao Liu Institute of Software at Chinese Academy of Sciences; University of Chinese Academy of Sciences, Kunhang Lv Institute of Software, Chinese Academy of Sciences, Pei Huang Stanford University, Rui Han Institute of Software at Chinese Academy of Sciences; University of Chinese Academy of Sciences, Fuqi Jia Institute of Software at Chinese Academy of Sciences; University of Chinese Academy of Sciences, Yu Zhang Institute of Software, Chinese Academy of Sciences, Feifei Ma Institute of Software at Chinese Academy of Sciences; University of Chinese Academy of Sciences, Jian Zhang Institute of Software at Chinese Academy of Sciences; University of Chinese Academy of Sciences File Attached | ||
11:06 12mTalk | Live Programming for Finite Model Finders NIER Track Allison Sullivan University of Texas at Arlington Pre-print File Attached | ||
11:18 12mTalk | Towards Robustness of Deep Program Processing Models -- Detection, Estimation and Enhancement Journal-first Papers Huangzhao Zhang Peking University, Zhiyi Fu Peking University, Ge Li Peking University, Lei Ma University of Alberta, Zhehao Zhao Peking University, Hua'an Yang Peking University, Yizhe Sun Peking University, Yang Liu Nanyang Technological University, Zhi Jin Peking University Link to publication DOI File Attached | ||
11:30 12mTalk | Precise Data-Driven Approximation for Program Analysis via FuzzingRecorded talk Research Papers Nikhil Parasaram University College London; ConsenSys Diligence, Earl T. Barr University College London; Google DeepMind, Sergey Mechtaev University College London, Marcel Böhme MPI-SP; Monash University Pre-print Media Attached | ||
11:42 12mTalk | Contrastive Learning for API Aspect AnalysisRecorded talk Research Papers G. M. Shahariar Ahsanullah University of Science and Technology, Tahmid Hasan Bangladesh University of Engineering and Technology, Anindya Iqbal Bangladesh University of Engineering and Technology Dhaka, Bangladesh, Gias Uddin York University, Canada Pre-print Media Attached |