Calculus of communicating systems
From Wikipedia, the free encyclopedia
The Calculus of Communicating Systems (CCS) is a process calculus introduced by Robin Milner in around 1980. Its actions model indivisible communications between exactly two participants. The formal language includes primitives for describing parallel composition, choice between actions and scope restriction.
According to Milner, "There is nothing canonical about the choice of the basic combinators, even though they were chosen with great attention to economy. What characterises our calculus is not the exact choice of combinators, but rather the choice of interpretation and of mathematical framework".
The expressions of the language are interpreted as a labelled transition system. Between these models, bisimulation is used as a semantic equivalence.
[edit] Related calculi and models
- Communicating Sequential Processes (CSP), developed by Tony Hoare, is a language that arose at a similar time to CCS.
- The pi-calculus, developed by Milner in the late 80's, provides mobility of communication links by allowing processes to communicate the names of communication channels themselves.
Some other languages based on CCS:
Models that have been used in the study of CCS-like systems:
[edit] References
- Robin Milner: A Calculus of Communicating Systems, Springer Verlag, ISBN 0-387-10235-3. 1980.
- Robin Milner, Communication and Concurrency, Prentice Hall, International Series in Computer Science, ISBN 0-131-15007-3. 1989