Bialgebraic foundations for the operational semantics of string diagrams

Abstract Turi and Plotkin's bialgebraic semantics is an abstract approach to specifying the operational semantics of a system, by means of a distributive law between its syntax (encoded as a monad) and its dynamics (an endofunctor). This setup is instrumental in showing that a semantic specification (a coalgebra) satisfies desirable properties: in particular, that it is compositional. In this work, we use the bialgebraic approach to derive well-behaved structural operational semantics of string diagrams, a graphical syntax that is increasingly used in the study of interacting systems across different disciplines. Our analysis relies on representing the two-dimensional operations underlying string diagrams in various categories as a monad, and their bialgebraic semantics in terms of a distributive law for that monad. As a proof of concept, we provide bialgebraic compositional semantics for a versatile string diagrammatic language which has been used to model both signal flow graphs (control theory) and Petri nets (concurrency theory). Moreover, our approach reveals a correspondence between two different interpretations of the Frobenius equations on string diagrams and two synchronisation mechanisms for processes, a la Hoare and a la Milner.

[1]  Robin Milner,et al.  Calculi for Synchrony and Asynchrony , 1983, Theor. Comput. Sci..

[2]  BonchiFilippo,et al.  Full Abstraction for Signal Flow Graphs , 2015 .

[3]  Davide Sangiorgi,et al.  The Pi-Calculus - a theory of mobile processes , 2001 .

[4]  Paolo Rapisarda,et al.  A categorical approach to open and interconnected dynamical systems , 2015, 2016 31st Annual ACM/IEEE Symposium on Logic in Computer Science (LICS).

[5]  Brendan Fong A Compositional Framework for Passive Linear Circuits , 2015 .

[6]  James Worrell,et al.  Terminal sequences for accessible endofunctors , 1999, CMCS.

[7]  John Power,et al.  Distributivity for endofunctors, pointed and co-pointed endofunctors, monads and comonads , 2000, CMCS.

[8]  C. A. R. Hoare,et al.  Communicating sequential processes , 1978, CACM.

[9]  Filippo Bonchi,et al.  Deconstructing Lawvere with distributive laws , 2018, J. Log. Algebraic Methods Program..

[10]  Bob Coecke,et al.  Interacting Quantum Observables , 2008, ICALP.

[11]  Filippo Bonchi,et al.  A Categorical Semantics of Signal Flow Graphs , 2014, CONCUR.

[12]  John Power,et al.  The Category Theoretic Understanding of Universal Algebra: Lawvere Theories and Monads , 2007, Computation, Meaning, and Logic.

[13]  Robert de Simone,et al.  Higher-Level Synchronising Devices in Meije-SCCS , 1985, Theor. Comput. Sci..

[14]  Fabio Gadducci,et al.  Rewriting modulo symmetric monoidal structure , 2016, 2016 31st Annual ACM/IEEE Symposium on Logic in Computer Science (LICS).

[15]  P. Selinger A Survey of Graphical Languages for Monoidal Categories , 2009, 0908.3347.

[16]  Jan Friso Groote,et al.  Transition System Specifications with Negative Premises , 1993, Theor. Comput. Sci..

[17]  Bartek Klin,et al.  Bialgebras for structural operational semantics: An introduction , 2011, Theor. Comput. Sci..

[18]  Roberto Bruni,et al.  On Hierarchical Graphs: Reconciling Bigraphs, Gs-monoidal Theories and Gs-graphs , 2014, Fundam. Informaticae.

[19]  Dan R. Ghica,et al.  Diagrammatic Reasoning for Delay-Insensitive Asynchronous Circuits , 2013, Computation, Logic, Games, and Quantum Foundations.

[20]  Filippo Bonchi,et al.  Diagrammatic algebra: from linear to concurrent systems , 2019, Proc. ACM Program. Lang..

[21]  Dusko Pavlovic,et al.  Quantum and Classical Structures in Nondeterminstic Computation , 2008, QI.

[22]  Nicoletta Sabadini,et al.  Span(Graph): A Categorial Algebra of Transition Systems , 1997, AMAST.

[23]  Gordon D. Plotkin,et al.  Towards a mathematical operational semantics , 1997, Proceedings of Twelfth Annual IEEE Symposium on Logic in Computer Science.

[24]  Samson Abramsky,et al.  A categorical semantics of quantum protocols , 2004, LICS 2004.

[25]  Filippo Bonchi,et al.  Full Abstraction for Signal Flow Graphs , 2015, POPL.

[26]  Filippo Bonchi,et al.  The Calculus of Signal Flow Diagrams I: Linear relations on streams , 2017, Inf. Comput..

[27]  Robin Milner,et al.  A Calculus of Communicating Systems , 1980, Lecture Notes in Computer Science.

[28]  David Harel,et al.  Statecharts: A Visual Formalism for Complex Systems , 1987, Sci. Comput. Program..

[29]  John C. Baez,et al.  Categories in Control , 2014, 1405.6881.

[30]  Ugo Montanari,et al.  A model for distributed systems based on graph rewriting , 1987, JACM.

[31]  Alexander Kurz,et al.  Nominal String Diagrams , 2019, CALCO.

[32]  Ugo Montanari,et al.  A First Order Coalgebraic Model of pi-Calculus Early Observational Equivalence , 2002, CONCUR.

[33]  Pawel Sobocinski A non-interleaving process calculus for multi-party synchronisation , 2009, ICE.

[34]  Dan R. Ghica,et al.  A structural and nominal syntax for diagrams , 2017, QPL.

[35]  David I. Spivak,et al.  Hypergraph Categories , 2018, Journal of Pure and Applied Algebra.

[36]  Filippo Bonchi,et al.  Graphical Affine Algebra , 2019, 2019 34th Annual ACM/IEEE Symposium on Logic in Computer Science (LICS).

[37]  Alexandra Silva,et al.  Generalizing the powerset construction, coalgebraically , 2010, FSTTCS.

[38]  Jurriaan Rot,et al.  Presenting Distributive Laws , 2013, CALCO.

[39]  Jan Vitek,et al.  The Seal Calculus , 2005, Inf. Comput..

[40]  Luca Cardelli,et al.  Mobile Ambients , 1998, FoSSaCS.

[41]  Ivan Lanese,et al.  Hoare vs Milner: Comparing Synchronizations in a Graphical Framework With Mobility , 2006, Electron. Notes Theor. Comput. Sci..

[42]  Robin Milner,et al.  The Space and Motion of Communicating Agents , 2009 .

[43]  Filippo Bonchi,et al.  Bialgebraic Semantics for String Diagrams , 2019, CONCUR.