Concurrency Verification
This is a systematic and comprehensive introduction both to compositional proof methods for the state-based verification of concurrent programs, such as the assumption-commitment and rely-guarantee paradigms, and to noncompositional methods, whose presentation culminates in an exposition of the communication-closed-layers (CCL) paradigm for verifying network protocols. Compositional concurrency verification methods reduce the verification of a concurrent program to the independent verification of its parts. If those parts are tightly coupled, one additionally needs verification methods based on the causal order between events. These are presented using CCL. The semantic approach followed here allows a systematic presentation of all these concepts in a unified framework which highlights essential concepts. The book is self-contained, guiding the reader from advanced undergraduate level to the state-of-the-art. Every method is illustrated by examples, and a picture gallery of some of the subject's key figures complements the text.
- The semantic approach highlights essential concepts without syntactic overhead, and simplifies soundness and completeness proofs
- A detailed introduction to compositional proof methods each of which is proved to be sound and (semantically) complete
- Every method is illustrated by many examples, and a picture gallery of key figures complements the text
Reviews & endorsements
"It is capable of replacing a multitude of original articles...with one coherent text. Wherever appropriate, however, the book does refer in detail to original research, and includes many historical hints. It also provides a rich choice of exercises." Computing Reviews
"The book gives a very comprehensive presentation of what we know so far about proving concurrent systems...It gives an excellent survey of the field and lots of examples and technical details." Mathematical Reviews
Product details
January 2012Paperback
9780521169325
800 pages
229 × 152 × 40 mm
1.05kg
Available
Table of Contents
- Preface
- Part I. Introduction and Overview:
- 1. Introduction
- Part II. The Inductive Assertion Method:
- 2. Floyd's inductive assertion method for transition diagrams
- 3. The inductive assertion method for shared-variable concurrency
- 4. The inductive assertion method for synchronous message passing
- 5. Expressibility and relative completeness
- Part III. Compositional Proof Methods:
- 6. Introduction to compositional reasoning
- 7. Compositional proof methods: synchronous message passing
- 8. Compositional proof methods: shared-variable concurrency
- Part IV. Hoare Logic:
- 9. A proof system for sequential programs using Hoare triples
- 10. A Hoare logic for shared-variable concurrency
- 11. A Hoare logic for synchronous message passing
- Part V. Layered Design:
- 12. Transformational design and Hoare logic
- Bibliography
- Glossary of symbols
- Index.