Abstract
We show that \({\textbf{Span}}({\textbf{Graph}})_*\), an algebra for open transition systems introduced by Katis, Sabadini and Walters, satisfies a universal property. By itself, this is a justification of the canonicity of this model of concurrency. However, the universal property is itself of interest, being a formal demonstration of the relationship between feedback and state. Indeed, feedback categories, also originally proposed by Katis, Sabadini and Walters, are a weakening of traced monoidal categories, with various applications in computer science. A state bootstrapping technique, which has appeared in several different contexts, yields free such categories. We show that \({\textbf{Span}}({\textbf{Graph}})_*\) arises in this way, being the free feedback category over \({\textbf{Span}}(\textbf{Set})\). Given that the latter can be seen as an algebra of predicates, the algebra of open transition systems thus arises—roughly speaking—as the result of bootstrapping state to that algebra. Finally, we generalize feedback categories endowing state spaces with extra structure: this extends the framework from mere transition systems to automata with initial and final states.
Similar content being viewed by others
Notes
In its original description: “the relay is designed to produce a large and permanent change in the current flowing in an electrical circuit by means of a small electrical stimulus received from the outside” ( [17], emphasis added).
This is the \(\textbf{Int}\) construction from Joyal, Street and Verity [30].
Equivalently, \({\textbf{Graph}}\) is the presheaf category on the diagram \((\bullet \rightrightarrows \bullet )\), i.e. the category of functors \((\bullet \rightrightarrows \bullet ) \rightarrow \textbf{Set}\) and natural transformations between them.
Here, \(\textbf{S}\) is the subcategory of isomorphisms of \(\textbf{C}\) and \(R\) is the inclusion functor.
References
Abramsky, S.: What are the fundamental structures of concurrency? We still don’t know! (2014). arxiv:1401.4973
Adámek, J., Milius, S., Velebil, J.: Elgot algebras. Log. Methods Comput. Sci. (2006). https://doi.org/10.2168/LMCS-2(5:4)2006
Baez, J.C., Courser, K.: Structured cospans. arXiv:1911.04630 (2019)
Bénabou, J.: Introduction to bicategories. In: Reports of the Midwest Category Seminar. Springer, pp. 1–77 (1967)
Benton, N., Hyland, M.: Traced premonoidal categories. RAIRO Theor. Inform. Appl. 37(4), 273–299 (2003). https://doi.org/10.1051/ita:2003020
Bloom, S.L., Ésik, Z.: Iteration theories—the equational logic of iterative processes. In: EATCS Monographs on Theoretical Computer Science. Springer (1993). https://doi.org/10.1007/978-3-642-78034-9
Bonchi, F., Holland, J., Piedeleu, R., Sobociński, P., Zanasi, F.: Diagrammatic algebra: from linear to concurrent systems. Proc. ACM Program. Lang. 3(POPL), 1–28 (2019). https://doi.org/10.1145/3290338. (Article No.: 25)
Bonchi, F., Sobociński, P., Zanasi, F.: The calculus of signal flow diagrams I: linear relations on streams. Inf. Comput. 252, 2–29 (2017). https://doi.org/10.1016/j.ic.2016.03.002
Bruni, R., Melgratti, H.C., Montanari, U.: A connector algebra for P/T nets interactions. In: Concurrency Theory (CONCUR’11), vol. 6901 of LNCS. Springer, pp. 312–326 (2011). https://doi.org/10.1007/978-3-642-23217-6_21
Carboni, A., Walters, R.F.C.: Cartesian bicategories I. J. Pure Appl. Algebra 49(1–2), 11–32 (1987)
Cherubini, A., Sabadini, N., Walters, R.F.C.: Timing in the Cospan/Span model. Electron. Notes Theor. Comput. Sci. 104, 81–97 (2004)
Clouston, R., Bizjak, A., Grathwohl, H.B., Birkedal, L.: Programming and reasoning with guarded recursion for coinductive types. In: Andrew, M.P. (ed.), Foundations of Software Science and Computation Structures—18th International Conference, FoSSaCS 2015, Held as Part of the European Joint Conferences on Theory and Practice of Software, ETAPS 2015, London, April 11–18, 2015. Proceedings, vol. 9034 of Lecture Notes in Computer Science. Springer, pp. 407–421 (2015). https://doi.org/10.1007/978-3-662-46678-0_26
de Francesco Albasini L., Sabadini, N., Walters, R.F.C.: The compositional construction of Markov processes. Appl. Categ. Struct. 19(1), 425–437 (2011)
de Francesco Albasini L., Sabadini, N., Walters, R.F.C.: The compositional construction of Markov processes II. RAIRO Theor. Inform. Appl. 45(1), 117–142 (2011)
Dezani-Ciancaglini, M., de’Liguoro, U.: Sessions and session types: An overview. In: Cosimo, L., Jianwen S. (eds.), Web Services and Formal Methods, 6th International Workshop, WS-FM 2009, Bologna, Italy, September 4–5, 2009, Revised Selected Papers, vol. 6194 of Lecture Notes in Computer Science. Springer, pp. 1–28 (2009). https://doi.org/10.1007/978-3-642-14458-5_1
Di Lavore, E., de Felice, G., Román, M.: Monoidal streams for dataflow programming. In: Proceedings of the 37th Annual ACM/IEEE Symposium on Logic in Computer Science, LICS’22. Association for Computing Machinery, New York (2022). https://doi.org/10.1145/3531130.3533365
Eccles, W.H., Jordan, F.W.: Improvements in ionic relays. British Patent Number: GB 148582 (1918)
Elgot, C.C.: Monadic computation and iterative algebraic theories. In: Studies in Logic and the Foundations of Mathematics, vol. 80, pp. 175–230. Elsevier (1975)
Fong, B.: Decorated cospans. Theory Appl. Categ. 30(33), 1096–1120 (2015)
Fong, B., Spivak, D.I.: An Invitation to Applied Category Theory: Seven Sketches in Compositionality. Cambridge University Press (2019)
Gianola, A., Kasangian, S., Manicardi, D., Sabadini, N., Schiavio, F., Tini, S.: CospanSpan(Graph): a compositional description of the heart system. Fundam. Inform. 171(1–4), 221–237 (2020)
Gianola, A., Kasangian, S., Manicardi, D., Sabadini, N., Tini, S.: Compositional modeling of biological systems in CospanSpan(Graph). In: Proceedings of the ICTCS. CEUR-WS (2020) (To appear)
Gianola, A., Kasangian, S., Sabadini, N.: Cospan/Span(Graph): an Algebra for Open, Reconfigurable Automata Networks. In: Filippo, B., Barbara K. (eds.), 7th Conference on Algebra and Coalgebra in Computer Science, CALCO 2017, June 12–16, 2017, Ljubljana, Slovenia, vol. 72 of LIPIcs. Schloss Dagstuhl - Leibniz-Zentrum für Informatik, pp. 2:1–2:17 (2017). https://doi.org/10.4230/LIPIcs.CALCO.2017.2
Girard, J.-Y.: Linear logic. Theor. Comput. Sci. 50, 1–102 (1987). https://doi.org/10.1016/0304-3975(87)90045-4
Girard, J.-Y.: Towards a geometry of interaction. Contemp. Math. 92(69–108), 6 (1989)
Goncharov, S., Schröder, L.: Guarded traced categories. In: Christel, B., Ugo, D.L. (eds.), Foundations of Software Science and Computation Structures—21st International Conference, FOSSACS 2018, Held as Part of the European Joint Conferences on Theory and Practice of Software, ETAPS 2018, Thessaloniki, Greece, April 14–20, 2018, Proceedings, vol. 10803 of Lecture Notes in Computer Science. Springer, pp. 313–330 (2018). https://doi.org/10.1007/978-3-319-89366-2_17
Hasegawa, M.: Recursion from cyclic sharing: traced monoidal categories and models of cyclic lambda calculi. In: de Groote, P. (ed), Typed Lambda Calculi and Applications, Third International Conference on Typed Lambda Calculi and Applications, TLCA’97, Nancy, April 2–4, 1997, Proceedings, vol. 1210 of Lecture Notes in Computer Science. Springer, pp. 196–213 (1997). https://doi.org/10.1007/3-540-62688-3_37
Hasegawa, M.: The uniformity principle on traced monoidal categories. In: Richard, B., Peter, S. (eds.), Category Theory and Computer Science, CTCS 2002, Ottawa, Canada, August 15–17, 2002, vol. 69 of Electronic Notes in Theoretical Computer Science. Elsevier, pp. 137–155 (2002). https://doi.org/10.1016/S1571-0661(04)80563-2
Hoshino, N., Muroya, K., Hasuo, I.: Memoryful geometry of interaction: from coalgebraic components to algebraic effects. In Thomas A.H., Dale, M. (eds.), Joint Meeting of the Twenty-Third EACSL Annual Conference on Computer Science Logic (CSL) and the Twenty-Ninth Annual ACM/IEEE Symposium on Logic in Computer Science (LICS), CSL-LICS’14, Vienna, July 14–18 (2014). ACM, pp. 52:1–52:10 (2014). https://doi.org/10.1145/2603088.2603124
Joyal, A., Street, R., Verity, D.: Traced monoidal categories. Math. Proc. Camb. Philos. Soc. 119, 447–468 (1996). https://doi.org/10.1017/S0305004100074338
Kalman, R.E., Falb, P.L., Arbib, M.A.: Topics in Mathematical System Theory, vol. 1. McGraw-Hill, New York (1969)
Katis, P., Sabadini, N., Walters, R.F.C.: Bicategories of processes. J. Pure Appl. Algebra 115(2), 141–178 (1997)
Katis, P., Sabadini, N., Walters, R.F.C.: Span(Graph): a categorial algebra of transition systems. In: Michael, J. (ed.), Algebraic Methodology and Software Technology, 6th International Conference, AMAST’97, Sydney, December 13–17, 1997, Proceedings, vol. 1349 of Lecture Notes in Computer Science. Springer, pp. 307–321 (1997). https://doi.org/10.1007/BFb0000479
Katis, P., Sabadini, N., Walters, R.F.C.: On the algebra of feedback and systems with boundary. In: Rendiconti del Seminario Matematico di Palermo (1999)
Katis, P., Sabadini, N., Walters, R.F.C.: A formalization of the IWIM model. In: António, P., Gruia-Catalin, R. (eds.), Coordination Languages and Models, 4th International Conference, COORDINATION 2000, Limassol, Cyprus, September 11–13, 2000, Proceedings, vol. 1906 of Lecture Notes in Computer Science. Springer, pp. 267–283 (2000). https://doi.org/10.1007/3-540-45263-X_17
Katis, P., Sabadini, N., Walters, R.F.C.: Feedback, trace and fixed-point semantics. RAIRO-Theor. Inform. Appl. 36(2), 181–194 (2002). https://doi.org/10.1051/ita:2002009
Katis, P., Sabadini, N., Walters, R.F.C.: A Process Algebra for the Span(Graph) Model of Concurrency. arXiv:0904.3964 (2009)
Lack, S.: Composing PROPs. Theory Appl. Categ. 13(9), 147–163 (2004)
Di Lavore, E., Gianola, A., Román, M., Sabadini, N., Sobociński, P.: A canonical algebra of open transition systems. In: Gwen, S., Anton, W. (ed.), Formal Aspects of Component Software—17th International Conference, FACS 2021, Virtual Event, October 28–29, 2021, Proceedings, vol. 13077 of Lecture Notes in Computer Science. Springer, pp. 63–81 (2021). https://doi.org/10.1007/978-3-030-90636-8_4
Mac Lane, S.: Categories for the Working Mathematician. Graduate Texts in Mathematics, Springer, New York (1978). https://doi.org/10.1007/978-1-4757-4721-8
Mason, S.J.: Feedback Theory—Some properties of signal flow graphs. Proc. Inst. Radio Eng. 41(9), 1144–1156 (1953). https://doi.org/10.1109/JRPROC.1953.274449
Mealy, G.H.: A method for synthesizing sequential circuits. Bell Syst. Tech. J. 34(5), 1045–1079 (1955)
Milius, S., Litak, T.: Guard your daggers and traces: properties of guarded (co-)recursion. Fundam. Inform. 150(3–4), 407–449 (2017)
Pavlović, D.: Maps I: relative to a factorisation system. J. Pure Appl. Algebra 99(1), 9–34 (1995)
Ponto, K., Shulman, M.: Traces in symmetric monoidal categories. Expos. Math. 32(3), 248–273 (2014). https://doi.org/10.1016/j.exmath.2013.12.003
Rathke, J., Sobociński, P., Stephens, O.: Compositional reachability in petri nets. In: Joël, O., Igor, P., James, W. (eds.), Reachability Problems—8th International Workshop, RP 2014, Oxford, UK, September 22–24, 2014. Proceedings, vol. 8762 of Lecture Notes in Computer Science. Springer, pp. 230–243 (2014). https://doi.org/10.1007/978-3-319-11439-2_18
Román, M.: Span graph via the state construction (2022). https://github.com/mroman42/feedback-span-graph
Rosebrugh, R., Sabadini, N., Walters, R.F.C.: Generic commutative separable algebras and cospans of graphs. Theory Appl. Categ. 15(6), 164–177 (2005)
Sabadini, N., Schiavio, F., Walters, R.F.C.: On the geometry and algebra of networks with state. Theor. Comput. Sci. 664, 144–163 (2017)
Selinger, P.: A survey of graphical languages for monoidal categories. In: New Structures for Physics. Springer, pp. 289–355 (2010). https://doi.org/10.1007/978-3-642-12821-9_4
Claude, E.S.: The Theory and Design of Linear Differential Equation Machines. Bell Telephone Laboratories (1942)
Sobociński, P.: A non-interleaving process calculus for multi-party synchronisation. In: 2nd Interaction and Concurrency Experience: Structured Interactions, (ICE 2009), vol. 12 of EPTCS (2009). http://users.ecs.soton.ac.uk/ps/papers/ice09.pdf, https://doi.org/10.4204/eptcs.12.6
Sobociński, P.: Representations of Petri net interactions. In: Concurrency Theory, 21th International Conference, (CONCUR 2010), vol. 6269 of Lecture Notes in Computer Science. Springer, pp. 554–568 (2010). https://doi.org/10.1007/978-3-642-15375-4_38
Author information
Authors and Affiliations
Corresponding author
Additional information
Communicated by Gwen Salaun.
Publisher's Note
Springer Nature remains neutral with regard to jurisdictional claims in published maps and institutional affiliations.
Di Lavore, Román and Sobociński were supported by the European Union through the ESF funded Estonian IT Academy research measure (2014\(-\)2020.4.05.19-0001). This work was also supported by the Estonian Research Council grant PRG1210.
Rights and permissions
Springer Nature or its licensor (e.g. a society or other partner) holds exclusive rights to this article under a publishing agreement with the author(s) or other rightsholder(s); author self-archiving of the accepted manuscript version of this article is solely governed by the terms of such publishing agreement and applicable law.
About this article
Cite this article
Di Lavore, E., Gianola, A., Román, M. et al. Span(Graph): a canonical feedback algebra of open transition systems. Softw Syst Model 22, 495–520 (2023). https://doi.org/10.1007/s10270-023-01092-7
Received:
Revised:
Accepted:
Published:
Issue Date:
DOI: https://doi.org/10.1007/s10270-023-01092-7