Lune

PLDI2024顶会

Context-Free Language Reachability via Skewed Tabulation

Yuxiang Lei, Camille Bossut, Yulei Sui, Qirun Zhang

2024年份
5被引次数

摘要

Context-free language reachability (CFL-reachability) is a prominent model for formulating program analysis problems. Almost all CFL-reachability algorithms are based on the Reps-Horwitz-Sagiv (RHS) tabulation. In essence, the RHS tabulation, based on normalized context-free grammars, is similar to the CYK algorithm for CFL-parsing. Consider a normalized rule 𝑆 ::= 𝐴 𝐵 and a CFL-reachability problem instance of computing 𝑆-edges in the input graph. The RHS tabulation obtains all summary edges (i.e., 𝑆-, 𝐴-, and 𝐵-edges) based on the grammar rules. However, many 𝐴-and 𝐵-edges are wasted because only a subset of those edges eventually contributes to generating 𝑆-edges in the input graph.

This paper proposes a new tabulation strategy for speeding up CFL-reachability by eliminating wasted and unnecessary summary edges. We particularly focus on recursive nonterminals. Our key technical insight is that the wasted edge generations and insertions caused by recursive nonterminals can be avoided by modifying the parse trees either statically (by transforming the grammar) or dynamically (using a specialized online CFL-reachability solver). For example, if a recursive nonterminal 𝐵, generated by a rule 𝐵 ::= 𝐵 𝑋 , appears on the right-hand side of a rule 𝑆 ::= 𝐴 𝐵, we can make 𝑆 recursive (by introducing a new rule 𝑆 ::= 𝑆 𝑋 ) and eliminate the original recursive rule (𝐵 ::= 𝐵 𝑋 ). Due to the rule 𝑆 ::= 𝑆 𝑋 , the shapes of the parse trees associated with the left-hand-side nonterminal 𝑆 become more "skewed". Thus, we name our approach skewed tabulation for CFL-reachability.

Skewed tabulation can significantly improve the scalability of CFL-reachability by reducing wasted and unnecessary summary edges. We have implemented skewed tabulation and applied the corresponding CFLreachability algorithm to an alias analysis, a value-flow analysis, and a taint analysis. Our extensive evaluation based on SPEC 2017 benchmarks yields promising results. For the three client analyses, CFL-reachability based on skewed tabulation can achieve 3.34×, 1.13× and 2.05× speedup over the state-of-the-art RHS-tabulationbased CFL-reachability solver and consume 60.05%, 20.38% and 63.06% less memory, respectively. Furthermore, the cost of grammar transformation for skewed tabulation is negligible, typically taking less than one second. CCS Concepts: • Theory of computation → Grammars and context-free languages.

问问这篇 Paper

智能体会读完全文。

Lune 把这篇 Paper 索引到了每一个公式,引用它的顶会 Paper 也一样。你提问,回答直接引用原文。

可以从这些问题问起

智能体调用

Luneget_paper_fulltext

在 Lune 里问

免费开始,无需绑卡

它引用的顶会 Paper4

相关 Paper

黄昏的海面,两侧是细线勾勒的悬崖