A String Diagrammatic Axiomatisation of Finite-State Automata
We develop a fully diagrammatic approach to the theory of finite-state automata, based on reinterpreting their usual state-transition graphical representation as a two-dimensional syntax of string diagrams. Moreover, we provide an equational theory that completely axiomatises language equivalence in this new setting. The proposed axiomatisation is finitary -- a result which is provably impossible to obtain for the one-dimensional syntax of regular expressions.
Contextual Equivalence for Signal Flow Graphs
We extend the signal flow calculus---a compositional account of the classical signal flow graph model of computation---to encompass affine behaviour, and furnish it with a novel operational semantics. The increased expressive power allows us to define a canonical notion of contextual equivalence, which we show to coincide with denotational equality. Finally, we characterise the realisable fragment of the calculus: those terms that express the computations of (affine) signal flow graphs.
Bialgebraic Semantics for String Diagrams
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.
Graphical Affine Algebra
Graphical linear algebra is a diagrammatic language allowing to reason compositionally about different types of linear computing devices. In this paper, we extend this formalism with a connector for affine behaviour. The extension, which we call graphical affine algebra, is simple but remarkably powerful: it can model systems with richer patterns of behaviour such as mutual exclusion---with modules over the natural numbers as semantic domain---or non-passive electrical components---when considering modules over a certain field. Our main technical contribution is a complete axiomatisation for graphical affine algebra over these two interpretations. We also show, as case studies, how graphical affine algebra captures electrical circuits and the calculus of stateless connectors---a coordination language for distributed systems.
Diagrammatic Algebra: from Linear to Concurrent Systems
We introduce the resource calculus, a string diagrammatic language for concurrent systems. Significantly, it uses the same syntax and operational semantics as the signal flow calculus --- an algebraic formalism for signal flow graphs, which is a combinatorial model of computation of interest in control theory. Indeed, our approach stems from the simple but fruitful observation that, by replacing real numbers (modelling signals) with natural numbers (modelling resources) in the operational semantics, concurrent behaviour patterns emerge. The resource calculus is canonical: we equip it and its stateful extension with equational theories that characterise the underlying space of definable behaviours---a convex algebraic universe of additive relations---via isomorphisms of categories. Finally, we demonstrate that our calculus is sufficiently expressive to capture behaviour definable by classical Petri nets.
PDF · DOI · Slides
Picturing Resources in Concurrency
Inspired by the pioneering work of Petri and the rise of diagrammatic formalisms to reason about networks of open systems, we introduce the resource calculus—a graphical language for distributed systems. Like process algebras, the resource calculus is modular, with primitive connectors from which all diagrams can be built. We characterise its equational theory by proving a full completeness result for an interpretation in the symmetric monoidal category of additive relations—a result that constitutes the main contribution of this thesis.
Additive relations are frequently exploited by model-checking algorithms for Petri nets. In this thesis, we recognise them as a fundamental algebraic structure of concurrency and use them as an axiomatic framework. Surprisingly, the resource calculus has the same syntax as that of interacting Hopf algebras, a diagrammatic formalism for linear (time-invariant dynamical) systems. Indeed, the approach stems from the simple but fruitful realisation that, by replacing values in a field with values in the semiring of non-negative integers, concurrent behaviour patterns emerge. This change of model reflects the interpretation of diagrams as systems manipulating limited and discrete resources instead of continuous signals.
We also extend the resource calculus in two orthogonal directions. First, by adding an affine primitive to express access to a constant quantity of resources. The extended calculus is remarkably expressive and allows the formulation of non-additive patterns of behaviour, like mutual exclusion. Once more, we characterise it—this time as the equational theory of the symmetric monoidal category of polyhedral relations, discrete analogues of polyhedra in convex geometry. Secondly, we add a synchronous register to model stateful systems. The stateful resource calculus is expressive enough to faithfully capture the behaviour of Petri nets while being strictly more expressive. It is also shown to axiomatise a category of open Petri nets, in the style of the connector algebras of nets with boundaries first studied by Bruni, Melgratti, Montanari and Sobocinski.