Fast graph simplification for interleaved Dyck-reachability
Yuanbo Li, Qirun Zhang, Thomas W. Reps
摘要
Many program-analysis problems can be formulated as graphreachability problems. Interleaved Dyck language reachability (InterDyck-reachability) is a fundamental framework to express a wide variety of program-analysis problems over edge-labeled graphs. The InterDyck language represents an intersection of multiple matched-parenthesis languages (i.e., Dyck languages). In practice, program analyses typically leverage one Dyck language to achieve context-sensitivity, and other Dyck languages to model data dependences, such as field-sensitivity and pointer references/dereferences. In the ideal case, an InterDyck-reachability framework should model multiple Dyck languages simultaneously.
Unfortunately, precise InterDyck-reachability is undecidable. Any practical solution must over-approximate the exact answer. In the literature, a lot of work has been proposed to over-approximate the InterDyck-reachability formulation. This paper offers a new perspective on improving both the precision and the scalability of InterDyck-reachability: we aim to simplify the underlying input graph G. Our key insight is based on the observation that if an edge is not contributing to any InterDyck-path, we can safely eliminate it from G. Our technique is orthogonal to the InterDyck-reachability formulation, and can serve as a pre-processing step with any over-approximating approaches for InterDyck-reachability. We have applied our graph simplification algorithm to preprocessing the graphs from a recent InterDyck-reachabilitybased taint analysis for Android. Our evaluation on three popular InterDyck-reachability algorithms yields promising results. In particular, our graph-simplification method improves both the scalability and precision of all three In-terDyck-reachability algorithms, sometimes dramatically.
问问这篇 Paper
智能体会读完全文。
Lune 把这篇 Paper 索引到了每一个公式,引用它的顶会 Paper 也一样。你提问,回答直接引用原文。
引用它的顶会 Paper18
- Context Sensitivity without Contexts: A Cut-Shortcut Approach to Fast and Precise Pointer AnalysisWenjie Ma, Shengyuan Yang, Tian Tan, Xiaoxing Ma 等PLDI 2023 · 被引用 29 次
- Taming transitive redundancy for context-free language reachabilityYuxiang Lei, Yulei Sui, Shuo Ding, Qirun ZhangOOPSLA 2022 · 被引用 16 次
- FlowCFL: generalized type-based reachability analysis: graph reduction and equivalence of CFL-based and type-based reachabilityAna L. MilanovaOOPSLA 2020 · 被引用 15 次
- Recursive State Machine Guided Graph Folding for Context-Free Language ReachabilityYuxiang Lei, Yulei Sui, Shin Hwei Tan, Qirun ZhangPLDI 2023 · 被引用 15 次
- Verifying correct usage of context-free API protocolsKostas Ferles, Jon Stephens, Isil DilligPOPL 2021 · 被引用 12 次
相关 Paper
- Single-Source-Single-Target Interleaved-Dyck Reachability via Integer Linear ProgrammingYuanbo Li, Qirun Zhang, Thomas W. RepsPOPL 2023 · 被引用 6 次
- On the complexity of bidirected interleaved Dyck-reachabilityYuanbo Li, Qirun Zhang, Thomas W. RepsPOPL 2021 · 被引用 12 次
- The decidability and complexity of interleaved bidirected Dyck reachabilityAdam Husted Kjelstrøm, Andreas PavlogiannisPOPL 2022 · 被引用 17 次
- Program Analysis via Multiple Context Free Language ReachabilityGiovanna Kobus Conrado, Adam Husted Kjelstrøm, Jaco van de Pol, Andreas PavlogiannisPOPL 2025 · 被引用 2 次
- Indexing the extended Dyck-CFL reachability for context-sensitive program analysisQingkai Shi, Yongchao Wang, Peisen Yao, Charles ZhangOOPSLA 2022 · 被引用 11 次
