paperbot · PL 论文追踪

RSS

Interactive Abstract Interpretation with Demanded Summarization

TOPLAS 46(1)2024
Benno Stein, Bor-Yuh Evan Chang, Manu Sridharan

尚未生成 AI 速览(可能缺少 API key 或等待下次运行补跑)。

原文摘要(Abstract)

We consider the problem of making expressive, interactive static analyzers compositional . Such a technique could help bring the power of server-based static analyses to integrated development environments (IDEs), updating their results live as the code is modified. Compositionality is key for this scenario, as it enables reuse of already-computed analysis results for unmodified code. Previous techniques for interactive static analysis either lack compositionality, cannot express arbitrary abstract domains, or are not from-scratch consistent. We present demanded summarization, the first algorithm for incremental compositional analysis in arbitrary abstract domains that guarantees from-scratch consistency. Our approach analyzes individual procedures using a recent technique for demanded analysis, computing summaries on demand for procedure calls. A dynamically updated summary dependency graph enables precise result invalidation after program edits, and the algorithm is carefully designed to guarantee from-scratch-consistent results after edits, even in the presence of recursion and in arbitrary abstract domains. We formalize our technique and prove soundness, termination, and from-scratch consistency. An experimental evaluation of a prototype implementation on synthetic and real-world program edits provides evidence for the feasibility of this theoretical framework, showing potential for major performance benefits over non-demanded compositional analyses.

链接与引用

DOI 原文 ·

BibTeX
@article{paperbot2677,
  title = {Interactive Abstract Interpretation with Demanded Summarization},
  author = {Benno Stein and Bor-Yuh Evan Chang and Manu Sridharan},
  journal = {ACM Transactions on Programming Languages and Systems},
  volume = {46},
  number = {1},
  year = {2024},
  doi = {10.1145/3648441}
}