paperbot · PL 论文追踪

全部论文 待读 收藏

P1 Mining assumptions for software components using machine learning

使用机器学习挖掘软件组件的环境假设
FSE Proceedings of the 28th ACM Joint Meeting on European Software Engineering Conference and Symposium on the Foundations of Software Engineering2020匹配度 5/10 · 论文用决策树、搜索测试与模型检测自动合成环境假设,属于机器学习辅助形式化验证,与 AI→PL 有方法交叉;但不涉及 LLM/Agent、静态分析、浮点或贝叶斯程序分析,因此不是当前核心方向。引用 19 inbox
Khouloud Gaaloul, Claudio Menghi, Shiva Nejati, Lionel C. Briand, David Wolfe
crossref: 2026-09-12

AI 速览

一句话:提出 EPIcuRus,结合搜索测试、决策树学习与模型检测,自动为软件组件合成环境假设。

软件验证通常要求组件在所有环境下满足需求,但实际组件运行于更大系统中,只需在环境假设约束的输入下满足需求。本文提出 EPIcuRus,融合搜索测试、机器学习和模型检测来自动合成组件环境假设:用决策树从测试用例及其判定结果中推断假设,并通过模型检测验证;同时提出由机器学习反馈引导的 Important Features Boundary Test(IFBT)测试生成技术,提高假设生成效率与效果。在四个工业模型的 18 条需求上评估,EPIcuRus 均能计算出保证需求满足的假设,其中约 78% 可在一小时内完成。

问题
如何自动为软件组件合成环境假设,即组件输入上保证其满足需求的约束条件。
方法
EPIcuRus 结合搜索测试、机器学习与模型检测:决策树从测试结果推断假设,模型检测验证假设,并用机器学习反馈引导 IFBT 测试生成。
评估
在四个工业模型的 18 条需求上评估,EPIcuRus 能为每条需求计算出有效假设,约 78% 的假设可在一小时内完成。
原文摘要(Abstract)

Software verification approaches aim to check a software component under analysis for all possible environments. In reality, however, components are expected to operate within a larger system and are required to satisfy their requirements only when their inputs are constrained by environment assumptions. In this paper, we propose EPIcuRus, an approach to automatically synthesize environment assumptions for a component under analysis (i.e., conditions on the component inputs under which the component is guaranteed to satisfy its requirements). EPIcuRus combines search-based testing, machine learning and model checking. The core of EPIcuRus is a decision tree algorithm that infers environment assumptions from a set of test results including test cases and their verdicts. The test cases are generated using search-based testing, and the assumptions inferred by decision trees are validated through model checking. In order to improve the efficiency and effectiveness of the assumption generation process, we propose a novel test case generation technique, namely Important Features Boundary Test (IFBT), that guides the test generation based on the feedback produced by machine learning. We evaluated EPIcuRus by assessing its effectiveness in computing assumptions on a set of study subjects that include 18 requirements of four industrial models. We show that, for each of the 18 requirements, EPIcuRus was able to compute an assumption to ensure the satisfaction of that requirement, and further, ≈78% of these assumptions were computed in one hour.

链接与引用

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

BibTeX
@inproceedings{paperbot5774,
  title = {Mining assumptions for software components using machine learning},
  author = {Khouloud Gaaloul and Claudio Menghi and Shiva Nejati and Lionel C. Briand and David Wolfe},
  booktitle = {FSE},
  year = {2020},
  doi = {10.1145/3368089.3409737}
}