paperbot · PL 论文追踪

全部论文 待读 收藏

P2 Boosting symbolic execution via constraint solving time prediction (experience paper)

通过约束求解时间预测提升符号执行(经验论文)
ISSTA Proceedings of the 30th ACM SIGSOFT International Symposium on Software Testing and Analysis2021匹配度 4/10 · 论文将经典机器学习用于预测符号执行中的约束求解时间,属于 AI→PL 的邻近方向,但未涉及用户核心关注的 LLM/Agent 改进静态分析或形式化验证,也不涉及浮点程序分析或贝叶斯程序分析。其问题驱动和工程实践特征有一定参考价值,但整体匹配度有限。引用 14 inbox
Sicheng Luo, Hui Xu, Yanxiang Bi, Xin Wang, Yangfan Zhou
crossref: 2026-09-12

AI 速览

一句话:提出用机器学习预测约束求解时间,自适应决定符号执行是否继续求解,从而提升效率。

符号执行是自动化测试用例生成的重要方法,但常因约束求解问题困难而难以扩展到大型程序。现有工具通常用固定超时(如 angr 的五分钟)终止求解,但超时设置对效率至关重要。本文提出预测约束模型求解所需时间,让符号执行引擎据此判断是否继续当前求解。为控制预测自身开销,仅当求解时间超过较小阈值时才触发预测器。实验在多个机器学习模型和数据集上验证,采用自适应设计后 F1 分数为 0.743 至 0.800;随后将该预测器应用于 8 个程序进行模拟实验,结果显示约束求解效率可提升 1.25 至 3 倍,具体取决于约束模型硬度分布。

问题
符号执行因困难约束求解而可扩展性差,固定超时策略难以平衡效率与完整性。
方法
训练机器学习模型预测约束求解所需时间,仅在求解时间超过小阈值时触发预测,符号执行引擎据此决定是否继续当前求解,并引入自适应设计。
评估
在多个数据集上评估不同模型的预测性能(F1 0.743–0.800),并在 8 个程序上进行模拟实验,报告约束求解效率提升 1.25–3 倍。
原文摘要(Abstract)

Symbolic execution is an essential approach for automated test case generation. However, the approach is generally not scalable to large programs. One critical reason is that the constraint solving problems in symbolic execution are generally hard. Consequently, the symbolic execution process may get stuck in solving such hard problems. To mitigate this issue, symbolic execution tools generally rely on a timeout threshold to terminate the solving. Such a timeout is generally set to a fixed, predefined value, e.g., five minutes in angr. Nevertheless, how to set a proper timeout is critical to the tool’s efficiency. This paper proposes an approach to tackle the problem by predicting the time required for solving a constraint model so that the symbolic execution engine could base on the information to determine whether to continue the current solving process. Due to the cost of the prediction itself, our approach triggers the predictor only when the solving time has exceeded a relatively small value. We have shown that such a predictor can achieve promising performance with several different machine learning models and datasets. By further employing an adaptive design, the predictor can achieve an F1-score ranging from 0.743 to 0.800 on these datasets. We then apply the predictor to eight programs and conduct simulation experiments. Results show that the efficiency of constraint solving for symbolic execution can be improved by 1.25x to 3x, depending on the distribution of the hardness of their constraint models.

链接与引用

DOI 原文 ·

BibTeX
@inproceedings{paperbot6657,
  title = {Boosting symbolic execution via constraint solving time prediction (experience paper)},
  author = {Sicheng Luo and Hui Xu and Yanxiang Bi and Xin Wang and Yangfan Zhou},
  booktitle = {ISSTA},
  year = {2021},
  doi = {10.1145/3460319.3464813}
}