Laboratory for Foundations of Computer Science
Department of Computer Science - University of Edinburgh
A Calculus of Communicating
Systems
by
Robin Milner
(First published by Springer-Verlag as
Vol.92 of Lecture Notes in Computer Science)
LECS Report Series ECS-LFCS-86-7
‘August 1986
LFCS
Department of Computer Science
University of Edinburgh
The King's Buildings
Edinburgh EH9 3ZA CALCULUS OF COMMUNICATING
SYSTEMS
Robin Milner
University of Edinburgh
1986
(First published by Springer Verlag as
Vol.92 of Lecture Notes in Computer Science)Preface
‘This work was originally published by Springer Verlag as Volume 92 of their
Lecture Notes in Computer Science, in 1980. According to their normal practice
with the Lecture Notes Series, that publication has been discontinued. I am
grateful to Springer Verlag for including the work in their Series and for the
resulting success in disseminating the ideas.
Since many people still ask for the book, the Computer Science Department
at Edinburgh has decided to reissue it. This is not a revised edition; the work
is completely unchanged except that pages 129 and 130 are now in the right
order—they somehow got swapped in the Springer Verlag version—and a few
typographical errors have been corrected.
However, the algebraic approach to communicating systems has burgeoned in
the last five years or so, and the reader is entitled to be told how these develop-
ments have affected the material of this book. The most important development
is the discovery by David Park of the idea of bisimulation (1). The following para-
graphs will not be immediately intelligible to beginning readers, but for those
with some familiarity they will show the important technical consequences of this
new idea.
‘The main effect of the bisimulation idea is twofold: (1) in the theoretical
presentation of the two principal equivalence relations, strong equivalence (Chap-
ter 8) and observation equivalence (Chapter 7), and (2) in the practical technique
for proving two agents equivalent in either sense. The difference is as follows. In
the case of strong equivalence (~) the definition in this book gives ~ as the limit
Nkew ~é of a descending chain ~o,~1,...,~z,.-. of equivalence relations, where
~nii= F(~x), and where F is the monotonic function of binary relations over
agents defined thus:
(B,C) € F(R) iff, for every action 4 € AU {r} and value v
1. If BS, BY then, for some C’, C ; C! and (B',C) € R
2. If C “5 CO! then, for some B’, B “> BY and (B',C!) ER
(~o is chosen as the universal relation, and then ~s is easily shown to decrease
as k increases). Instead of this, we first define a strong bisimulation to be a
relation R over agents such that R C F(R); then we define strong equivalence
to be the largest strong bisimulation, which can be also seen to be the union of
all strong bisimulations; that is, we define ~= U{R | R C ¥(R)}. Concerning
proof technique, it becomes easier and more intuitively appealing to prove that
two agents are equivalent. Instead of establishing B ~ C by proving B ~, C
inductively for k (as frequently done in this book), we simply exhibit a relation
R such that (B,C) € R, and prove that 2 is a strong bisimulation.