arXivDaily arXiv每日学术速递 周一至周五更新
arXiv周末暂无论文更新,休息一下吧,周末愉快~~
arXiv 1409.4637cs.LOcs.SE
收藏

基于演绎验证的软件错误自动定位

Automatic Error Localization for Software using Deductive Verification

Robert Koenighofer, Ronald Toegl, Roderick Bloem

摘要:

即使是优秀的程序员也会犯错误。自动验证可以检测错误,但将查找错误代码行的令人沮丧的任务留给了用户。本文提出了一种自动识别软件中潜在错误位置的方法。它基于一个演绎验证引擎,该引擎检测用前置和后置条件注释的函数中的错误。使用自动定理证明器,我们的方法在代码中找到可以修改的表达式,使程序满足其规范。可伸缩性是通过单独分析每个函数来实现的。我们已经实现了我们的方法在广泛使用的框架-C框架,目前的第一个实验结果。这是[8]的扩展版本,增加了一个附录。

英文摘要:

Even competent programmers make mistakes. Automatic verification can detect errors, but leaves the frustrating task of finding the erroneous line of code to the user. This paper presents an automatic approach for identifying potential error locations in software. It is based on a deductive verification engine, which detects errors in functions annotated with pre- and post-conditions. Using an automatic theorem prover, our approach finds expressions in the code that can be modified such that the program satisfies its specification. Scalability is achieved by analyzing each function in isolation. We have implemented our approach in the widely used Frama-C framework and present first experimental results. This is an extended version of [8], featuring an additional appendix.

机构、总结、中文摘要均由AI分析而来,可能存在错误,请以论文正文为准。

↑