Process algebra : equational theories of communicating processes Foreword Tony Hoare Foreword Robin Milner Foreword Jan Bergstra 1. Process algebra 2. Preliminaries 3. Transition systems 4. Basic process theory 5. Recursion 6. Sequential processes 7. Parallel and communicating processes 8. Abstraction 9. Timing 10. Data and states 11. Features 12. Semantics Process algebra is a widely accepted and much used technique in the specification and verification of parallel and distributed software systems. This book sets the standard for the field. It assembles the relevant results of most process algebras currently in use and presents them in a unified framework and notation. The authors describe the theory underlying the development realization and maintenance of software that occurs in parallel or distributed systems. A system can be specified in the syntax provided and the axioms can be used to verify that a composed system has the required external behaviour. As examples two protocols are completely specified and verified in the text: the Alternating Bit Protocol for Data Communication and Fischers Protocol of Mutual Exclusion. The book serves as a reference text for researchers and graduate students in computer science offering a complete overview of the field and referring to further literature where appropriate