Concurrent Bounded Model Checking

Concurrent Bounded Model Checking
复制标题

DOI:
10.1145/2693208.2693240
复制
发表时间:
2015-02
期刊:
ACM SIGSOFT Softw. Eng. Notes
影响因子:
--
通讯作者:
Quoc-Sang Phan;P. Malacaria;C. Păsăreanu
Quoc-Sang Phan;P. Malacaria;C. Păsăreanu
中科院分区:
其他
文献类型:
--
作者:
Quoc-Sang Phan;P. Malacaria;C. Păsăreanu

文献摘要

相似文献

我们介绍了一种基于符号执行的方法,以进行并发有限模型检查。在我们的方法中,我们将程序转换为一个脱节形式的公式。该设计可以通过运行符号执行(无需任何约束解决)的主线程构建子形式的主线程以及一组运行决策过程以进行满意度检查的工作线程的并发验证。我们已经在称为JCBMC的工具中实现了这种方法,JCBMC是Java的第一个有限的模型检查器。 JCBMC的建造是由NASA开发的开源验证平台Java Pathfinder的扩展。 JCBMC使用符号探路者(SPF)作为符号执行,Z3作为求解器,并与多线程相当。为了进行评估,我们将JCBMC与SPF和有界模型检查器CBMC进行比较。实验的结果表明,与这两个工具相比,我们可以实现绩效的显着优势。
We introduce a methodology, based on symbolic execution, for Concurrent Bounded Model Checking. In our approach, we translate a program into a formula in a disjunctive form. This design enables concurrent verification, with a main thread running symbolic execution, without any constraint solving, to build subformulas, and a set of worker threads running a decision procedure for satisfiability checks. We have implemented this methodology in a tool called JCBMC, the first bounded model checker for Java. JCBMC is built as an extension of Java Pathfinder, an open-source verification platform developed by NASA. JCBMC uses Symbolic PathFinder (SPF) for the symbolic execution, Z3 as the solver and implements concurrency with multi-threading. For evaluation, we compare JCBMC against SPF and the Bounded Model Checker CBMC. The results of the experiments show that we can achieve significant advantages of performance over these two tools.