paperbot · PL 论文追踪

全部论文 待读 收藏

P2 Loop path reduction by state pruning

通过状态剪枝减少循环路径
ASE Proceedings of the 33rd ACM/IEEE International Conference on Automated Software Engineering2018匹配度 4/10 · 该论文属于程序分析与符号执行中的路径爆炸缓解技术,与用户核心关注的 LLM/Agent 与静态分析交叉、浮点程序分析或贝叶斯程序分析无直接关联;仅能作为静态分析/符号执行背景参考。引用 2 inbox
Jianxiong Gao, Steven S. Lumetta
crossref: 2026-09-12

AI 速览

一句话:提出对循环内状态进行剪枝的符号执行技术,在保持代码覆盖率的同时缓解路径爆炸。

符号执行长期受路径爆炸困扰:循环内的分支在每次迭代都可能产生新状态,大量路径对代码覆盖率并无贡献,却使执行难以到达程序更深的部分。本文提出以状态剪枝来削减循环内路径的思路,核心是在循环中限制所生成路径的数量,而非为每条可行执行路径都建立符号路径。通过识别并剪除对覆盖率无贡献的循环内状态,该方法试图在维持高代码覆盖率的前提下抑制路径数量增长,从而让符号执行能够继续深入程序内部。摘要给出了问题动机与方法思路,但未报告具体的实现细节与实验数据。

问题
符号执行中的路径爆炸问题:循环内分支在每次迭代都可能生成新状态,产生大量对覆盖率无贡献的路径,导致执行无法到达更深的代码。
方法
通过对循环内的状态进行剪枝,限制循环中生成的路径数量,同时尽量保持代码覆盖率。
评估
摘要未给出具体的实验评估设置与结果,仅以在保持高覆盖率的同时让符号执行到达更深代码为目标。
原文摘要(Abstract)

Path explosion has been a problem for symbolic execution for a long time. The key to avoid path explosion is to limit the number of paths generated within loops while maintaining high code coverage. Full symbolic execution creates paths for every possible execution path. Frequently, paths within loops do not contribute to code coverage. Branches within loops may generate new states at every iteration. The path explosion problem created by loops often stops symbolic execution to reach deeper parts of the code.

链接与引用

DOI 原文 ·

BibTeX
@inproceedings{paperbot4797,
  title = {Loop path reduction by state pruning},
  author = {Jianxiong Gao and Steven S. Lumetta},
  booktitle = {ASE},
  year = {2018},
  doi = {10.1145/3238147.3240731}
}