Principles of Model Checking

Front Cover
MIT Press, Apr 25, 2008 - Computers - 984 pages
A comprehensive introduction to the foundations of model checking, a fully automated technique for finding flaws in hardware and software; with extensive examples and both practical and theoretical exercises.

Our growing dependence on increasingly complex computer and software systems necessitates the development of formalisms, techniques, and tools for assessing functional properties of these systems. One such technique that has emerged in the last twenty years is model checking, which systematically (and automatically) checks whether a model of a given system satisfies a desired property such as deadlock freedom, invariants, and request-response properties. This automated technique for verification and debugging has developed into a mature and widely used approach with many applications. Principles of Model Checking offers a comprehensive introduction to model checking that is not only a text suitable for classroom use but also a valuable reference for researchers and practitioners in the field.

The book begins with the basic principles for modeling concurrent and communicating systems, introduces different classes of properties (including safety and liveness), presents the notion of fairness, and provides automata-based algorithms for these properties. It introduces the temporal logics LTL and CTL, compares them, and covers algorithms for verifying these logics, discussing real-time systems as well as systems subject to random phenomena. Separate chapters treat such efficiency-improving techniques as abstraction and symbolic manipulation. The book includes an extensive set of examples (most of which run through several chapters) and a complete set of basic results accompanied by detailed proofs. Each chapter concludes with a summary, bibliographic notes, and an extensive list of exercises of both practical and theoretical nature.

 

Contents

Chapter 1 System Verification
1
Chapter 2 Modelling Concurrent Systems
19
Chapter 3 LinearTime Properties
89
Chapter 4 Regular Properties
151
Chapter 5 Linear Temporal Logic
229
Chapter 6 Computation Tree Logic
313
Chapter 7 Equivalences and Abstraction
449
Chapter 8 Partial Order Reduction
595
Chapter 9 Timed Automata
673
Chapter 10 Probabilistic Systems
745
Preliminaries
909
Bibliography
931
Index
965
Copyright

Other editions - View all

Common terms and phrases

About the author (2008)

Christel Baier is Professor and Chair for Algebraic and Logical Foundations of Computer Science in the Faculty of Computer Science at the Technical University of Dresden.

Joost-Pieter Katoen is Professor at the RWTH Aachen University and leads the Software Modeling and Verification Group within the Department of Computer Science. He is affiliated with the Formal Methods and Tools Group at the University of Twente.

Bibliographic information