arXivDaily arXiv每日学术速递 周一至周五更新
北美退伍军人节(Veterans Day),12 日无更新
arXiv 1102.2330cs.PL
收藏

共享变量并发程序的对称感知谓词抽象(扩展技术报告)

Symmetry-Aware Predicate Abstraction for Shared-Variable Concurrent Programs (Extended Technical Report)

Alastair Donaldson, Alexander Kaiser, Daniel Kroening, Thomas Wahl

摘要:

谓词抽象是将有限状态模型检查器应用于主流语言编写的程序的关键使能技术。它已经非常成功地用于调试顺序系统级C代码。虽然模型检验最初是为分析并发系统而设计的,但很少有证据表明谓词抽象在共享变量并发软件中的富有成效的应用。本文的目的就是缩小这一差距。我们已经开发了一个可感知的谓词抽象策略:它考虑到C程序的复制结构,包括许多线程执行相同的过程,并生成一个布尔程序模板,其多线程执行健全overapproximates并发C程序。在此模板的模型检验并行实例化期间的状态爆炸现在可以通过利用对称性来吸收。我们已经实现了我们的方法中的SATABS谓词抽象框架,并证明其优越的性能在大范围的同步程序的替代方法。

英文摘要:

Predicate abstraction is a key enabling technology for applying finite-state model checkers to programs written in mainstream languages. It has been used very successfully for debugging sequential system-level C code. Although model checking was originally designed for analyzing concurrent systems, there is little evidence of fruitful applications of predicate abstraction to shared-variable concurrent software. The goal of this paper is to close this gap. We have developed a symmetry-aware predicate abstraction strategy: it takes into account the replicated structure of C programs that consist of many threads executing the same procedure, and generates a Boolean program template whose multi-threaded execution soundly overapproximates the concurrent C program. State explosion during model checking parallel instantiations of this template can now be absorbed by exploiting symmetry. We have implemented our method in the SATABS predicate abstraction framework, and demonstrate its superior performance over alternative approaches on a large range of synchronization programs.

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

↑