Process Algebra
-
Algebra
-
The department of mathematics which investigates the relations and
properties of numbers by means of general symbols; and, in a more abstract
sense, a calculus of symbols combining according to certain defined laws.
[Oxford English Dictionary]
-
Process
-
Something going on [Webster]
-
Process algebra
-
An algebraic approach to the study of concurrent
processes. Its tools are algebraical languages for the specification of
processes and the formulation of statements about them, together with
calculi for the verification of these statements. [Van Glabbeek, 1987]
The term "process algebra" was coined in 1982 by Bergstra & Klop
[BK82]. A process algebra was a structure in the sense of universal
algebra that satisfied a particular set of axioms. Since 1984 they
used the phrase process algebra also to denote an area of science
(i.e. as a noun without particle). In this meaning the phrase was
sometimes used to refer to their own algebraic approach to the study
of concurrent processes [BK86b], and sometimes to such algebraic
approaches in general [BK86c]. The former use still occurs in [BW90]
and [He88] for instance, but the latter, to which I also subscribe, is
more widespread now.
The main algebraic approaches to concurrency are
- CCS, Milner's Calculus of Communicating Systems
[Mi80, Mi89, Mi90]
- CSP, Hoare's Communicating Sequential Processes
[BHR84, Ho85]
- ACP, Bergstra & Klop's Algebra of Communicating
Processes [BK84ab, BK85, BK86bc, BW90]
The most popular books on process algebra are:
Applications of the ACP approach are collected in:
- J.C.M. Baeten, editor (1990): Applications of Process
Algebra, Cambridge University Press.
A compact presentation of the foundations of the CCS approach is:
- R. Milner (1990): Operational and algebraic semantics of
concurrent processes, in J. van Leeuwen, editor:
Handbook of Theoretical Computer Science, Chapter 19,
Elsevier Science Publishers B.V. (North-Holland), pp. 1201-1242.
Finally, a short paper reviewing and comparing CCS and CSP is
For the historical references [Mi80, BHR84, BK82-84ab-85-86bc] see [BW90].
Rob van Glabbeek
rvg@CS.Stanford.EDU