Skip to main content

Algebraic Formalisms

  • Chapter
  • First Online:
Modeling Time in Computing

Abstract

In this chapter, we describe the fundamental features of process algebras. Process algebras are essentially operational notations that also support some features typical of descriptive notations, such as the possibility to reason about system specifications in a deductive fashion. The presentation in the chapter targets Communicating Sequential Processes (CSP), a popular process algebra, and gradually introduces features that affect its modeling capabilities, with the usual focus on timing behavior according to the dimensions introduced in Chap. 3. The presentation starts with classic CSP and their trace semantics, continues by analyzing finer-grained semantics (such as those based on transition systems), then discusses extensions of CSP supporting the description of quantitative time and of probabilistic behavior, and concludes with a brief overview of verification tools for CSP.

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

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 39.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 54.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info
Hardcover Book
USD 54.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

Institutional subscriptions

Notes

  1. 1.

    The states of the transition systems in the current chapter are not enclosed in circles to accommodate wide labels with process definitions.

  2. 2.

    A congruence is an equivalence relation that is preserved by some operations; for example, if X and Y are equivalent (\(X \equiv Y\)), then the maps of X and Y under any function f are also equivalent (\(f(X) \equiv f(Y )\)).

References

  1. Baeten, J.C.M.: The total order assumption. In: Purushothaman, S., Zwarico, A.E. (eds.) Proceedings of the First North American Process Algebra Workshop (NAPAW’92), Workshops in Computing, pp. 231–240. Springer, London/New York (1993)

    Google Scholar 

  2. Baeten, J.C.M.: Over thirty years of process algebra: past, present and future. In: Aceto, L., Ésik, Z., Fokkink, W.J., Ingólfsdóttir, A. (eds.) Process Algebra: Open Problems and Future Directions. BRICS Notes Series, vol. NS–03–3, pp. 7–12 (2003)

    Google Scholar 

  3. Baeten, J.C.M.: A brief history of process algebra. Tech. Rep. CSR 04–02, Department of Mathematics and Computer Science, Technische Universiteit Eindhoven (2004)

    Google Scholar 

  4. Baeten, J.C.M., Basten, T., Reniers, M.A. (eds.): Process Algebra: Equational Theories of Communicating Processes. Cambridge University Press, Cambridge (2009)

    Google Scholar 

  5. Baeten, J.C.M., Middelburg, C.A.: Process Algebra with Timing. Springer, Berlin/New York (2010)

    Google Scholar 

  6. Baeten, J.C.M., Weijland, W.P.: Process Algebra. Cambridge Tracts in Theoretical Computer Science, vol. 18. Cambridge University Press, Cambridge/New York (1990)

    Google Scholar 

  7. Bekič, H.: Towards a mathematical theory of processes. Tech. Rep. 25.125, IBM Laboratory, Wien (1971). Published in [8]

    Google Scholar 

  8. Bekič, H.: Programming languages and their definition. In: Jones, C.B. (ed.) Selected Papers by Hans Bekič. Lecture Notes in Computer Science, vol. 177. Springer (1984)

    Google Scholar 

  9. Bergstra, J.A., Klop, J.W.: Fixed point semantics in process algebra. Tech. Rep. IW 208, Mathematical Center, Amsterdam (1982)

    Google Scholar 

  10. Bergstra, J.A., Klop, J.W.: Process algebra for synchronous communication. Inf. Control 60(1–3), 109–137 (1984)

    Google Scholar 

  11. Bergstra, J.A., Ponse, A., Smolka, S.A. (eds.): Handbook of Process Algebra. Elsevier, Amsterdam/New York (2001)

    Google Scholar 

  12. Bolognesi, T., Lucidi, F.: Timed process algebras with urgent interactions and a unique powerful binary operator. In: de Bakker, J.W., Huizing, C., de Roever, W.P., Rozenberg, G. (eds.) Real-Time: Theory in Practice, REX Workshop. Lecture Notes in Computer Science, vol. 600, pp. 124–148. Springer, Berlin/New York (1991)

    Google Scholar 

  13. Bowman, H., Gomez, R. (eds.): Concurrency Theory: Calculi and Automata for Modelling Untimed and Timed Concurrent Systems. Springer, London (2010)

    Google Scholar 

  14. Brinksma, E. (ed.): Information Processing Systems – Open Systems Interconnection – LOTOS – A Formal Description Technique Based on the Temporal Ordering of Observational Behaviour. ISO (1989). ISO 8807:1989

    Google Scholar 

  15. Brookes, S.D., Hoare, C.A.R., Roscoe, A.W.: A theory of communicating sequential processes. J. ACM 31(3), 560–599 (1984)

    Google Scholar 

  16. Cadp: Construction and analysis of distributed processes. http://www.inrialpes.fr/vasy/cadp/

  17. Clark, A., Gilmore, S., Hillston, J., Tribastone, M.: Stochastic process algebras. In: Bernardo, M., Hillston, J. (eds.) Formal Methods for Performance Evaluation. Lecture Notes in Computer Science, vol. 4486, pp. 132–179. Springer, Berlin/Heidelberg/New York (2007)

    Google Scholar 

  18. D’Argenio, P.R., Katoen, J.P.: A theory of stochastic systems. part II: process algebra. Inf. Comput. 203(1), 39–74 (2005)

    Google Scholar 

  19. Dijkstra, E.W.: Guarded commands, nondeterminacy and formal derivation of programs. Commun. ACM 18(8), 453–457 (1975)

    Google Scholar 

  20. Dummit, D.S., Foote, R.M.: Abstract Algebra, 3rd edn. Wiley, New York (2003)

    Google Scholar 

  21. van Eijk, P.H.J., Vissers, C.A., Diaz, M. (eds.): The Formal Description Technique LOTOS. Elsevier, Amsterdam (1989)

    Google Scholar 

  22. FDR2 by formal systems (Europe). http://www.fsel.com

  23. Feller, W.: An Introduction to Probability Theory and Its Applications, 3rd edn. Wiley, New York (1968)

    Google Scholar 

  24. Fokkink, W.: Introduction to Process Algebra. Springer, Berlin/New York (2000)

    Google Scholar 

  25. Hansson, H., Jonsson, B.: A calculus for communicating systems with time and probabitilies. In: IEEE Real-Time Systems Symposium, Lake Buena Vista, pp. 278–287 (1990)

    Google Scholar 

  26. Hennessy, M.: Algebraic Theory of Processes. MIT, Cambridge (1988)

    Google Scholar 

  27. Hillston, J.: A Compositional Approach to Performance Modelling. Cambridge University Press, Cambridge/New York (1996). Available online at http://www.dcs.ed.ac.uk/pepa/book.pdf

  28. Hoare, C.A.R.: Communicating sequential processes. Commun. ACM 21(8), 666—677 (1978)

    Google Scholar 

  29. Hoare, C.A.R.: Communicating Sequential Processes. Prentice Hall, Englewood Cliffs (1985). Updated version available online at http://www.usingcsp.com/

  30. LTSA: Labelled transition system analyser. http://www.doc.ic.ac.uk/ltsa/

  31. Magee, J., Kramer, J.: Concurrency: State Models and Java Programs. Wiley, Chichester/ New York (1999)

    Google Scholar 

  32. Milner, R.: A Calculus of Communicating Systems. Lecture Notes in Computer Science, vol. 92. Springer, Berlin/New York (1980)

    Google Scholar 

  33. Milner, R.: Communication and Concurrency. Prentice Hall, New York (1989)

    Google Scholar 

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

    Google Scholar 

  35. Nicollin, X., Sifakis, J.: An overview and synthesis of timed process algebras. In: Larsen, K.G., Skou, A. (eds.) Proceedings of the 3rd International Workshop on Computer Aided Verification (CAV’91). Lecture Notes in Computer Science, vol. 575, pp. 376–398. Springer, Berlin (1991)

    Google Scholar 

  36. The Occam language. http://www.wotug.org/occam/

  37. Ouaknine, J.: Digitisation and full abstraction for dense-time model checking. In: Katoen, J.P., Stevens, P. (eds.) Proceedings of the 8th International Conference on Tools and Algorithms for the Construction and Analysis of Systems (TACAS’02), Grenoble. Lecture Notes in Computer Science, vol. 2280, pp. 37–51. Springer (2002)

    Google Scholar 

  38. Ouaknine, J., Schneider, S.: Timed CSP: a retrospective. Electron. Notes Theor. Comput. Sci. 162, 273–276 (2006)

    Google Scholar 

  39. Ouaknine, J., Worrell, J.: Timed CSP = closed timed safety automata. Electron. Notes Theor. Comput. Sci. 68(2), 142–159 (2002)

    Google Scholar 

  40. Ouaknine, J., Worrell, J.: Timed CSP = closed timed epsilon-automata. Nord. J. Comput. 10(2), 99–133 (2003)

    Google Scholar 

  41. PAT: process analysis toolkit. http://www.comp.nus.edu.sg/~pat/

  42. Pinter, C.C.: A Book of Abstract Algebra, 2nd edn. Dover, Mineola (2010)

    Google Scholar 

  43. Roscoe, A.W.: The Theory and Practice of Concurrency. Prentice-Hall, New York (1997)

    Google Scholar 

  44. Schneider, S.: Concurrent and Real-time Systems: The CSP Approach. Wiley, New York/ Chichester (1999). Available online at http://www.cs.rhul.ac.uk/books/concurrency/

  45. Schneider, S.: Concurrent and Real-Time Systems: The CSP Approach. Wiley, Chichester/ New York (2000)

    Google Scholar 

  46. Seidel, K.: Probabilistic communicating processes. Theor. Comput. Sci. 152(2), 219–249 (1995)

    Google Scholar 

  47. Shiryaev, A.N.: Probability, 2nd edn. Springer, Heidelberg (1995)

    Google Scholar 

  48. Ulidowski, I., Yuen, S.: Extending process languages with time. In: Johnson, M. (ed.) Proceedings of the 6th International Conference on Algebraic Methodology and Software Technology (AMAST’97), Sydney. Lecture Notes in Computer Science, vol. 1349, pp. 524–538. Springer (1997)

    Google Scholar 

  49. Varadhan, S.R.S.: Probability Theory. Courant Institute of Mathematical Sciences, New York (2001)

    Google Scholar 

  50. Vissers, C.A., Scollo, G., van Sinderen, M., Brinksma, E.: Specification styles in distributed systems design and verification. Theor. Comput. Sci. 89(1), 179–206 (1991)

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Rights and permissions

Reprints and permissions

Copyright information

© 2012 Springer-Verlag Berlin Heidelberg

About this chapter

Cite this chapter

Furia, C.A., Mandrioli, D., Morzenti, A., Rossi, M. (2012). Algebraic Formalisms. In: Modeling Time in Computing. Monographs in Theoretical Computer Science. An EATCS Series. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-32332-4_10

Download citation

  • DOI: https://doi.org/10.1007/978-3-642-32332-4_10

  • Published:

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-642-32331-7

  • Online ISBN: 978-3-642-32332-4

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics