Modeling Quantitative Aspects of Concurrent Systems Using Weighted Petri Net Transducers

  • Robert LorenzEmail author
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 9115)


In this paper we present a basic framework for weighted Petri net transducers (PNTs) for the weighted translation of partial languages (consisting of partial words) as a natural generalisation of weighted finite state transducers (FSTs). Weights may represent cost, time consumption, reward, reliability or probability of a transition execution, i.e. PNTs may serve as a general model to consider such quantitative aspects of process calculi represented by arbitrary partial words.

Concerning weights, we use the algebraic structure of concurrent semirings which is based on bisemirings and induces a natural order on its elements. Using the operations of this algebra, the weight of general partial words can be defined in a natural way and turns out to be compositional.

As desirable, complex PNTs can be composed from simple PNTs through composition operations like union, product, closure, parallel product and also language composition, lifting standard composition operations on FSTs. Composed PNTs yield a compositional computation of weights, except for the case of language composition.

For the quick construction of PNTs and evaluation of PNT-algorithms we developed the tool \(\text {PNT}_{\varepsilon }^{\mathrm{ooL}}\). \(\text {PNT}_{\varepsilon }^{\mathrm{ooL}}\) is a python library based on the framework SNAKES allowing for the modular construction of PNTs through composition operations, the visualization of PNTs, and the simulation of constructed PNTs. We present basic simulation algorithms and use PNTool to show illustrating examples.


