Abstract
In a seminal paper Montanari and Meseguer have shown that an algebraic interpretation of Petri nets in terms of commutative monoids can be used to provide an elegant characterisation of the deterministic computations of a net, accounting for their sequential and parallel composition. A smoother and more complete theory for deterministic computations has been later developed by relying on the concept of pre-net, a variation of Petri nets with a non-commutative flavor. This paper shows that, along the same lines, by adding an (idempotent) operation and thus considering dioids (idempotent semirings) rather than just monoids, one can faithfully characterise the non-deterministic computations of a net.
Similar content being viewed by others
Notes
Given functors \(F,G: {\mathscr {A}} \rightarrow {\mathscr {B}}\), a transformation\(\tau : F \Rightarrow G: {\mathscr {A}} \rightarrow {\mathscr {B}}\) is a family \(\tau = \{\tau _a: F(a) \rightarrow G(a) \mid a \in O_{\mathscr {A}}\}\) of arrows in \({\mathscr {B}}\) indexed by objects of \({\mathscr {A}}\). We say that \(\tau \) is natural if \(\tau _a ; G(f) = F(f) ; \tau _{b}\) for every arrow \(f: a \rightarrow b\) in \({\mathscr {A}}\) and an isomorphism if all its components \(\tau _a\)’s are so.
Even if, despite the common usage, the terminology adopted in [19] is that of mega-graphs.
In abstract data types terms, an order-sorted algebra with type \(\mathbf {AP}({R})\) included in type \(\mathbf {ANP}({R})\).
Indeed, also for \(\rho \) and \(\nabla \) would suffice to consider only those instances associated to the objects of \(\mathbf {AP}({R})\), and consider the axioms involving them as definitions of derived operators.
References
Baldan, P., Bonchi, F., Gadducci, F., Monreale, G.V.: Modular encoding of synchronous and asynchronous interactions using open Petri nets. Sci. Comput. Program. 109, 96–124 (2015)
Baldan, P., Bruni, R., Montanari, U.: Pre-nets, read arcs and unfolding: a functorial presentation. In: Wirsing, M., Pattinson, D., Hennicker, R. (eds.) Algebraic Development Techniques (WADT 2002), Lecture Notes in Computer Science, vol. 2755, pp. 145–164. Springer (2003)
Baldan, P., Gadducci, F.: Petri nets are dioids. In: Meseguer, J., Rosu, G. (eds.) Algebraic Methodologies and Software Technology (AMAST 2008), Lecture Notes in Computer Science, vol. 5140, pp. 51–66. Springer (2008)
Bonchi, F., Gadducci, F., Kissinger, A., Sobocinski, P., Zanasi, F.: Rewriting modulo symmetric monoidal structure. In: Grohe, M., Koskinen, E., Shankar, N. (eds.) Logic in Computer Science (LICS 2016), pp. 710–719. ACM, New York (2016)
Bonchi, F., Sobocinski, P., Zanasi, F.: Full abstraction for signal flow graphs. In: Rajamani, S.K., Walker, D. (eds.) Principles of Programming Languages (POPL 2015), pp. 515–526. ACM, New York (2015)
Bruni, R., Gadducci, F., Montanari, U.: Normal forms for algebras of connections. Theor. Comput. Sci. 286(2), 247–292 (2002)
Bruni, R., Meseguer, J., Montanari, U., Sassone, V.: Functorial models for Petri nets. Inf. Comput. 170(2), 207–236 (2001)
Corradini, A., Gadducci, F.: An algebraic presentation of term graphs, via gs-monoidal categories. Appl. Categ. Struct. 7(4), 299–331 (1999)
Corradini, A., Gadducci, F.: A functorial semantics for multi-algebras and partial algebras, with applications to syntax. Theor. Comput. Sci. 286, 293–322 (2002)
Degano, P., Meseguer, J., Montanari, U.: Axiomatizing net computations and processes. In: Logic in Computer Science (LICS 1989), pp. 175–185. IEEE Computer Society (1989)
Degano, P., Meseguer, J., Montanari, U.: Axiomatizing the algebra of net computations and processes. Acta Inform. 33(7), 641–667 (1996)
Engelfriet, J.: Branching processes of Petri nets. Acta Inform. 28(6), 575–591 (1991)
Esparza, J., Heljanko, K.: Unfoldings: a partial order approach to model checking. Springer, Berlin (2008)
Gadducci, F., Montanari, U.: Axioms for contextual net processes. In: Larsen, K., Skyum, S., Winskel, G. (eds.) Automata, Languages and Programming (ICALP 1998), Lecture Notes in Computer Science, vol. 1443, pp. 296–308. Springer (1998)
Goltz, U., Reisig, W.: The non-sequential behaviour of Petri nets. Inf. Control 57(2/3), 125–147 (1983)
Gorrieri, R.: Process algebras for Petri nets: the alphabetization of distributed systems. Springer, Berlin (2017)
Green, A., Altenkirch, T.: From reversible to irreversible computations. In: Selinger, P. (ed.) Quantum Programming Languages (QPL 2006), Electronic Notes in Theoretical Computer Science, vol. 210, pp. 65–74. Elsevier, Amsterdam (2008)
Grosu, R., Lucanu, D., Stefanescu, G.: Mixed relations as enriched semiringal categories. Univers. Comput. Sci. 6(1), 112–129 (2000)
Hackney, P., Robertson, M.: On the category of PROPs. Appl. Categ. Struct. 23(4), 543–573 (2015)
Joyal, A., Street, R., Verity, D.: Traced monoidal categories. Math. Proc. Camb. Philos. Soc. 119(3), 447–468 (1996)
Lack, S.: Composing PROPs. Theory Appl. Categ. 13(9), 147–163 (2004)
Laplaza, M.: Coherence for distributivity. In: Coherence in Categories, Lecture Notes in Mathematics, vol. 281, pp. 29–72. Springer (1972)
Mac Lane, S.: Categories for the Working Mathematician. Springer, Berlin (1971)
Martì-Oliet, N., Meseguer, J.: From Petri nets to linear logic through categories: a survey. Found. Comput. Sci. 2(4), 297–399 (1991)
May, J.: The construction of \(\text{ E }_\infty \) ring spaces from bipermutative categories. Geom. Topol. Monogr. 16, 283–330 (2009)
Meseguer, J., Montanari, U.: Petri nets are monoids. Inf. Comput. 88(2), 105–155 (1990)
Milner, R.: The Space and Motion of Communicating Agents. Cambridge University Press, Cambridge (2009)
Nielsen, M., Plotkin, G., Winskel, G.: Petri nets, event structures and domains, part 1. Theor. Comput. Sci. 13, 85–108 (1981)
Petri, C.: Kommunikation mit automaten. Ph.D. Thesis, Institut für Instrumentelle Matematik, Bonn (1962)
Reisig, W.: Petri nets: an introduction. Springer, Berlin (1985)
Sangiorgi, D., Walker, D.: The Pi-Calculus: A Theory of Mobile Processes. Cambridge University Press, Cambridge (2001)
Sassone, V.: An axiomatization of the category of Petri net computations. Math. Struct. Comput. Sci. 8(2), 117–151 (1998)
Selinger, P.: A survey of graphical languages for monoidal categories. Spring. Lect. Notes Phys. 13(813), 289–355 (2011)
Stefanescu, G.: Reaction and control I. Mixing additive and multiplicative network algebras. Log. J. IGPL 6(2), 348–369 (1998)
Stefanescu, G.: Network Algebra. Springer, Berlin (2000)
Winskel, G.: Event structures. In: Brauer, W., Reisig, W., Rozenberg, G. (eds.) Petri Nets: Applications and Relationships to Other Models of Concurrency, Lecture Notes in Computer Science, vol. 255, pp. 325–392. Springer (1987)
Acknowledgements
We are indebted to Professor Peter May for the interaction and the fruitful discussions on bimonoidal categories, as well as to the reviewers for their remarks and pointers to the literature.
Author information
Authors and Affiliations
Corresponding author
Rights and permissions
About this article
Cite this article
Baldan, P., Gadducci, F. Petri nets are dioids: a new algebraic foundation for non-deterministic net theory. Acta Informatica 56, 61–92 (2019). https://doi.org/10.1007/s00236-018-0314-0
Received:
Accepted:
Published:
Issue Date:
DOI: https://doi.org/10.1007/s00236-018-0314-0