paperbot · PL 论文追踪

全部论文 待读 收藏

P2 Taking Out the Toxic Trash: Recovering Precision in Mixed Flow-Sensitive Static Analyses

清除有毒垃圾:在混合流敏感静态分析中恢复精度
PLDI 9(PLDI)2025匹配度 4/10 · 论文属于抽象解释/静态分析中提升混合流敏感分析精度的基础方法,与用户的静态分析背景相关;但未涉及 LLM/Agent、机器学习系统、浮点程序分析或贝叶斯程序分析等核心交叉方向,因此匹配度有限。引用 3 inbox
Fabian Stemmler, Michael Schwarz, Julian Erhard, Sarah Tilscher, Helmut Seidl
crossref: 2026-09-10

AI 速览

一句话:通过按来源区分贡献的 narrowing、保守 widening 与抽象垃圾回收,消除全局流不敏感分析中的多余贡献以恢复整体精度。

真实程序的静态分析常将流敏感、上下文敏感的局部状态分析与流不敏感、上下文不敏感的全局不变量计算混合进行。局部变量与全局量相互依赖,全局量的贡献在不动点迭代中不断累积,并依靠 widening 保证终止;这会使全局信息变得不必要地不精确,混入多余贡献(垃圾),进而毒害整体分析精度。本文提出三种互补技术来恢复全局量的精度:在全局量上做 narrowing 以按来源区分贡献;采用 reluctant widening 限制施加于全局量的 widening 力度;以及抽象垃圾回收,用于撤销对全局量的贡献并传播其撤回。实验表明这些技术能以合理代价提升混合流敏感分析的精度。

问题
混合流敏感静态分析中,全局量以流不敏感方式累积贡献并用 widening 保证终止,导致多余贡献(垃圾)被保留,不必要地降低整体分析精度。
方法
提出三种互补技术:对全局量进行按来源区分贡献的 narrowing、限制全局量 widening 力度的 reluctant widening,以及撤销贡献并传播撤回的抽象垃圾回收。
评估
通过实验评估,表明这些技术能以合理代价提升混合流敏感静态分析的精度。
原文摘要(Abstract)

Static analysis of real-world programs combines flow- and context-sensitive analyses of local program states with computation of flow- and context-insensitive invariants at globals , that, e.g., abstract data shared by multiple threads. The values of locals and globals may mutually depend on each other, with the analysis of local program states both making contributions to globals and querying their values. Usually, all contributions to globals are accumulated during fixpoint iteration, with widening applied to enforce termination. Such flow-insensitive information often becomes unnecessarily imprecise and can include superfluous contributions — trash — which, in turn, may be toxic to the precision of the overall analysis. To recover precision of globals, we propose techniques complementing each other: Narrowing on globals differentiates contributions by origin; reluctant widening limits the amount of widening applied at globals; and finally, abstract garbage collection undoes contributions to globals and propagates their withdrawal. The experimental evaluation shows that these techniques increase the precision of mixed flow-sensitive analyses at a reasonable cost.

链接与引用

DOI 原文 · PDF(开放获取) ·

BibTeX
@article{paperbot3126,
  title = {Taking Out the Toxic Trash: Recovering Precision in Mixed Flow-Sensitive Static Analyses},
  author = {Fabian Stemmler and Michael Schwarz and Julian Erhard and Sarah Tilscher and Helmut Seidl},
  journal = {Proceedings of the ACM on Programming Languages},
  volume = {9},
  number = {PLDI},
  year = {2025},
  doi = {10.1145/3729297}
}