Abstract
We consider CSP from the point of view of the algebraic theory of effects, which classifies operations as effect constructors or effect deconstructors; it also provides a link with functional programming, being a refinement of Moggi’s seminal monadic point of view. There is a natural algebraic theory of the constructors whose free algebra functor is Moggi’s monad; we illustrate this by characterising free and initial algebras in terms of two versions of the stable failures model of CSP, one more general than the other. Deconstructors are dealt with as homomorphisms to (possibly non-free) algebras. One can view CSP’s action and choice operators as constructors and the rest, such as concealment and concurrency, as deconstructors. Carrying this programme out results in taking deterministic external choice as constructor rather than general external choice. However, binary deconstructors, such as the CSP concurrency operator, provide unresolved difficulties. We conclude by presenting a combination of CSP with Moggi’s computational λ-calculus, in which the operators, including concurrency, are polymorphic. While the paper mainly concerns CSP, it ought to be possible to carry over similar ideas to other process calculi.
This work was done with the support of a Royal Society-Wolfson Award.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Similar content being viewed by others
References
Abadi, M., Plotkin, G.D.: A model of cooperative threads. In: Shao, Z., Pierce, B.C. (eds.), Proc. POPL 2009. ACM Press, pp. 29 40 (2009)
Abramsky, S., Gabbay, D.M., Maibaum, T.S.E. (eds.), Handbook of Logic in Computer Science (Vol. 1), Background: Mathematical Structures, Oxford University Press (1995)
Benton, N., Hughes, J., Moggi, E.: Monads and effects. Proc. APPSEM 2000, LNCS 2395, pp. 42 122, Springer (2002)
Bergstra, J.A., Klop, J.W.: Algebra of communicating processes with abstraction. Theor. Comput. Sci. 37, pp. 77 121 (1985)
Bergstra, J.A., Klop, J.W.: Algebra of communicating processes. In: de Bakker, J.W., Hazewinkel, M., Lenstra, J.K. (eds.), Proc. of the CWI Symp. Math. and Comp. Sci. pp. 89 138, North-Holland (1986)
Bergstra, J.A., Klop, J.W., Olderog, E.-R.: Failures without chaos: a new process semantics for fair abstraction. In: Wirsing, M. (ed.), Proc. of the 3rd IFIP WG 2.2 working conference on Formal Description of Programming Concepts. pp. 77 103, North-Holland (1987)
Bloom, S.L.: Varieties of ordered algebras. J. Comput. Syst. Sci., 13(2):200 212 (1976)
Borceux, F.: Handbook of Categorical Algebra 2, Encyclopedia of Mathematics and Its Applications 51. Cambridge University Press (1994)
Brookes, S.D., Hoare, C.A.R., Roscoe, A.W.: A theory of communicating sequential processes. J. ACM 31(3):560 599 (1984)
De Nicola, R.: Two complete axiom systems for a theory of communicating sequential processes. Inform. Control 64, pp. 136 172 (1985)
Ebrahimi-Fard, K., Guo, L.: Rota-Baxter algebras and dendriform algebras. J. Pure Appl. Algebra 212(2):320 33 (2008)
Gierz, G., Hofmann, K.H., Keimel, K., Lawson, J.D., Mislove, M., Scott, D.S.: Continuous Lattices and Domains, Encyclopedia of Mathematics and its Applications 93. Cambridge University Press (2003)
Hoare, C.A.R.: Communicating Sequential Processes. Prentice-Hall (1985)
Hyland, J.M.E., Plotkin, G.D., Power, A.J.: Combining effects: sum and tensor. In: Artemov, S., Mislove, M. (eds.), Clifford Lectures and the Mathematical Foundations of Programming Semantics. Theor. Comput. Sci. 357(1 3):70 99 (2006)
Keimel, K., Plotkin, G.D.: Predicate transformers for extended probability and non-determinism. Math. Struct. Comput. Sci. 19(3):501 539. Cambridge University Press (2009)
Klin, B., Sassone, V.: Structural operational semantics for stochastic process calculi. In: Amadio, R.M. (ed.), Proc. 11th. FoSSaCS. LNCS 4962, pp. 428 442, Springer (2008)
Milner, A.J.R.G.: A Calculus of Communicating Systems. Springer (1980)
Moggi, E.: Computational lambda-calculus and monads. Proc. 3rd. LICS, pp. 14 23, IEEE Press (1989)
Moggi, E.: Notions of computation and monads. Inf. Comp. 93(1):55 92 (1991)
Ouaknine, J., Schneider, S.: Timed CSP: a retrospective, Proceedings of the Workshop “Essays on Algebraic Process Calculi” (APC 25), Electr. Notes Theor. Comput. Sci., 162, pp. 273 276 (2006)
Plotkin, G.D.: Some varieties of equational logic. Essays Dedicated to Joseph A. Goguen. In: Futatsugi, K., Jouannaud, J.-P., Meseguer, J. (eds.), LNCS 4060, pp. 150 156, Springer (2006)
Plotkin, G.D., Power, A.J.: Notions of computation determine monads, Proc. 5th. FoSSaCS. LNCS 2303, pp. 342 356, Springer (2002)
Plotkin, G.D., Power, A.J.: Computational effects and operations: an overview. In: Escardó, M., Jung, A. (eds.), Proc. Workshop on Domains VI. Electr. Notes Theor. Comput. Sci. 73, pp. 149 163, Elsevier (2004)
Plotkin, G.D., Pretnar, M.: A logic for algebraic effects. Proc. 23rd. LICS, pp. 118 129, IEEE Press (2008)
Plotkin, G.D., Pretnar, M.: Handlers of algebraic effects. Proc. 18th. ESOP, pp. 80 94 (2009)
Priami, C.: Stochastic pi-calculus. Comput. J. 38 (7):578 589 (1995)
Reed, G.M., Roscoe, A.W.: The timed failures-stability model for CSP. Theor. Comput. Sci. 211(1 2):85 127 (1999)
Roscoe, A.W.: Model-checking CSP. In: Roscoe, A.W. (ed.), A Classical Mind: Essays in Honour of Hoare, C.A.R., pp. 353 337, Prentice-Hall (1994)
Roscoe, A.W.: The Theory and Practice of Concurrency. Prentice Hall (1998)
Sangiorgi, D., Walker, D.: The π-Calculus: A Theory of Mobile Processes. Cambridge University Press (2003)
Scattergood, B.: The Semantics and Implementation of Machine-Readable CSP. D.Phil Thesis, Oxford University (1998)
Schröder, M., Simpson, A.: Probabilistic observations and valuations (extended abstract). Electr. Notes Theor. Comput. Sci. 155, pp. 605 615 (2006)
Stark, I.: Free-algebra models for the pi-calculus. Theor. Comput. Sci. 390(2 3):248 270 (2008)
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2010 Springer London
About this chapter
Cite this chapter
van Glabbeek, R., Plotkin, G. (2010). On CSP and the Algebraic Theory of Effects. In: Roscoe, A., Jones, C., Wood, K. (eds) Reflections on the Work of C.A.R. Hoare. Springer, London. https://doi.org/10.1007/978-1-84882-912-1_15
Download citation
DOI: https://doi.org/10.1007/978-1-84882-912-1_15
Published:
Publisher Name: Springer, London
Print ISBN: 978-1-84882-911-4
Online ISBN: 978-1-84882-912-1
eBook Packages: Computer ScienceComputer Science (R0)