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 techniques (operating respectively on data and events) within a counterexample-guided abstraction refinement (CEGAR) scheme. In this way, our algorithm incrementally increases the granularity of the abstractions until the specification 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 first 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.
منابع مشابه
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...
متن کامل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 techniqu...
متن کامل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...
متن کاملEfficient Verification of Sequential and Concurrent C Programs
There has been considerable progress in the domain of software verification over the last few years. This advancement has been driven, to a large extent, by the emergence of powerful yet automated abstraction techniques such as predicate abstraction. However, the state-space explosion problem in model checking remains the chief obstacle to the practical verification of real-world distributed sy...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید
ثبت ناماگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید
ورودعنوان ژورنال:
- Electr. Notes Theor. Comput. Sci.
دوره 89 شماره
صفحات -
تاریخ انتشار 2003