Automated Compositional Abstraction Re nement for Concurrent C Programs : A Two - Level Approach 1
نویسندگان
چکیده
The state space explosion problem in model checking remains the chief obstacle to the practical veri cation of real-world distributed systems. We attempt to address this problem in the context of verifying concurrent (message-passing) C programs against safety speci cations. More speci cally, we present a fully automated compositional framework which combines two orthogonal abstraction techniques (operating respectively on data and events) within a counterexample-guided abstraction re nement (CEGAR) scheme. In this way, our algorithm incrementally increases the granularity of the abstractions until the speci cation is either established or refuted. Our explicit use of compositionality delays the onset of state space explosion for as long as possible. To our knowledge, this is the rst compositional use of CEGAR in the context of model checking concurrent C programs. We describe our approach in detail, and report on some very encouraging preliminary experimental results obtained with our tool MAGIC.
منابع مشابه
Automated Compositional Abstraction Refinement for Concurrent C Programs: A Two-Level Approach
The state space explosion problem in model checking remains the chief obstacle to the practical verification of real-world distributed systems. We attempt to address this problem in the context of verifying concurrent (message-passing) C programs against safety specifications. More specifically, we present a fully automated compositional framework which combines two orthogonal abstraction techn...
متن کاملAbstraction and Assume-guarantee Reasoning for Automated Software Verification
ion and Assume-guarantee Reasoning for Automated Software Verification S. Chaki, E. Clarke, D. Giannakopoulou, and C.S. Păsăreanu 1 Carnegie Mellon Software Engineering Institute 2 Carnegie Mellon University 3 RIACS, NASA Ames Research Center, Moffett Field, CA, USA 4 Kestrel Technology LLC, NASA Ames Research Center, Moffett Field, CA, USA Abstract. Compositional verification and abstraction a...
متن کاملScheduling Constraint Based Abstraction Refinement for Multi-Threaded Program Verification
Bounded model checking is among the most ecient techniques for the automatic verication of concurrent programs. However, encoding all possible interleavings oen requires a huge and complex formula, which signicantly limits the salability. is paper proposes a novel and ecient abstraction renement method for multi-threaded program verication. Observing that the huge formula is usually dom...
متن کاملA Counter Example Guided Abstraction Refinement Framework for Compositional Verification of Concurrent C Programs
Automatic verification of software implementations is a major challenge in the domain of formal methods. The state of the art solutions to this problem suffer from one or more of the following drawbacks. First, most tools attempt to scale to large implementations. But since they use trace containment as a notion of conformance, they risk an exponential blowup in the size of the specification. T...
متن کاملA Counterexample Guided Abstraction Refinement Framework for Verifying Concurrent C Programs
This dissertation presents a framework for verifying concurrent message-passing C programs in an automated manner. The methodology relies on several key ideas. First, programs are modeled as finite state machines whose states are labeled with data and whose transitions are labeled with events. We refer to such state machines as labeled Kripke structures (LKSs). Our state/event-based approach en...
متن کامل