Skip to main content

Petri nets, process algebras and concurrent programming languages

  • IV Applications of Elementary Net Systems and Place/Transition Nets
  • Chapter
  • First Online:
Lectures on Petri Nets II: Applications (ACPN 1996)

Part of the book series: Lecture Notes in Computer Science ((LNCS,volume 1492))

Included in the following conference series:

Abstract

This paper discusses issues that arise when process algebras and Petri nets are linked; in particular, operators, compositional ity, recursion, refinement and equivalences. It uses the box algebra in order to show how Petri nets can be manipulated algebraically. Also, the paper shows how other process algebras such as CCS, COSY and CSP can be treated in the same way, how Petri net semantics of concurrent programming languages can be given, and how Petri net methods can be applied to the verification of concurrent algorithms.

This work has been done in cooperation with other people, in particular Javier Esparza, Jon G. Hall and Richard P Hopkins. It has been supported by the Esprit Basic Research Project 3148 DEMON (Design Methods Based on Nets) and Working Group 6067 CALIBAN (Causal Calculi Based on Nets).

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

Access this chapter

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. J. Baeten, WP Weijland: Process Algebra. Cambridge Tracts in Theoretical Computer Science 18 (1990).

    Google Scholar 

  2. E. Best: Representing a Program Invariant as a Linear Invariant in a Petri Net. Bulletin of the European Association of Theoretical Computer Science Vol. 17, 2–11 (1982).

    Google Scholar 

  3. E. Best: Semantics of Sequential and Parallel Programs. Prentice Hall (1996).

    Google Scholar 

  4. E. Best: Partial Order Verification with PEP Proc. POMIV'96, Partial Order Methods in Verification, G. Holzmann, D. Peled, V. Pratt (eds). American Mathematical Society, Series in Discrete Mathematics and Theoretical Computer Science Vol. 29, 305–328 (1996).

    Google Scholar 

  5. E. Best, R. Devillers: Sequential and Concurrent Behaviour in Petri Net Theory. Theoretical Computer Science Vol. 55/1, 87–136 (1988).

    Google Scholar 

  6. E. Best, R. Devillers, J. Esparza: General Refinement and Recursion Operators for the Petri Box Calculus. Springer-Verlag, Lecture Notes in Computer Science Vol. 665, 130–140 (1993).

    Google Scholar 

  7. E. Best, R. Devillers, J.G. Hall: The Petri Box Calculus: a New Causal Algebra with Multilabel Communication. Advances in Petri Nets 1992, G.Rozenberg (ed.), Springer-Verlag, Lecture Notes in Computer Science Vol. 609, 21–69 (1992).

    Google Scholar 

  8. E. Best, R. Devillers, M. Koutny: Petri Net Algebra (Working Title). Manuscript (1997).

    Google Scholar 

  9. E. Best, H. Fleischhack, W. Frączak, R.P. Hopkins, H. Klaudel, E. Pelz: An M-net Semantics of B(PN) 2. Proc. STRICT'95, Berlin, J. Desel (ed.). Springer-Verlag, Workshops in Computing, 85–100 (1995).

    Google Scholar 

  10. E. Best, M. Koutny: Solving Recursive Net Equations. Proc. ICALP-95, Springer-Verlag, Lecture Notes in Computer Science Vol.944, 605–623 (1995).

    Google Scholar 

  11. G.Boudol, I.Castellani: Flow Models of Distributed Computations: Event Structures and Nets. Rapport de Recherche, INRIA, Sophia Antipolis (July 1991).

    Google Scholar 

  12. G. Bruns, J. Esparza: Trapping Mutual Exclusion in the Box Calculus. Theoretical Computer Science Vol. 153/1-2, 95–128 (1995).

    Google Scholar 

  13. P. Degano, R. De Nicola, U. Montanari: A Distributed Operational Semantics for CCS Based on C/E Systems. Acta Informatica Vol. 26, 59–91 (1988).

    Google Scholar 

  14. J. Desel, J. Esparza: Free Choice Petri Nets. Cambridge Tracts in Theoretical Computer Science 40, Cambrige University Press (1995).

    Google Scholar 

  15. R. Devillers: Construction of S-invariants and S-components for Refined Petri Boxes. Proceedings of Petri Nets'93, Chicago, LNCS 691, Springer-Verlag (1993).

    Google Scholar 

  16. R. Devillers: S-invariant Analysis of Recursive Petri Boxes. Acta Informatica Vol. 32, 313–345 (1995).

    Google Scholar 

  17. Cited in: E.W. Dijkstra: Cooperating Sequential Processes. Programming Languages, F. Genuys (ed.), 43–112. Academic Press (1968).

    Google Scholar 

  18. E.W. Dijkstra: A Discipline of Programming. Prentice Hall (1976).

    Google Scholar 

  19. J. Esparza: Model Checking based on Branching Processes. Habilitation, Hildesheim (1993). Published as: Model Checking Using Net Unfoldings. Proc. TAPSOFT'93 (1993), M.C. Gaudel, J.P Jouannaud (eds). Springer-Verlag, LNCS Vol. 668, 613–628 (1993). Full version in Science of Computer Programming Vol. 23, 151–195 (1994).

    Google Scholar 

  20. H.J. Genrich, K. Lautenbach, PS. Thiagarajan: Elements of General Net Theory. Net Theory and Applications, Proc. of the Advanced Course on General Net Theory of Processes and Systems, W. Brauer (ed.). Lecture Notes in Computer Science Vol. 84, Springer-Verlag, 21–163 (1980).

    Google Scholar 

  21. U. Goltz: On Representing CCS Programs by Finite Petri Nets. Proc. MFCS'88, Springer-Verlag, Lecture Notes in Computer Science Vol. 324, 339–350 (1988).

    Google Scholar 

  22. U. Goltz, R. Loogen: A Non-interleaving Semantic Model for Nondeterministic Concurrent Processes. Fundamenta Informaticae Vol. 14/1, 39–73 (1991).

    Google Scholar 

  23. U. Goltz, W. Reisig: The Non-sequential Behaviour of Petri Nets. Information and Control Vol. 57/2-3, 125–147 (1983).

    Google Scholar 

  24. J. Grabowski: On Partial Languages. Fundamenta Informaticae Vol. IV/2, 427–498 (1981).

    Google Scholar 

  25. C.A.R. Hoare: Communicating Sequential Processes. Prentice Hall (1985).

    Google Scholar 

  26. R. Janicki, PE. Lauer: Specification and Analysis of Concurrent Systems — the COSY Approach. Springer-Verlag, EATCS Monographs on Theoretical Computer Science (1992).

    Google Scholar 

  27. K. Jensen: Coloured Petri Nets. Basic Concepts. EATCS Monographs on Theoretical Computer Science, Springer-Verlag (1992).

    Google Scholar 

  28. M. Koutny, and E. Best: Operational Semantics for the Box Algebra. Hildesheimer Informatikbericht Nr.33/95 (October 1995). To appear in Theoretical Computer Science (1998).

    Google Scholar 

  29. A. Mazurkiewicz: Trace Theory. In: Petri Nets: Applications and Relationships to Other Models of Concurrency, Advances in Petri Nets 1986, Part II, W. Brauer, W. Reisig, G. Rozenberg (eds.), Springer-Verlag, Lecture Notes in Computer Science Vol. 255, 279–324 (1987).

    Google Scholar 

  30. K.L. McMillan: Using Unfoldings to Avoid the State Explosion Problem in the Verification of Asynchronous Circuits. Proc. 4th Workshop on Computer Aided verification, 164–174 (1992).

    Google Scholar 

  31. R. Milner: A Calculus of Communicating Systems. Springer-Verlag, Lecture Notes in Computer Science Vol. 92 (1980).

    Google Scholar 

  32. R. Milner: Communication and Concurrency. Prentice Hall (1989).

    Google Scholar 

  33. J.H. Morris: A Starvation-free Solution to the Mutual Exclusion Problem. Information Processing Letters Vol. 8/2, 76–80 (1979).

    Google Scholar 

  34. T. Murata: Petri Nets: Properties, Analysis and Applications. Proc. IEEE Vol. 77/4, 541–580 (1989).

    Google Scholar 

  35. E.-R. Olderog: Nets, Terms and Formulas. Cambridge Tracts in Theoretical Computer Science 23 (1991).

    Google Scholar 

  36. S.S. Owicki, D. Gries: An Axiomatic Proof Technique for Parallel Programs. Acta Informatica Vol. 6, 319–340 (1976).

    Google Scholar 

  37. PEP. the home page of PEP (a Programming Environment Based of Petri Nets) is http://www.informatik.uni-hildesheim.de/ pep/HomePage.html.

    Google Scholar 

  38. G.L. Peterson: Myths about the Mutual Exclusion Problem. Information Processing Letters Vol. 12/3, 115–116 (1981).

    Google Scholar 

  39. G. Plotkin: A Structural Approach to Operational Semantics. DAIMI Technical Report FN-19, Computer Science Department, University of Århus (1981).

    Google Scholar 

  40. W. Reisig: Petri Nets. An Introduction. EATCS Monographs on Theoretical Computer Science Vol. 3, Springer-Verlag (1985).

    Google Scholar 

  41. W. Reisig: Modelling and Verification of Distributed Algorithms. Proc. CONCUR'96, U. Montanari, V. Sassone (eds), Springer-Verlag, LNCS Vol. 1119, 579–595 (1996).

    Google Scholar 

  42. P.H. Starke: Processes in Petri Nets. Elektronische Informationsverarbeitung und Kybernetik Vol. 17/8-9, 389–416 (1981).

    Google Scholar 

  43. D. Taubner: Finite Representation of CCS and TCSP Programs by Automata and Petri Nets. Springer-Verlag, Lecture Notes in Computer Science Vol. 369 (1989).

    Google Scholar 

  44. B. Teßmer: S-und T-Invarianten zum Nachweis von Eigenschaften paralleler Algorithmen. Diplomarbeit (Januar 1996).

    Google Scholar 

  45. W. Vogler: Partial Words versus Processes: a Short Comparison. Advances in Petri Nets 1992, G.Rozenberg (ed.). Springer-Verlag, Lecture Notes in Computer Science Vol. 609, 292–303 (1992).

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Wolfgang Reisig Grzegorz Rozenberg

Rights and permissions

Reprints and permissions

Copyright information

© 1998 Springer-Verlag Berlin Heidelberg

About this chapter

Cite this chapter

Best, E., Devillers, R., Koutny, M. (1998). Petri nets, process algebras and concurrent programming languages. In: Reisig, W., Rozenberg, G. (eds) Lectures on Petri Nets II: Applications. ACPN 1996. Lecture Notes in Computer Science, vol 1492. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-65307-4_46

Download citation

  • DOI: https://doi.org/10.1007/3-540-65307-4_46

  • Published:

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-65307-3

  • Online ISBN: 978-3-540-49441-6

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics