arXivDaily arXiv每日学术速递 周一至周五更新
arXiv 2212.02605cs.PL
收藏

利用非终止性证明面向对象验证程序中的错误

Proving False in Object-Oriented Verification Programs by Exploiting Non-Termination

Jaymon Furniss

摘要:

我们研究了三种不同的面向对象程序验证器:Gobra、KeY和Dafny。我们表明,所有这三个可以证明假使用一个简单的技巧与幽灵变量声明和非终止代码。这表明,这些语言的验证器可以产生不合理的结果,没有太大的困难,这可能是所有面向对象的验证器共同的。

英文摘要:

We looked at three different object-oriented program verifiers: Gobra, KeY, and Dafny. We show that all three can be made to prove false by using a simple trick with ghost variable declaration and non-terminating code. This shows that verifiers for these languages can produce unsound results without much difficulty and that this is possibly common throughout all OO verifiers.

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

↑