zbMATH — the first resource for mathematics

The \(\pi\)-calculus: A theory of mobile processes. (English) Zbl 0981.68116
Cambridge: Cambridge University Press. xii, 580 p. (2001).
Summary: Mobile systems have components which communicate and change their structure. This book presents the \(\pi\)-calculus, a theory of mobile systems, and shows how to use it to express systems precisely and reason about their behaviour rigorously.
The book is intended to serve both as a reference for the theory and as an extended demonstration of how to use the \(\pi\)-calculus to express systems and analyze their properties. It presents the theory in detail with emphasis on proof techniques. How to use the techniques is shown both in proofs of results that form part of the theory and in example applications of it.
The book is in seven parts. Part I introduces the \(\pi\)-calculus and develops its basic theory. Part II presents variations of the basic theory and important subcalculi of the \(\pi\)-calculus. A distinctive feature of the calculus is its rich theory of types for mobile systems. Part III introduces this theory, and Part IV shows how it is useful for understanding and reasoning about systems. Part V examines the relationship between the \(\pi\)-calculus and the \(\lambda\)-calculus. Part VII shows how ideas from \(\pi\)-calculus can be useful in object-oriented design and programming.
The book is written at the graduate level and is intended for computer scientists interested in mobile systems. It assumes no prior acquaintance with the \(\pi\)-calculus: both the theory and the viewpoint that underlies it are explained from the beginning. Each part ends with some references to sources and additional notes on related topics. Many exercises are suggested to help appreciation of the material.
The book is written by two of the original researchers on the \(\pi\)-calculus. It starts with an enthusiastic preface by Robin Milner who created and developed this theory.

68Q85 Models and methods for concurrent and distributed computing (process algebras, bisimulation, transition nets, etc.)
68-02 Research exposition (monographs, survey articles) pertaining to computer science
68N18 Functional programming and lambda calculus