The book begins with the basic principles for modelingconcurrent and communicating systems, introduces different classes of properties (including safetyand liveness), presents the notion of fairness, and provides automata-based algorithms ...
Author: Christel Baier
Publisher: Mit Press
Our growing dependence on increasingly complex computer and software systemsnecessitates the development of formalisms, techniques, and tools for assessing functionalproperties of these systems. One such technique that has emerged in the last twenty years is modelchecking, which systematically (and automatically) checks whether a model of a given systemsatisfies 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 usedapproach with many applications. Principles of Model Checking offers a comprehensive introduction tomodel checking that is not only a text suitable for classroom use but also a valuable reference forresearchers and practitioners in the field. The book begins with the basic principles for modelingconcurrent and communicating systems, introduces different classes of properties (including safetyand liveness), presents the notion of fairness, and provides automata-based algorithms for theseproperties. It introduces the temporal logics LTL and CTL, compares them, and covers algorithms forverifying these logics, discussing real-time systems as well as systems subject to random phenomena.Separate chapters treat such efficiency-improving techniques as abstraction and symbolicmanipulation. The book includes an extensive set of examples (most of which run through severalchapters) and a complete set of basic results accompanied by detailed proofs. Each chapter concludeswith a summary, bibliographic notes, and an extensive list of exercises of both practical andtheoretical nature.Christel Baier is Professor and Chair for Algebraic and Logical Foundations ofComputer 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 andVerification Group within the Department of Computer Science. He is affiliated with the FormalMethods and Tools Group at the University of Twente.