Symbolic Counter Abstraction for Concurrent Software

被引:0
作者
Basler, Gerard [1 ]
Mazzucchi, Michele [1 ]
Wahl, Thomas [1 ]
Kroening, Daniel [1 ]
机构
[1] ETH, Inst Comp Syst, Zurich, Switzerland
来源
COMPUTER AIDED VERIFICATION, PROCEEDINGS | 2009年 / 5643卷
关键词
MODEL CHECKING; PREDICATE ABSTRACTION; SYMMETRY REDUCTION; PROGRAMS;
D O I
暂无
中图分类号
TP18 [人工智能理论];
学科分类号
081104 ; 0812 ; 0835 ; 1405 ;
摘要
The trend towards multi-core computing has made concurrent software an important target of computer-aided verification. Unfortunately, Model Checkers for such software suffer tremendously from combinatorial state space explosion. We show how to apply counter abstraction to real-world concurrent programs to factor out redundancy due to thread replication. The traditional global state representation as a vector of local states is replaced by a vector of thread counters, one per local state. In practice, straightforward implementations of this idea are unfavorably sensitive to the number of local states. We present a novel symbolic exploration algorithm that avoids this problem by carefully scheduling which counters to track at any moment during the search. Our experiments are carried out on Boolean programs, an abstraction promoted by the SLAM project. To our knowledge, this marks the first application of counter abstraction to programs with non-trivial local state spaces, and results in the first scalable Model Checker for concurrent Boolean programs.
引用
收藏
页码:64 / 78
页数:15
相关论文
共 26 条
  • [1] Andrews T, 2004, LECT NOTES COMPUT SC, V3114, P484
  • [2] [Anonymous], 1997, LNCS
  • [3] BALL T, 2001, LNCS, V2031, P158
  • [4] BALL T, 2006, STATIC ANAL DEVICE D
  • [5] Ball Thomas., 2000, Model Checking of Software (SPIN)
  • [6] BARNER S, 2005, FORMAL METHODS SYSTE
  • [7] BLANC N, 2008, LNCS, V4963, P459
  • [8] Clarke E, 2005, LECT NOTES COMPUT SC, V3440, P570
  • [9] CLARKE E, 1996, FORMAL METHODS SYSTE
  • [10] Cook B, 2005, LECT NOTES COMPUT SC, V3639, P75