Functional Languages in Design of Coloured Petri Nets Models

  • Štefan KorečkoEmail author
Part of the Lecture Notes in Computer Science book series (LNCS, volume 10094)


Coloured Petri nets are a formal method that allows to create sophisticated event-driven models. In addition, there exists a software tool, called CPN Tools, which provides a support for creation, simulation and state space-based verification of CPN models. An interesting feature of CPN Tools is that it uses CPN ML, a slightly modified version of the SML functional language, for data manipulation. In this chapter we describe basic concepts of Coloured Petri nets (CPN), SML and CPN ML and by means of an example illustrate how CPN ML can be used to build a concrete, timed CPN model from an abstract, low-level Petri net model in such a way that the structure of the abstract model is preserved. We also explore possibilities of already existing SML code utilization in CPN models.


  1. 1.
    Desel, J., Reisig, W.: Place/transition Petri Nets. In: Reisig, W., Rozenberg, G. (eds.) ACPN 1996. LNCS, vol. 1491, pp. 122–173. Springer, Heidelberg (1998). Scholar
  2. 2.
    Gilmore, S.: Programming in standard Ml 1997: a tutorial introduction. Technical report, Laboratory for Foundations of Computer Science, The University of Edinburgh, January 2003.
  3. 3.
    Harper, R.: Programming in Standard ML. Carnegie Mellon University, Pittsburgh (2011).
  4. 4.
    Jensen, K.: Coloured Petri Nets: Basic Concepts, Analysis Methods and Practical Use, vol. 1. Springer, Heidelberg (1997)CrossRefGoogle Scholar
  5. 5.
    Jensen, K.: Coloured Petri Nets: Basic Concepts, Analysis Methods and Practical Use, vol. 2. Springer, Heidelberg (1997)CrossRefGoogle Scholar
  6. 6.
    Jensen, K.: An introduction to the theoretical aspects of coloured Petri Nets. In: de Bakker, J.W., de Roever, W.-P., Rozenberg, G. (eds.) REX 1993. LNCS, vol. 803, pp. 230–272. Springer, Heidelberg (1994). Scholar
  7. 7.
    Jensen, K.: Coloured Petri Nets - Basic Concepts, Analysis Methods and Practical Use, vol. 3. Springer, Heidelberg (1997). Scholar
  8. 8.
    Jensen, K., Kristensen, L.M.: Coloured Petri Nets: Modelling and Validation of Concurrent Systems. Springer, Heidelberg (2009). Scholar
  9. 9.
    Korečko, Š., Sobota, B.: Building parallel raytracing simulation model with Petri nets and B-method. In: Proceedings of Eurosim 2010, Praha, Česká republika (2010)Google Scholar
  10. 10.
    Korečko, Š., Sobota, B.: Using coloured petri nets for design of parallel raytracing environment. Acta Universitatis Sapientiae. Informatica 2(1), 28–39 (2010)Google Scholar
  11. 11.
    Milner, R., Tofte, M., Macqueen, D.: The Definition of Standard ML. MIT Press, Cambridge (1997). Scholar
  12. 12.
    Petri, C.A., Reisig, W.: Petri net. Scholarpedia 3(4), 6477 (2008). Scholar
  13. 13.
    Stansifer, R.: The SML program: heap.sml (2015).
  14. 14.
    Ullman, J.D.: Elements of ML Programming, ML97 Edition, 2nd edn. Prentice Hall, Upper Saddle River (1998)Google Scholar
  15. 15.
    CPN Tools (2015).
  16. 16.
    MLton (2015).
  17. 17.
    Poly/ML (2015).
  18. 18.
    Standard ML Basis Library (2015).
  19. 19.
    Standard ML of New Jersey (2015).

Copyright information

© Springer Nature Switzerland AG 2019

Authors and Affiliations

  1. 1.Department of Computers and Informatics, Faculty of Electrical Engineering and InformaticsTechnical University of KošiceKošiceSlovakia

Personalised recommendations