Petri net Petri net transducer Weighted transducer Labelled partial order Weighted labelled partial order Partial language Semiring Bisemiring Concurrent semiring Cleanness 


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    Allauzen, C., Riley, M.D., Schalkwyk, J., Skut, W., Mohri, M.: OpenFst: a general and efficient weighted finite-state transducer library. In: Holub, J., Žd’árek, J. (eds.) CIAA 2007. LNCS, vol. 4783, pp. 11–23. Springer, Heidelberg (2007) CrossRefGoogle Scholar
  2. 2.
    Aéma, P., Balbo, G. (eds.): Application and Theory of Petri Nets 1997. Lecture Notes in Computer Science, vol. 1248. Springer, Heidelberg (1997) Google Scholar
  3. 3.
    Bergenthum, R., Mauser, S., Lorenz, R., Juhás, G.: Unfolding Semantics of Petri Nets Based on Token Flows. Fundam. Inform. 94, 331–360 (2009)Google Scholar
  4. 4.
    Best, E., Devillers, R.R., Hall, J.G.: The Box Calculus: a New Causal Algebra with Multi-label Communication. In: Rozenberg [30], pp. 21–69Google Scholar
  5. 5.
    Boudol, G., Castellani, I.: On the semantics of concurrency: partial orders and transition systems. In: Ehrig, H., Kowalski, R.A., Levi, G., Montanari, U. (eds.) TAPSOFT ’87. LNCS, vol. 249. Springer, Heidelberg (1987) Google Scholar
  6. 6.
    Chothia, T., Klejin, J.: Q-Automata: Modelling the Resource Usage of Concurrent Components. Electronic Notes in Theoretical Computer Science 175(175), 153–167 (2007)CrossRefGoogle Scholar
  7. 7.
    Droste, M., Kuich, W.: Semirings and Formal Power Series. In: Droste et al. [8], ch. 1, pp. 3–28 (2009)Google Scholar
  8. 8.
    Droste, M., Kuich, W., Vogler, H. (eds.): Handbook of Weighted Automata. Monographs in Theoretical Computer Science. Springer (2009)Google Scholar
  9. 9.
    Esposito, A., Esposito, A.M., Vinciarelli, A., Hoffmann, R., Müller, V.C. (eds.): Cognitive Behavioural Systems. LNCS, vol. 7403. Springer, Heidelberg (2012) Google Scholar
  10. 10.
    Fichtner, I., Kuske, D., Meinecke, I.: Traces, series-parallel posets, and Ppictures: a weighted study. In: Droste et al. [8], ch. 10, pp. 405–452 (2009)Google Scholar
  11. 11.
    Fülöp, Z., Vogler, H.: Weighted tree automata and tree transducers. In: Droste et al. [8], ch. 9, pp. 313–404 (2009)Google Scholar
  12. 12.
    Gansner, E.R., North, S.C.: An open graph visualization system and its applications to software engineering. SOFTWARE - PRACTICE AND EXPERIENCE 30(11), 1203–1233 (2000)zbMATHCrossRefGoogle Scholar
  13. 13.
    Gischer, J.L.: The Equational Theory of Pomsets. Theoretical Computer Science 61, 199–224 (1988)zbMATHMathSciNetCrossRefGoogle Scholar
  14. 14.
    Grabowski, J.: On Partial Languages. Fundamenta Informaticae 4(2), 428–498 (1981)MathSciNetGoogle Scholar
  15. 15.
    Hack, M.: Petri net languages. Technical Report Memo 124, computation structures group, massachusetts institute of technology (1975)Google Scholar
  16. 16.
    Hoare, T., Möller, B., Struth, G., Wehrman, I.: Concurrent Kleene Algebra and its Foundations. The Journal of Logic and Algebraic Programming 80, 266–296 (2011)zbMATHMathSciNetCrossRefGoogle Scholar
  17. 17.
  18. 18.
    Huber, M., Lorenz, R.: Constructing Petri Net Transducers with PNTool. In: Moldt, D., Rölke, H. (eds) Proceedings of the International Workshop on Petri Nets and Software Engineering, Co-located with 35th International Conference on Application and Theory of Petri Nets and Concurrency (PetriNets 2014) and 14th International Conference on Application of Concurrency to System Design (ACSD 2014), Tunis, Tunisia, June 23–24, 2014, vol. 1160 of CEUR Workshop Proceedings, pp. 339–341. (2014)Google Scholar
  19. 19.
    Jensen, K.: Coloured Petri Nets - Basic Concepts, Analysis Methods and Practical Use, vol. 1 of EATCS Monographs in Theoretical Computer Science. Springer (1992)Google Scholar
  20. 20.
    Kuske, D., Meinecke, I.: Branching Automata with Costs - A Way of Reflecting Parallelism in Costs. Theoretical Computer Science 328, 53–75 (2004)zbMATHMathSciNetCrossRefGoogle Scholar
  21. 21.
    Lorenz, R., Desel, J., Juhás, G.: Models from Scenarios. T Petri Nets and Other Models of Concurrency 7, 314–371 (2013)Google Scholar
  22. 22.
    Lorenz, R., Huber, M.: Petri Net Transducers in Semantic Dialogue Modelling. In: Proceedings of “Elektronische Sprachsignalverarbeitung (ESSV)”, vol. 64 of Studientexte zur Sprachkommunikation, pp. 286–297 (2012)Google Scholar
  23. 23.
    Lorenz, R., Huber, M.: Realizing the Translation of utterances into meanings by petri net transducers. In: Proceedings of “Elektronische Sprachsignalverarbeitung (ESSV)”, vol. 65 of Studientexte zur Sprachkommunikation (2013)Google Scholar
  24. 24.
    Lorenz, R., Huber, M., Straßner, D.: Constructing petri net transducers with PNTool. In: Proceedings of “Elektronische Sprachsignalverarbeitung (ESSV)”, vol. 71 of Studientexte zur Sprachkommunikation (2014)Google Scholar
  25. 25.
    Lorenz, R., Huber, M., Wirsching, G.: On weighted petri net transducers. In: Ciardo, G., Kindler, E. (eds.) PETRI NETS 2014. LNCS, vol. 8489, pp. 233–252. Springer, Heidelberg (2014) CrossRefGoogle Scholar
  26. 26.
    Mohri, M.: Weighted Automata Algorithms. In: Droste et al. [8], ch. 6, pp. 213–254 (2009)Google Scholar
  27. 27.
    Pommereau, F.: Quickly Prototyping Petri Nets Tools with SNAKES. In: SimuTools, p. 17. ICST (2008)Google Scholar
  28. 28.
    Pommereau, F.: The SNAKES toolkit (2013). fpommereau/SNAKES
  29. 29.
    Pratt, V.: Modelling Concurrency with Partial Orders. Int. Journal of Parallel Programming 15, 33–71 (1986)zbMATHMathSciNetCrossRefGoogle Scholar
  30. 30.
    Rozenberg, G. (ed.): APN 1992. LNCS, vol. 609. Springer, Heidelberg (1992) Google Scholar
  31. 31.
    Schlosser, C.: Entwurf und Implementierung von Algorithmen zur gewichteten Übersetzung partieller Wörter mit Petrinetz-Transduktoren. Master thesis, Augsburg University (2014)Google Scholar
  32. 32.
    Strassner, D.: Prototypische Implementierung von Petrinetz-Transduktoren mit SNAKES. Bachelor thesis, Augsburg University (2013)Google Scholar
  33. 33.
    P. team. The Petri Net Markup Language home, p. 8 (2011).
  34. 34.
    van Biljon, W.R.: Extending Petri nets for specifying man-machine dialogues. Int. J. Man-Mach. Stud. 28(4), 437–455 (1988)zbMATHCrossRefGoogle Scholar
  35. 35.
    van der Aalst, W.M.P.: Verification of Workflow Nets. In: Aéma and Balbo [2], pp. 407–426Google Scholar
  36. 36.
    van Rossum, G., Drake, F.L.: The Python Language Reference Manual. PythonLabs, Virginia (2001) Google Scholar
  37. 37.
    Wang, F.-Y., Mittmann, M., Saridis, G.N.: Coordination specification for CIRSSE robotic platform system using Petri net transducers. Journal of Intelligent and Robotic Systems 9, 209–233 (1994)CrossRefGoogle Scholar
  38. 38.
    Wang, F.-Y., Saridis, G.N.: A model for coordination of intelligent machines using Petri nets. In: Proceedings of the IEEE International Symposium on Intelligent Control, pp. 28–33. IEEE Comput. Soc. Press (1989)Google Scholar
  39. 39.
    Wirsching, G., Huber, M., Kölbl, C.: Zur logik von bestenlisten in der dialogmodellierung. In: Proceedings of “Elektronische Sprachsignalverarbeitung (ESSV)”, vol. 61 of Studientexte zur Sprachkommunikation, pp. 309–316 (2011)Google Scholar
  40. 40.
    Wirsching, G., Huber, M., Kölbl, C., Lorenz, R., Römer, R.: Semantic dialogue modeling. In: Esposito et al. [9], pp. 104–113Google Scholar
  41. 41.
    Wolff, M.: Akustische Mustererkennung. Habilitation (2009)Google Scholar

Copyright information

© Springer International Publishing Switzerland 2015

Authors and Affiliations

  1. 1.Department of Computer ScienceUniversity of AugsburgAugsburgGermany

Personalised recommendations