Understanding Concurrent Systems

By A.W. Roscoe

Understanding Concurrent Systems Cover Image

Since the introduction of Hoares’ Communicating Sequential Process (CSP) notation, powerful new tools have transformed CSP into a practical way of describing industrial-sized problems. This book presents the basic CSP knowledge needed to utilize those tools.

Full Description

  • ISBN13: 978-1-8488-2257-3
  • 548 Pages
  • User Level: Students
  • Publication Date: October 10, 2010
  • Available eBook Formats: PDF
  • eBook Price: $99.00
Buy eBook Buy Print Book Add to Wishlist
Full Description
CSP notation has been used extensively for teaching and applying concurrency theory, ever since the publication of the text Communicating Sequential Processes by C.A.R. Hoare in 1985. Both a programming language and a specification language, the theory of CSP helps users to understand concurrent systems, and to decide whether a program meets its specification. As a member of the family of process algebras, the concepts of communication and interaction are presented in an algebraic style. An invaluable reference on the state of the art in CSP, Understanding Concurrent Systems also serves as a comprehensive introduction to the field, in addition to providing material for a number of more advanced courses. A first point of reference for anyone wanting to use CSP or learn about its theory, the book also introduces other views of concurrency, using CSP to model and explain these. The text is fully integrated with CSP-based tools such as FDR, and describes how to create new tools based on FDR. Most of the book relies on no theoretical background other than a basic knowledge of sets and sequences. Sophisticated mathematical arguments are avoided whenever possible. Topics and features: presents a comprehensive introduction to CSP; discusses the latest advances in CSP, covering topics of operational semantics, denotational models, finite observation models and infinite-behaviour models, and algebraic semantics; explores the practical application of CSP, including timed modelling, discrete modelling, parameterised verifications and the state explosion problem, and advanced topics in the use of FDR; examines the ability of CSP to describe and enable reasoning about parallel systems modelled in other paradigms; covers a broad variety of concurrent systems, including combinatorial, timed, priority-based, mobile, shared variable, statecharts, buffered and asynchronous systems; contains exercises and case studies to support the text; supplies further tools and information at the associated website: http://www.comlab.ox.ac.uk/ucs/. From undergraduate students of computer science in need of an introduction to the area, to researchers and practitioners desiring a more in-depth understanding of theory and practice of concurrent systems, this broad-ranging text/reference is essential reading for anyone interested in Hoare’s CSP.
Table of Contents

Table of Contents

  1. Part I: A Foundation Course in CSP.
  2. Building a Simple Sequential Process.
  3. Understanding CSP.
  4. Parallel Operators.
  5. CSP Case Studies.
  6. Hiding and Renaming.
  7. Beyond Traces.
  8. Further Operators.
  9. Using FDR.
  10. Part II: Theory.
  11. Operational Semantics.
  12. Denotational Semantics and Behavioural Models.
  13. Finite Observation Models.
  14. Infinite
  15. behaviour Models.
  16. The Algebra of CSP.
  17. Part III: Using CSP.
  18. Timed Systems 1: tock
  19. CSP.
  20. Timed Systems 2: Discrete Timed CSP.
  21. More About FDR.
  22. State Explosion and Parameterised Verification.
  23. Part IV: Exploring Concurrency.
  24. Shared
  25. variable Programs.
  26. Understanding Shared
  27. variable Concurrency.
  28. Priority and Mobility.
Errata

Please Login to submit errata.

No errata are currently published