Skip to main content

Unfolding CSP

  • Chapter
  • First Online:
  • 587 Accesses

Abstract

This paper demonstrates that a wide range of the CSP operators, in particular parallel composition, hiding, general choice, interleaving, and the non-deterministic OR, can be represented by confluent unfolding to a normal form. The relevant normal form is an enrichment of the CSP choice construction by the inclusion of non-determinism and silent actions. It is demonstrated that the majority of the equational laws presented by Hoare for these operators are valid not only for the failures equivalence but even for strong bisimilarity. This work is a prelude to embedding CSP in the bigraph model, a recent generic model for ubiquitous computing in which other process calculi have been faithfully embedded. The authors hope by this means to elucidate the differences and similarities between CSP and other calculi. The present paper presents the main ideas of the embedding in the formalism of CSP itself, and makes no use of bigraphs in doing so.

Appreciation from the second author Tony Hoare and I have exchanged ideas on concurrent processes for three decades. To a sufficiently distant observer it has seemed that we were doing the same thing, and that therefore we should not have made it look different. A closer view shows this to be false. Complementary things, yes; and both have been enriched by the cross-fertilisation.

A little history shows something of these different approaches. Around 1979 we first discovered our complementary interests in concurrency. Tony at first expressed his ideas through the medium of a programming language [6], and I through a prototypical algebraic theory [8]. The difference became plainer as time went on. Tony was keen to find a single formalism in which specifications of concurrent systems could be refined into programs. I, on the other hand, was keen to find a mathematical concept of process that could stand in analogy with the familiar notion of (single valued) function, and I was happy that specification should be done in an associated logic. We enjoyed discussing these things. I recall one discussion at a blackboard (or was it a whiteboard?) where Tony hinted to me his first ideas about failures semantics.

The present short paper, in honour of Tony and continuing our long, friendly and sometimes rivalrous collaboration, is another step towards harmonising our approaches.

This is a preview of subscription content, log in via an institution.

Buying options

Chapter
USD   29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD   129.00
Price excludes VAT (USA)
  • Available as EPUB and PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD   169.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info
Hardcover Book
USD   169.99
Price excludes VAT (USA)
  • Durable hardcover edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Learn about institutional subscriptions

Notes

  1. 1.

    Roscoe’s normal form also caters explicitly for divergence; this lies beyond the scope of our paper.

  2. 2.

    For simplicity, we assume alphabets to be finite. Later work may relax this restriction.

  3. 3.

    Here again, it may be possible to remove the finiteness constraint for some purposes.

References

  1. Aczel, P.: Non-well-founded Sets, CSLI Lecture Notes 14. Center for the Study of Language and Information, Stanford University, Stanford, CA (1988).

    Google Scholar 

  2. Baeten, J., Weijland, W.P.: Process Algebra Cambridge University Press, (1990).

    Google Scholar 

  3. Brookes, S., Roscoe, A.W., Walker, D.J.: An operational semantics for CSP (Manuscript). Available from http://www.cs.cmu.edu/afs/cs.cmu.edu/user/brookes/www/papers/OperationalSemanticsCSP.pdf (1988).

    Google Scholar 

  4. Dershowitz, N., Manna, Z.: Proving termination with multiset orderings. Commun. ACM 22(8), 465–476 (1979).

    Article  MATH  MathSciNet  Google Scholar 

  5. De Nicola, R.: Two complete axiom systems for a theory of communicating sequential processes. Inform. Control, 64, 136–172 (1985).

    Article  MATH  Google Scholar 

  6. Hoare, C.A.R.: Communicating sequential processes. Commun. ACM 21(8), 666–777 (1978).

    Article  MATH  MathSciNet  Google Scholar 

  7. Hoare, C.A.R.: Communicating sequential processes. Prentice Hall (1985).

    MATH  Google Scholar 

  8. Milner, R.: Synthesis of Communicating Behaviour. Proc. 7th Symposium on Mathematical Foundations of Computer Science, Lecture Notes in Computer Science, vol. 64, Springer, Zakopane, Poland (1978).

    Google Scholar 

  9. Milner, R.: A Calculus of Communicating Systems. Lecture Notes in Computer Science, vol 92, Springer (1980).

    Book  MATH  Google Scholar 

  10. Milner, R.: Communicating and Mobile Systems: the π-Calculus. Cambridge University Press (1999).

    Google Scholar 

  11. Milner, R.: The Space and Motion of Communicating Agents. Cambridge University Press (2009).

    Book  MATH  Google Scholar 

  12. Park, D.: Concurrency and Automata on Infinite Sequences Proc. 5th GI-Conference on Theoretical Computer Science, Karlsruhe, Germany, March 23–25, Lecture Notes in Computer Science, vol. 104, Springer (1980).

    Google Scholar 

  13. Plotkin, G.D.: A structural approach to operational semantics. Report DAIMI-FN-19, Computer Science Department, Århus University, Denmark (1981). Reprinted as [14].

    Google Scholar 

  14. Plotkin, G.D.: A structural approach to operational semantics. J. Logic Algebra. Program. 60–61, 17–139 (2004).

    MathSciNet  Google Scholar 

  15. Roscoe, A.W.: The Theory and Practice of Concurrency. Prentice Hall (1998); revised (2005).

    Google Scholar 

  16. Roscoe, A.W.: On the expressiveness of CSP, Submitted for publication.

    Google Scholar 

  17. TeReSe, Term Rewriting Systems. Cambridge Tracts in Theoretical Computer Science 55. Cambridge University Press (2003).

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Mikkel Bundgaard .

Editor information

Editors and Affiliations

Additional information

Dedicated to Sir Tony Hoare for his 75th birthday

Rights and permissions

Reprints and permissions

Copyright information

© 2010 Springer London

About this chapter

Cite this chapter

Bundgaard, M., Milner, R. (2010). Unfolding CSP. 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_10

Download citation

  • DOI: https://doi.org/10.1007/978-1-84882-912-1_10

  • 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)

Publish with us

Policies and ethics