Fast Graph Simplification for Interleaved Dyck-Reachability Yuanbo Li Qirun Zhang Thomas Reps Georgia Institute of Technology Georgia Institute of Technology University of Wisconsin-Madison USA USA USA
[email protected] [email protected] [email protected] Abstract CCS Concepts: • Mathematics of computing ! Graph ! Many program-analysis problems can be formulated as graph- algorithms; • Theory of computation Program anal- reachability problems. Interleaved Dyck language reachabil- ysis. ity (InterDyck-reachability) is a fundamental framework to Keywords: CFL-Reachability, Static Analysis express a wide variety of program-analysis problems over edge-labeled graphs. The InterDyck language represents ACM Reference Format: an intersection of multiple matched-parenthesis languages Yuanbo Li, Qirun Zhang, and Thomas Reps. 2020. Fast Graph Simpli- fication for Interleaved Dyck-Reachability. In Proceedings of the 41st (i.e., Dyck languages). In practice, program analyses typically ACM SIGPLAN International Conference on Programming Language leverage one Dyck language to achieve context-sensitivity, Design and Implementation (PLDI ’20), June 15–20, 2020, London, and other Dyck languages to model data dependences, such UK. ACM, New York, NY, USA, 14 pages. https://doi.org/10.1145/ as field-sensitivity and pointer references/dereferences. In 3385412.3386021 the ideal case, an InterDyck-reachability framework should model multiple Dyck languages simultaneously. Unfortunately, precise InterDyck-reachability is undecid- 1 Introduction able. Any practical solution must over-approximate the exact The L language-reachability (L-reachability) framework is answer. In the literature, a lot of work has been proposed to a popular model to formulate many program-analysis prob- over-approximate the InterDyck-reachability formulation. lems [14].