Abstract
We introduce a formal algebraic semantics for CSP. First we show how algebraic laws can systematically reduce all finite CSP terms to a head normal form, and therefore create an Algebraic Operational Semantics. Then we show how to reduce this to a normal form for the finest CSP model as developed in Chap. 12. We can then show how a small selection of optional laws such as \(P=P\mathbin{\Box}P\) allow this normal form to be transformed into normal forms for any of the main models of CSP. This provides an elegant explanation for why the hierarchy of models developed in the previous two chapters is as it is.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Notes
- 1.
An amazing proportion of the ‘laws’ stated in [56] are false, and it is possible to find many distinct combinations which prove all processes equal. Some of the laws given in that book make even less sense than simply being false: for example ‘\(P\mathbin{|\!|\!|}Q\wedge Q\mathbin{|\!|\!|}R\Rightarrow P\mathbin{|\!|\!|}R\)’ which is trivially ill-typed since processes are not truth values.
- 2.
The fact that this transformation preserves equivalence over all our CSP models gives an interesting insight into the way in which the models without strict divergence treat div.
- 3.
See Chap. 9.
- 4.
Because all standard CSP operators other than recursion are fully distributive, we have not enumerated all such laws in this book.
- 5.
In the case of the symmetric operators \( \Box \) and \(\mathop{\mathord{\parallel}}\limits_{X}\) this reduces to 15 essentially different pairings.
- 6.
An alternative is only to have div in those choices with no other members.
- 7.
Note that in some presentations of CSP based on failures models only, this has sometimes been given as the definition or \(\rhd\).
References
Aceto, L., Hennessy, M.: Termination, deadlock and divergence. In: Proceedings of MFPS89. LNCS, vol. 442. Springer, Berlin (1989)
Bergstra, J.A., Klop, J.W.: Process algebra for synchronous communication. Inf. Control 60, 109–137 (1984)
Bergstra, J.A., Klop, J.W.: Algebra for communicating processes with abstraction. Theor. Comput. Sci. 37(1), 77–121 (1985)
Brookes, S.D.: A model for communicating sequential processes. Oxford University D.Phil. thesis (1983) (published as a Carnegie-Mellon University technical report)
Brookes, S.D., Hoare, C.A.R., Roscoe, A.W.: A theory of communicating sequential processes. J. ACM 31(3), 560–599 (1984)
Guessarian, I.: Algebraic Semantics. LNCS, vol. 99. Springer, Berlin (1981)
He Jifeng, Hoare, C.A.R.: From algebra to operational semantics. Inf. Process. Lett. 46, 2 (1993)
He Jifeng, Hoare, C.A.R., Sampaio, A.: Normal form approach to compiler design. Acta Inform. 30, 701–739 (1993)
Hennessy, M.: Algebraic Theory of Processes. MIT Press, Cambridge (1988)
Hinchey, M.G., Jarvis, S.A.: Concurrent Systems: Formal Development in CSP. McGraw-Hill, New York (1995)
Hoare, C.A.R., He Jifeng: Unifying Theories of Programming. Prentice Hall, New York (1998)
Inmos Ltd., occam2 Reference Manual. Prentice Hall, New York (1988)
Jones, C.B., Roscoe, A.W.: Insight, innovation and collaboration. In: Jones, C.B., Roscoe, A.W., Wood, K.R. (eds.) Reflections on the Work of C.A.R. Hoare. Springer, Berlin (2010)
Milner, R.: A Calculus of Communicating Systems. LNCS, vol. 92. Springer, Berlin (1980)
Roscoe, A.W., Hoare, C.A.R.: The laws of occam programming. Theor. Comput. Sci. 60, 177–229 (1988)
van Glabbeek, R.J.: The linear time—branching time spectrum I. In: The Handbook of Process Algebra. Elsevier, Amsterdam (2001)
van Glabbeek, R.J.: The linear time—branching time spectrum II. In: CONCUR (1999)
Author information
Authors and Affiliations
Corresponding author
Rights and permissions
Copyright information
© 2010 Springer-Verlag London Limited
About this chapter
Cite this chapter
Roscoe, A.W. (2010). The Algebra of CSP. In: Understanding Concurrent Systems. Texts in Computer Science. Springer, London. https://doi.org/10.1007/978-1-84882-258-0_13
Download citation
DOI: https://doi.org/10.1007/978-1-84882-258-0_13
Publisher Name: Springer, London
Print ISBN: 978-1-84882-257-3
Online ISBN: 978-1-84882-258-0
eBook Packages: Computer ScienceComputer Science (R0)