How to Kill Epsilons with a Dagger
Abstract
We propose an abstract framework for modeling statebased systems with internal behavior as e.g. given by silent or \(\epsilon \)transitions. Our approach employs monads with a parametrized fixpoint operator \(\dagger \) to give a semantics to those systems and implement a sound procedure of abstraction of the internal transitions, whose labels are seen as the unit of a free monoid. More broadly, our approach extends the standard coalgebraic framework for statebased systems by taking into account the algebraic structure of the labels of their transitions. This allows to consider a wide range of other examples, including Mazurkiewicz traces for concurrent systems.
Keywords
Natural Transformation Internal Transition Denotational Semantic Enrich Category Initial Algebra1 Introduction
The theory of coalgebras provides an elegant mathematical framework to express the semantics of computing devices: the operational semantics, which is usually given as a state machine, is modeled as a coalgebra for a functor; the denotational semantics as the unique map into the final coalgebra of that functor. While the denotational semantics is often compositional (as, for instance, ensured by the bialgebraic approach of [24]), it is sometimes not fullyabstract, i.e., it discriminates systems that are equal from the point of view of an external observer. This is due to the presence of internal transitions (also called \(\epsilon \)transitions) that are not observable but that are not abstracted away by the usual coalgebraic semantics using the unique homomorphism into the final coalgebra.
The one on the left (that we call \(\mathbb {A}\)) is an NDA with \(\epsilon \)transitions: its transitions are labeled either by the symbols of the alphabet \(A=\{a,b,c\}\) or by the empty word \(\epsilon \in A^*\). The one on the right (that we call \(\mathbb {B}\)) has transitions labeled by languages in \(\mathcal {P}(A^*)\), here represented as regular expressions. The monoid structure on the labels is explicit on \(\mathbb {B}\), while it is less evident in \(\mathbb {A}\) since the set of labels \(A\cup \{\epsilon \}\) does not form a monoid. However, this set can be trivially embedded into \(\mathcal {P}(A^*)\) by looking at each symbols as the corresponding singleton language. For this reason each automaton with \(\epsilon \)transitions, like \(\mathbb {A}\), can be regarded as an automaton with transitions labeled by languages, like \(\mathbb {B}\). Furthermore, we can define the semantics of NDA with \(\epsilon \)transitions by defining the semantics of NDA with transitions labeled by languages: a word \(w\) is accepted by a state \(q\) if there is a path Open image in new window where \(p\) is a final state, and there exist a decomposition \(w=w_1\cdots w_n\) such that \(w_i \in L_i\). Observe that, with this definition, \(\mathbb {A}\) and \(\mathbb {B}\) accept the same language: all words over \(A\) that end with \(a\) or \(c\). In fact, \(\mathbb {B}\) was obtained from \(\mathbb {A}\) in a wellknown process to compute the regular expression denoting the language accepted by a given automaton [14].
We propose to define the semantics of systems with internal transitions following the same idea as in the above example. Given some transition type (i.e. an endofunctor) \(F\), one first defines an embedding of \(F\)systems with internal transitions into \(F^*\)system, where \(F^*\) has been derived from \(F\) by making explicit the algebraic structure on the labels. Next one models the semantics of an \(F\)system as the one of the corresponding \(F^*\)system \(e\). Naively, one could think of defining the semantics of \(e\) as the unique map \({!_{e}}\) into the final coalgebra for \(F^*\). However, this approach turns out to be too fine grained, essentially because it ignores the underlying algebraic structure on the labels of \(e\). The same problem can be observed in the example above: \(\mathbb {B}\) and the representation of \(\mathbb {A}\) as an automaton with languages as labels have different final semantics—they accept the same language only modulo the equations of monoids.
Thus we need to extend the standard coalgebraic framework by taking into account the algebraic structure on labels. To this end, we develop our theory for systems whose transition type \(F^*\) has a canonical fixpoint, i.e. its initial algebra and final coalgebra coincide. This is the case for many relevant examples, as observed in [12]. Our canonical fixpoint semantics will be given as the composite Open image in new window , where \({!_{e}}\) is a coalgebra morphism given by finality and Open image in new window is an algebra morphism given by initiality. The target of Open image in new window will be an algebra for \(F^*\) encoding the equational theory associated with the labels of \(F^*\)systems. Intuitively, Open image in new window being an algebra morphism, will take the quotient of the semantics given by \({!_{e}}\) modulo those equations. Therefore the extension provided by Open image in new window is the technical feature allowing us to take into account the algebraic structure on labels.
To study the properties of our canonical fixpoint semantics, it will be convenient to formulate it as an operator \(e \mapsto {e}^\dag \) assigning to systems (seen as sets of equations) a certain solution. Within the same perspective we will implement a different kind of solution \(e \mapsto {e}^\ddag \) turning any system \(e\) with internal transitions into one \({e}^\ddag \) where those have been abstracted away. By comparing the operators \(e \mapsto {e}^\dag \) and \(e \mapsto {e}^\ddag \), we will then be able to show that such a procedure (also called \(\epsilon \textit{elimination}\)) is sound with respect to the canonical fixpoint semantics.
To conclude, we will explore further the flexibility of our framework. In particular, we will model the case in which the algebraic structure of the labels is quotiented under some equations, resulting in a coarser equivalence than the one given by the canonical fixpoint semantics. As a relevant example of this phenomenon, we give the first coalgebraic account of Mazurkiewicz traces.
Synopsis. After recalling the necessary background in Sect. 2, we discuss our motivating examples—automata with \(\epsilon \)transitions and automata on words—in Sect. 3. Section 4 is devoted to present the canonical fixpoint semantics and the sound procedure of \(\epsilon \)elimination. This framework is then instantiated to the examples of Sect. 3. Finally, in Sect. 5 we show how a quotient of the algebra on labels induces a coarser canonical fixpoint semantics. We propose Mazurkiewicz traces as a motivating example for such a construction. A full version of this paper with all proofs and extra material can be found in http://arxiv.org/abs/1402.4062.
2 Preliminaries
In this section we introduce the basic notions we need for our abstract framework. We assume some familiarity with category theory. We will use boldface capitals \(\mathbf {C}\) to denote categories, \(X, Y, \ldots \) for objects and \(f,g,\ldots \) for morphisms. We use Greek letters and double arrows, e.g. \(\eta :F \Rightarrow G\), for natural transformations, monad morphisms and any kind of 2cells. If \(\mathbf {C}\) has coproducts we will denote them by \(X+Y\) and use \(\mathsf {inl},\mathsf {inr}\) for the coproduct injections.
2.1 Monads
We recall the basics of the theory of monads, as needed here. For more information, see e.g. [18]. A monad is a functor \(T:\mathbf {C} \rightarrow \mathbf {C}\) together with two natural transformations, a unit \(\eta :\mathrm{id }_{\mathbf {C}} \Rightarrow T\) and a multiplication \(\mu :T^{2} \Rightarrow T\), which are required to satisfy the following equations, for every \(X\in \mathbf {C}\): \(\mu _X\mathrel {\circ }\eta _{T X} = \mu _X\mathrel {\circ }T\eta _{X} = \mathrm {id}\) and \(T\mu _{X}\mathrel {\circ }\mu _{T X} = \mu _X\mathrel {\circ }\mu _X\).
A morphism of monads from \((T,\eta ^T, \mu ^T)\) to \((S,\eta ^S, \mu ^S)\) is a natural transformation \(\gamma :T \Rightarrow S\) that preserves unit and multiplication: \(\gamma _X \circ \eta ^T_X=\eta ^S_X\) and \(\gamma _X \circ \mu ^T_X=\mu _X^S \circ \gamma _{SX} \circ T\gamma _X\). A quotient of monads is a morphism of monads with epimorphic components.
Example 2.1
 1.
Let \(\mathbf {C}=\mathbf {Sets}\). The powerset monad \(\mathcal {P}\) maps a set \(X\) to the set \(\mathcal {P}X\) of subsets of \(X\), and a function \(f:X \rightarrow Y\) to \(\mathcal {P}f:\mathcal {P}X \rightarrow \mathcal {P}Y\) given by direct image. The unit is given by the singleton set map \(\eta _X(x) = \{x\}\) and multiplication by union \(\mu _X(U) = \bigcup _{S \in U} S\).
 2.
Let \(\mathbf {C}\) be a category with coproducts and \(E\) an object of \(\mathbf {C}\). The exception monad \(\mathcal E\) is defined on objects as \(\mathcal E X = E + X\) and on arrows \(f:X\rightarrow Y\) as \(\mathcal E f = \mathrm {Id}_E + f\). Its unit and multiplication are given on \(X \in \mathbf {C}\) respectively as \(\mathsf {inr}_X:X \rightarrow E + X\) and \(\nabla _{E} + \mathrm {Id}_X : E + E + X\rightarrow E + X\), where \(\nabla _E = [\mathrm {id}_E,\mathrm {id}_E]\) is the codiagonal. When \(\mathbf {C}=\mathbf {Sets}\), \(E\) can be thought as a set of exceptions and this monad is often used to encode computations that might fail throwing an exception chosen from the set \(E\).
 3.
Let \(H\) be an endofunctor on a category \(\mathbf {C}\) such that for every object \(X\) there exists a free \(H\)algebra \({H^*}X\) on \(X\) (equivalently, an initial \(H+X\)algebra) with the structure \(\tau _X: H{H^*} X \rightarrow {H^*}X\) and universal morphism \(\eta _X: X \rightarrow {H^*} X\). Then as proved by Barr [5] (see also Kelly [16]) \({H^*}:\mathbf {C}\rightarrow \mathbf {C}\) is the functor part of a free monad on \(H\) with the unit given by the above \(\eta _X\) and the multiplication given by the freeness of \({H^*}{H^*}X\): \(\mu _X\) is the unique \(H\)algebra homomorphism from \(({H^*}{H^*}X, \tau _{{H^*}X})\) to \(({H^*}X , \tau _X)\) such that \(\mu _X \cdot \eta _{{H^*}X} = \eta _X\). Also notice that for a complete category every free monad arises in this way. Finally, for later use we fix the notation \(\kappa = \tau \cdot H\eta :H \Rightarrow {H^*}\) for the universal natural transformation of the free monad.
Given a monad \(M:\mathbf {C}\rightarrow \mathbf {C}\), its Kleisli category \(\mathcal {K}{\!\!}\ell (M)\) has the same objects as \(\mathbf {C}\), but morphisms \(X\rightarrow Y\) in \(\mathcal {K}{\!\!}\ell (M)\) are morphisms \(X\rightarrow MY\) in \(\mathbf {C}\). The identity map \(X\rightarrow X\) in \(\mathcal {K}{\!\!}\ell (M)\) is \(M\)’s unit \(\eta _{X}:X\rightarrow M X\); and composition \(g \circ f\) in \(\mathcal {K}{\!\!}\ell (M)\) uses \(M\)’s multiplication: \(g \circ f = \mu \mathrel {\circ }Mg \mathrel {\circ }f\). There is a forgetful functor \(\mathcal {U}:\mathcal {K}{\!\!}\ell (T)\rightarrow \mathbf {C}\), sending \(X\) to \(T X\) and \(f\) to \(\mu \mathrel {\circ }T f\). This functor has a left adjoint \(\mathcal {J}\), given by \(\mathcal {J}X = X\) and \(\mathcal {J}f = \eta \mathrel {\circ }f\). The Kleisli category \(\mathcal {K}{\!\!}\ell (M)\) inherits coproducts from the underlying category \(\mathbf {C}\). More precisely, for every objects \(X\) and \(Y\) their coproduct \(X+Y\) in \(\mathbf {C}\) is also a coproduct in \(\mathcal {K}{\!\!}\ell (M)\) with the injections \(\mathcal {J}\mathsf {inl}\) and \(\mathcal {J}\mathsf {inr}\).
2.2 Distributive Laws and Liftings
The most interesting examples of the theory that we will present in Sect. 4 concern coalgebras for functors \({\widehat{H}}:\mathcal {K}{\!\!}\ell (M) \rightarrow \mathcal {K}{\!\!}\ell (M)\) that are obtained as liftings of endofunctors \(H\) on \(\mathbf {Sets}\). Formally, given a monad \(M:\mathbf {C}\rightarrow \mathbf {C}\), a lifting of \(H :\mathbf {C}\rightarrow \mathbf {C}\) to \(\mathcal {K}{\!\!}\ell (M)\) is an endofunctor \({\widehat{H}}:\mathcal {K}{\!\!}\ell (M) \rightarrow \mathcal {K}{\!\!}\ell (M)\) such that \(\mathcal {J}\circ H = {\widehat{H}} \circ \mathcal {J}\). The lifting of a monad \((T,\eta , \mu )\) is a monad \(({\widehat{T}},{\widehat{\eta }}, {\widehat{\mu }})\) such that \({\widehat{T}}\) is a lifting of \(T\) and \({\widehat{\eta }}\), \({\widehat{\mu }}\) are given on \(X \in \mathcal {K}{\!\!}\ell (M)\) (i.e. \(X \in \mathbf {Sets}\)) respectively as \(\mathcal {J}(\eta _{X})\) and \(\mathcal {J}(\mu _{X})\).
The following “folklore” result gives an alternative description of distributive laws in terms of liftings to Kleisli categories, see also [15, 20] or [4].
Proposition 2.2
 1.
For every endofunctor \(T\) on \(\mathbf {C}\), there is a bijective correspondence between liftings of \(T\) to \(\mathcal {K}{\!\!}\ell (M)\) and distributive laws of \(T\) over \(M\).
 2.
For every monad \((T,\eta ^T,\mu ^T)\) on \(\mathbf {C}\), there is a bijective correspondence between liftings of \((T,\eta ^T,\mu ^T)\) to \(\mathcal {K}{\!\!}\ell (M)\) and distributive laws of \(T\) over \(M\).
In what follows we shall simply write \({\widehat{H}}\) for the lifting of an endofunctor \(H\).
Proposition 2.3
([12]). Let \(M :\mathbf {C}\rightarrow \mathbf {C}\) be a monad and \(H :\mathbf {C}\rightarrow \mathbf {C}\) be a functor with a lifting \({\widehat{H}} :\mathcal {K}{\!\!}\ell (M) \rightarrow \mathcal {K}{\!\!}\ell (M)\). If \(H\) has an initial algebra Open image in new window (in \(\mathbf {C}\)), then \(\mathcal {J}\iota :{\widehat{H}}I\rightarrow I\) is an initial algebra for \({\widehat{H}}\) (in \(\mathcal {K}{\!\!}\ell (M)\)).
In our examples, we will often consider the free monad (Example 2.1.3) \({{\widehat{H}}^*}\) generated by a lifted functor \({\widehat{H}}\). The following result will be pivotal.
Proposition 2.4
Let \(H :\mathbf {C}\rightarrow \mathbf {C}\) be a functor and \(M :\mathbf {C}\rightarrow \mathbf {C}\) be a monad such that there is a lifting \({\widehat{H}} :\mathcal {K}{\!\!}\ell (M) \rightarrow \mathcal {K}{\!\!}\ell (M)\). Then the free monad \({H^*} :\mathbf {C}\rightarrow \mathbf {C}\) lifts to a monad \({\widehat{{H^*}}} :\mathcal {K}{\!\!}\ell (M) \rightarrow \mathcal {K}{\!\!}\ell (M)\). Moreover, \({\widehat{{H^*}}} = {{\widehat{H}}^*}\).
Recall from [12] that for every polynomial endofunctor \(H\) on \(\mathbf {Sets}\) there exists a canonical distributive law of \(H\) over any commutative monad \(M\) (equivalently, a canonical lifting of \(H\) to \(\mathcal {K}{\!\!}\ell (M)\)); this result was later extended to socalled analytic endofunctors of \(\mathbf {Sets}\) (see [19]). This can be used in our applications since the powerset functor \(\mathcal {P}\) is commutative, and so is the exception monad \(\mathcal E\) iff \(E = 1\).
2.3 \(\mathbf {Cppo}\)enriched Categories
For our general theory we are going to assume that we work in a category where the homsets carry a cpo structure. Recall that a cpo is a partially ordered set in which all \(\omega \)chains have a join. A cpo with bottom is a cpo with a least element \(\bot \). A function between cpos is called continuous if it preserves joins of \(\omega \)chains. Cpos with bottom and continuous maps form a category that we denote by \(\mathbf {Cppo}\).
In our applications, \(\mathbf {C}\) will mostly be a Kleisli category for a monad on \(\mathbf {Sets}\). Throughout this subsection we assume that \(\mathbf {C}\) is a \(\mathbf {Cppo}\)enriched category.
Theorem 2.5
([9]). Let \(H :\mathbf {C} \rightarrow \mathbf {C}\) be a locally continuous endofunctor on the \(\mathbf {Cppo}\)enriched category \(\mathbf {C}\) whose composition is leftstrict. If an initial \(H\)algebra Open image in new window exists, then Open image in new window is a final \(H\)coalgebra.
In the sequel, we will be interested in free algebras for a functor \(H\) on \(\mathbf {C}\) and the free monad \({H^*}\) (cf. Example 2.1.3). For this observe that coproducts in \(\mathbf {C}\) are always \(\mathbf {Cppo}\)enriched, i.e. all copairing maps \([,]:\mathbf {C}(X,Y) \times \mathbf {C}(X', Y) \rightarrow \mathbf {C}(X+X',Y)\) are continuous; in fact, it is easy to show that this map is continuous in both of its arguments using that composition with the coproduct injections is continuous.
Proposition 2.6
Let \(\mathbf {C}\) be \(\mathbf {Cppo}\)enriched with composition leftstrict. Furthermore, let \(H: \mathbf {C} \rightarrow \mathbf {C}\) be locally continuous and assume that all free \(H\)algebras exist. Then the free monad \({H^*}\) is locally continuous.
2.4 Final Coalgebras in Kleisli Categories
In our applications the \(\mathbf {Cppo}\)enriched category will be the Kleisli category \(\mathbf {C} = \mathcal {K}{\!\!}\ell (M)\) of a monad on \(\mathbf {Sets}\) and the endofunctors of interest are liftings \({\widehat{H}}\) of endofunctors \(H\) on \(\mathbf {Sets}\). It is known that in this setting a final coalgebra for the lifting \({\widehat{H}}\) can be obtained as a lifting of an initial \(H\)algebra (see Hasuo et al. [12]). The following result is a variation of Theorem 3.3 in [12]:
Theorem 2.7
 (a)
\(\mathcal {K}{\!\!}\ell (M)\) is \(\mathbf {Cppo}\)enriched with composition left strict;
 (b)
\(H\) is accessible (i.e., \(H\) preserves \(\lambda \)filtered colimits for some cardinal \(\lambda \)) and has a lifting \({\widehat{H}} :\mathcal {K}{\!\!}\ell (M) \rightarrow \mathcal {K}{\!\!}\ell (M)\) which is locally continuous.
 1.
\(\mathcal {J}\iota :{\widehat{H}}I\rightarrow I\) is the initial algebra for the functor \({\widehat{H}}\);
 2.
\(\mathcal {J}\iota ^{1}:I\rightarrow {\widehat{H}}I\) is the final coalgebra for the functor \({\widehat{H}}\).
 (1)
The functor \(H:\mathbf {Sets}\rightarrow \mathbf {Sets}\) is supposed to preserve \(\omega \)colimits rather that being accessible. We use the assumption of accessibility because it guarantees the existence of all free algebras for \(H\) and for \({\widehat{H}}\), which implies also that for all \(Y \in \mathcal {K}{\!\!}\ell (M)\) an initial \({{\widehat{H}}^*}(\mathrm {Id}+Y)\)algebra exists. This property of \({{\widehat{H}}^*}\) will be needed for applying our framework of Sect. 4.
 (2)
We assume that the lifting \({\widehat{H}} :\mathcal {K}{\!\!}\ell (M) \rightarrow \mathcal {K}{\!\!}\ell (M)\) is locally continuous rather than locally monotone. We will need continuity to ensure the double dagger law in Remark 2.9. This assumption is not really restrictive since, as explained in Sect. 3.3.1 of [12], in all the meaningful examples where \({\widehat{H}}\) is locally monotone, it is also locally continuous.
Example 2.8
(NDA). Consider the powerset monad \(\mathcal {P}\) (Example 2.1.1) and the functor \(HX = A \times X + 1\) on \(\mathbf {Sets}\) (with \(1=\{\checkmark \}\)). The functor \(H\) lifts to \({\widehat{H}}\) on \(\mathcal {K}{\!\!}\ell (\mathcal {P})\) as follows: for any \(f :X \rightarrow Y\) in \(\mathcal {K}{\!\!}\ell (\mathcal {P})\) (that is \(f :X \rightarrow \mathcal {P}(Y)\) in \(\mathbf {Sets}\)), \({\widehat{H}}f :A\times X + 1 \rightarrow A \times Y +1 \) is given by \({\widehat{H}}f( \checkmark ) = \{\checkmark \}\) and \({\widehat{H}}f(\langle a,x\rangle ) = \{\langle a,y\rangle \mid y \in f( x )\}\).
Nondeterministic automata (NDA) over the input alphabet \(A\) can be regarded as coalgebras for the functor \({\widehat{H}}:\mathcal {K}{\!\!}\ell (\mathcal {P}) \rightarrow \mathcal {K}{\!\!}\ell (\mathcal {P})\). Consider, on the left, a 3state NDA, where the only final state is marked by a double circle.
It can be represented as a coalgebra \(e :X \rightarrow {\widehat{H}}X\), that is a function \(e :X \rightarrow \mathcal {P}( A\times X +1 )\), given above on the right, which assigns to each state \(x\in X\) a set which: contains \(\checkmark \) if \(x\) is final; and \(\langle a,y\rangle \) for all transitions \(x\xrightarrow {a} y\).
It is easy to see that \(M=\mathcal {P}\) and \(H\) above satisfy the conditions of Theorem 2.7 and therefore both the final \({\widehat{H}}\)coalgebra and the initial \({\widehat{H}}\)algebra are the lifting of the initial algebra for the functor \(H X=A \times X +1\), given by \(A^*\) with structure \(\iota :A \times A^{*} +1 \rightarrow A^{*}\) which maps \(\langle a,w\rangle \) to \(aw\) and \(\checkmark \) to \(\epsilon \).
2.5 Monads with Fixpoint Operators
In order to develop our theory of systems with internal behavior, we will adopt an equational perspective on coalgebras. In the sequel we recall some preliminaries on this viewpoint.
Remark 2.9
Example 2.10
(Least fixpoint solutions). Let \(T: \mathbf {C}\rightarrow \mathbf {C}\) be a locally continuous monad on the \(\mathbf {Cppo}\)enriched category \(\mathbf {C}\). Then \(T\) is equipped with a parametrized fixpoint operator obtained by taking least fixpoints: given a morphism \(e: X \rightarrow T(X+Y)\) consider the function \(\varPhi _e\) on \(\mathbf {C}(X,TY)\) given by \(\varPhi _e(s) = \mu ^T_Y \circ T[s,\eta ^T_Y] \circ e\). Then \(\varPhi _e\) is continuous and we take \({e}^\dag \) to be the least fixpoint of \(\varPhi _e\). Since \({e}^\dag = \varPhi _e({e}^\dag )\), Eq. (1) holds, and it follows from the argument in Theorem 8.2.15 and Exercise 8.2.17 in [6] that the operator \(e \mapsto {e}^\dag \) satisfies the axioms of iteration theories (or Elgot monads, respectively). In particular the double dagger law holds for the least fixpoint operator \(e \mapsto {e}^\dag \).
3 Motivating Examples
The work of [12] bridged a gap in the theory of coalgebras: for certain functors, taking the final coalgebra directly in \(\mathbf {Sets}\) does not give the right notion of equivalence. For instance, for NDA, one would obtain bisimilarity instead of language equivalence. The change to Kleisli categories allowed the recovery of the usual language semantics for NDA and, more generally, led to the development of coalgebraic trace semantics.
In the Introduction we argued that there are relevant examples for which this approach still yields the unwanted notion of equivalence, the problem being that it does not consider the extra algebraic structure on the label set. In the sequel, we motivate the reader for the generic theory we will develop by detailing two case studies in which this phenomenon can be observed: NDA with \(\epsilon \)transitions and NDA with word transitions. Later on, in Example 5.7, we will also consider Mazurkiewicz traces [17].
NDA with \(\epsilon \text {}transition\). In the world of automata, \(\epsilon \)transitions are considered in order to enable easy composition of automata and compact representations of languages. These transitions are to be interpreted as the empty word when computing the language accepted by a state. Consider, on the left, the following simple example of an NDA with \(\epsilon \)transitions, where states \(x\) and \(y\) just make \(\epsilon \) transitions. The intended semantics in this example is that all states accept words in \(a^*\).
Note that, more explicitly, these are just NDA where the alphabet has a distinguished symbol \(\epsilon \). So, they are coalgebras for the functor \({\widehat{H + \mathrm {Id}}}:\mathcal {K}{\!\!}\ell (\mathcal {P}) \rightarrow \mathcal {K}{\!\!}\ell (\mathcal {P})\) (where \(H\) is the functor of Example 2.8), i.e. functions \(e :X \rightarrow \mathcal {P}( (A \times X + 1) +X) \cong \mathcal {P}( (A+1) \times X + 1)\), as made explicit for the above automaton in the middle.
The final coalgebra for \({\widehat{H+\mathrm {Id}}}\) is simply \((A+1)^{*}\) and the final map \({!_{e}} :X \rightarrow (A+1)^{*}\) assigns to each state the language in \((A+1)^{*}\) that it accepts. However, the equivalence induced by \({!_{e}}\) is too fine grained: for the automata above, \({!_{e}}\) maps \(x\), \(y\) and \(z\) to three different languages (on the right), where the number of \(\epsilon \) plays an explicit role, but the intended semantics should disregard \(\epsilon \)’s.
NDA with word transitions. This is a variation on the motivating example of the introduction: instead of languages, transitions are labeled by words^{1}. Formally, consider again the functor \(H\) from Example 2.8. Then NDA with word transitions are coalgebras for the functor \({\widehat{{H^*}}} :\mathcal {K}{\!\!}\ell (\mathcal {P}) \rightarrow \mathcal {K}{\!\!}\ell (\mathcal {P})\), that is, functions \(e :X \rightarrow \mathcal {P}(A^{*} \times X + A^{*})\cong \mathcal {P}(A^{*}\times (X+1))\). We observe that they are like NDA but (1) transitions are labeled by words in \(A^{*}\), rather than just symbols of the alphabet \(A\), and (2) states have associated output languages, rather than just \(\checkmark \). We will draw them as ordinary automata plus an arrow \(\mathop {\Rightarrow }\limits ^{L}\) to denote the output language of a state (no \(\Rightarrow \) stands for the empty language). For an example, consider the following word automaton and associated transition function \(e\).
The semantics of NDA with word transitions is given by languages over \(A\), obtained by concatenating the words in the transitions and ending with a word from the output language. For instance, \(x\) above accepts word \(abc\) but not \(ab\).
4 Canonical Fixpoint Solutions
In this section we lay the foundations of our approach. A construction is introduced assigning canonical solutions to coalgebras seen as equation morphisms (cf. Sect. 2.5) in a \(\mathbf {Cppo}\)enriched setting. We will be working under the following assumptions.
Assumption 4.1
Let \(\mathbf {C}\) be a \(\mathbf {Cppo}\)enriched category with coproducts and composition leftstrict. Let \(T\) be a locally continuous monad on \(\mathbf {C}\) such that, for all object \(Y\), an initial algebra for \(T(\mathrm {Id}+Y)\) exists.
As seen in Example 2.10, in this setting an equation morphism \(e: X \rightarrow T(X+Y)\) may be given the least solution. Here, we take a different approach, exploiting the initial algebrafinal coalgebra coincidence of Theorem 2.5.
We call the composite Open image in new window the canonical fixpoint solution of \(e\). In the following we check that the canonical fixpoint solution is indeed a solution of \(e\), in fact, it coincides with the least solution.
Proposition 4.2
Given a morphism \(e: X \rightarrow T(X+Y)\), then the least solution of \(e\) as in Example 2.10 is the canonical fixpoint solution: Open image in new window as in (3).
As recalled in Example 2.10, the least fixpoint operator \(e \mapsto {e}^\dag \) satisfies the double dagger law. Thus Proposition 4.2 yields the following result^{2}.
Corollary 4.3
Let \(\mathbf {C}\) and \(T : \mathbf {C}\rightarrow \mathbf {C}\) be as in Assumption 4.1. Then the canonical fixpoint operator \(e \mapsto {e}^\dag \) associated with \(T\) satisfies the double dagger law.
We now introduce a factorisation result on the operator \(e \mapsto {e}^\dag \), which is useful for comparing solutions provided by different monads connected via a monad morphism.
Proposition 4.4
4.1 A Theory of Systems with Internal Behavior
We now use canonical fixpoint solutions to provide an abstract theory of systems with internal behavior, that we will later instantiate to the motivating examples of Sect. 3. Throughout this section, we will develop our framework for the following ingredients.
Assumption 4.5

the free monad \({F^*} :\mathbf {C}\rightarrow \mathbf {C}\) (cf. Example 2.1.3), for which we suppose that an initial \({F^*}(\mathrm {Id}+Y)\)algebra exists for all \(Y\in \mathbf {C}\);

for a fixed \(X \in \mathbf {C}\), the exception monad \(FX + \mathrm {Id}:\mathbf {C}\rightarrow \mathbf {C}\) (cf. Example 2.1.2), for which we suppose that an initial \(FX+\mathrm {Id}+Y\)algebra exists for all \(Y\in \mathbf {C}\).
In the next proposition we verify that the construction introduced in the previous section applies to the two monads of Assumption 4.5.
Proposition 4.6
Let \(\mathbf {C}\), \(F\), \({F^*}\) and \(FX + \mathrm {Id}\) be as in Assumption 4.5. Then \(\mathbf {C}\) and the monads \({F^*}:\mathbf {C}\rightarrow \mathbf {C}\) and \(FX + \mathrm {Id}:\mathbf {C}\rightarrow \mathbf {C}\) satisfy Assumption 4.1. Thus both \({F^*}\) and \(FX + \mathrm {Id}\) are monads with canonical fixpoint solution (which satisfy the double dagger law by Corollary 4.3).
To avoid ambiguity, we denote with \(e \mapsto {e}^\dag \) the canonical fixpoint operator associated with \({F^*}\) and with \(e \mapsto {e}^\ddag \) the one associated with \(FX + \mathrm {Id}\).
We will employ the additional structure of those two monads for the analysis of \(F\) systems with internal transitions. An \(F\)system is simply an \(F\)coalgebra \(e: X \rightarrow FX\), where we take the operational point of view of seeing \(X\) as a space of states and \(F\) as the transition type of \(e\). An \(F\)system with internal transitions is an \((F+ \mathrm {Id})\)coalgebra \(e : X \rightarrow FX +X\), where the component \(X\) of the codomain is targeted by those transitions representing the internal (noninteracting) behavior of system \(e\).
A key observation for our analysis is that \(F\)systems—with or without internal transitions—enjoy a standard representation as \({F^*}\)systems, that is, coalgebras of the form \(e: X \rightarrow {F^*}X\).
Definition 4.7
 Given an \(F\)system \(e :X \rightarrow FX\), define \(\bar{e} :X \rightarrow {F^*}X\) as

Given an \(F\)system with internal transitions \(e : X \rightarrow FX + X\), define \(\bar{e} : X \rightarrow {F^*}X\) as Open image in new window .
 §1

We supply a uniform trace semantics for \(F\)systems, possibly with internal transitions, and \({F^*}\)systems, based on the canonical fixpoint solution operator of \({F^*}\).
 §2

We use the canonical fixpoint operator of \(FX + \mathrm {Id}\) to transform any \(F\)system \(e: X \rightarrow FX + X\) with internal transitions into an \(F\)system \({e}\!\setminus \! \epsilon : X \rightarrow FX\) without internal transitions.
 §3

We prove that the transformation of §2 is sound with respect to the semantics of §1.
§1: Uniform trace semantics. The canonical fixpoint semantics of \(F\)systems, with or without internal transitions, and \({F^*}\)systems is defined as follows.
Definition 4.8

For an \({F^*}\)system \(e:X \rightarrow {F^*}X\), its semantics \([\![ e ]\!] :X \rightarrow {F^*}0\) is defined as \({e}^\dag \) (note that \(e\) can be seen as an equation morphism for \({F^*}\) on parameter \(Y = 0\)).

For an \(F\)system \(e:X \rightarrow FX\), its semantics \([\![ e ]\!] :X \rightarrow F0\) is defined as \({\bar{e}}^\dag = {(\kappa _X \circ e)}^\dag \).

For an \(F\)system with internal transitions \(e:X \rightarrow FX+X\), its semantics \([\![ e ]\!] :X \rightarrow F0\) is defined as \({\bar{e}}^\dag = {([\kappa _X,\eta _X^{{F^*}}] \circ e)}^\dag \).
The underlying intuition of Definition 4.8 is that canonical fixpoint solutions may be given an operational understanding. Given an \({F^*}\)system \(e: X \rightarrow {F^*}X\), its solution \({e}^\dag : X \rightarrow {F^*}0\) is formally defined as the composite Open image in new window (cf. (3)): we can see the coalgebra morphism \({!_{e}}\) as a map that gives the behavior of system \(e\) without taking into account the structure of labels and the algebra morphism Open image in new window as evaluating this structure, e.g. flattening words of words, using the initial algebra \(\mu _0 : {F^*}{F^*}0 \rightarrow {F^*}0\) for the monad \({F^*}\). In particular, the action of Open image in new window is what makes our semantics suitable for modeling “algebraic” operations on internal transitions such as \(\epsilon \)elimination, as we will see in concrete instances of our framework.
Remark 4.9
The canonical fixpoint semantics of Definition 4.8 encompasses the framework for traces in [12], where the semantics of an \(F\)system \(e : X \rightarrow FX\)—without internal transitions—is defined as the unique morphism \({!_{e}}\) from \(X\) into the final \(F\)coalgebra \({F^*}0\). Indeed, using finality of \({F^*}0\), it can be shown that \({!_{e}} = [\![ e ]\!]\). Theorem 4.10 below guarantees compatibility with Assumption 4.5.
The following result is instrumental in our examples and in comparing our theory with the one developed in [12] for trace semantics in Kleisli categories.
Theorem 4.10
 (a)
\(\mathcal {K}{\!\!}\ell (M)\) is \(\mathbf {Cppo}\)enriched and composition is left strict;
 (b)
\(H\) is accessible and has a locally continuous lifting \({\widehat{H}} :\mathcal {K}{\!\!}\ell (M) \rightarrow \mathcal {K}{\!\!}\ell (M)\).
Example 4.11
Both \({!_{e}}\) and Open image in new window can be defined uniquely by the commutativity of the above diagram. We have already defined \({!_{e}}\) in diagram (2) and the definition of Open image in new window is given in the righthand square of the above diagram. The isomorphism in the middle and \(\mu _0\) were defined in Sect. 3.
The key role played by the monad structure on \(A^*\) can be appreciated by comparing the graphs of \({!_{e}}\) and Open image in new window as in the example above. The algebra morphism Open image in new window maps values from the initial algebra \((A^*)^*\times A^*\) for the endofunctor \({\widehat{{H ^*}}}\) into the initial algebra \(A^*\) for the monad \({\widehat{{H ^*}}}\): its action is precisely to take into account the additional equations encoded by the algebraic theory of the monad \({\widehat{{H ^*}}}\). For instance, we can see the mapping of \( {!_{e}}(u) = \{([\epsilon ,ab],c)\}\) into the word \(abc\) as the result of concatenating the words \(\epsilon \), \(ab\), \(c\) and then quotienting out of the equation \(\epsilon abc = abc\) in the monoid \(A^*\).
Remark 4.12
(Multiple Solutions). The canonical solution \({e}^\dag \) is not the unique solution. Indeed, the uniqueness of \({!_{e}}\) in the lefthand square and of Open image in new window in the righthand square of the diagram above does not imply the uniqueness of \(e^\dagger \). To see this, take for instance the automaton
Both \(s(x)=\emptyset \) and \(s'(x)=A^{*}\) are solutions. The canonical one is the least one, i.e., \(e^{\dagger }(x)=s(x)=\emptyset \).
Example 4.13
(Semantics of NDA with \({\epsilon }\text {}transitions\) ). NDA with \(\epsilon \)transitions are modeled as \({\widehat{H + \mathrm {Id}}}\)coalgebras on \(\mathcal {K}{\!\!}\ell (M)\), where \(H\) and \(M\) are defined as for NDA (see Example 2.8). We can define the semantics of NDA with \(\epsilon \)transitions via canonical fixpoint solutions as \([\![ e ]\!] = {\bar{e}}^\dag \), where \(\bar{e}\) is the automaton with word transitions corresponding to \(e\) (see Definition 4.7). The first example in Sect. 3 would be represented as follows,
where \(\eta \) and \(\kappa \) are defined as at the end of Sect. 3. By using (5), it can be easily checked that the semantics \([\![ e ]\!]={\bar{e}}^\dag :X \rightarrow \mathcal {P}A^{*}\) maps \(x\), \(y\) and \(z\) into \(a^{*}\).
Example 4.14
Remark 4.15
Note that \(\epsilon \)elimination was recently defined using a trace operator on a Kleisli category [3, 11, 22]. These works are based on the trace semantics of Hasuo et al. [12] and tailored for \(\epsilon \)elimination. They do not take into account any algebraic structure of the labels and are hence not applicable to the other examples we consider in this paper.
Proposition 4.16
Proof
This follows simply by an application of Proposition 4.4 to \({e}\!\setminus \! \epsilon = e^\ddagger \) and \(\gamma = \pi \) with \(Y = 0\). \(\square \)
We are now in position to show point §3: soundness of \(\epsilon \)elimination.
Theorem 4.17
Proof
5 Quotient Semantics
When considering behavior of systems it is common to encounter spectrums of successively coarser equivalences. For instance, in basic process algebra trace equivalence can be obtained by quotienting bisimilarity with an axiom stating the distributivity of action prefixing by nondeterminism [21]. There are many more examples of this phenomenon, including Mazurkiewicz traces, which we will describe below.
In this section we develop a variant of the canonical fixpoint semantics, where we can encompass in a uniform manner behaviors which are quotients of the canonical behaviors of the previous section (that is, the object \({F^*}0\)).
Assumption 5.1
Let \(\mathbf {C}\), \(F\), \({F^*}\) and \(FX+\mathrm {Id}\) be as in Assumption 4.5 and \(\gamma :{F^*}\Rightarrow Q\) a monad quotient for some monad \(Q\). Moreover, suppose that for all \(Y \in \mathbf {C}\) an initial \(Q(\mathrm {Id}+Y)\)algebra exists.
Observe that, as Assumption 5.1 subsumes Assumption 4.5, we are within the framework of previous section, with the canonical fixpoint solution of \({F^*}\) providing semantics for \({F^*}\) and \(F\)systems. For our extension, one is interested in \(Q0\) as a semantic domain coarser than \({F^*}0\) and we aim at defining an interpretation for \(F\)systems in \(Q0\). To this aim, we first check that \(Q\) has canonical fixpoint solutions.
Proposition 5.2
Let \(\mathbf {C}\), \(F\), \(Q\) and \(\gamma : {F^*} \Rightarrow Q\) be as in Assumption 5.1. Then Assumption 4.1 holds for \(\mathbf {C}\) and \(Q\), meaning that \(Q\) is a monad with canonical fixpoint solutions (which satisfy the double dagger law by Corollary 4.3).
We use the notation \(e \mapsto {e}^{\sim }\) for the canonical fixpoint operator of \(Q\). This allows us to define the semantics of \(Q\)systems, analogously to what we did for \({F^*}\)systems in Definition 4.8. Moreover, the connecting monad morphism \(\gamma :{F^*} \Rightarrow Q\) yields an extension of this semantics to include also systems of transition type \({F^*}\) and \(F\).
Definition 5.3

For a \(Q\)system \(e :X \rightarrow QX\), its semantics \([\![ e ]\!]_{\sim } :X \rightarrow Q0\) is defined as \({e}^{\sim }\) (note that \(e\) can be regarded as an equation morphism for \(Q\) with \(Y=0\)).

For an \({F^*}\)system \(e:X \rightarrow {F^*}X\), its semantics \([\![ e ]\!]_{\sim }:X \rightarrow Q0\) is defined as \({(\gamma _X \circ e)}^{\sim }\).

For an \(F\)system \(e\)—with or without internal transitions—its semantics \([\![ e ]\!]_{\sim }: X \rightarrow Q0 \) is defined as \({(\gamma _X \circ \bar{e})}^{\sim }\), where \(\overline{e}\) is as in Definition 4.7.
The Factorisation Lemma (Proposition 4.4) allows us to establish a link between the canonical fixpoint semantics \([\![  ]\!]\) and the quotient semantics \([\![  ]\!]_{\sim }\).
Proposition 5.4
As a corollary we obtain that eliminating internal transitions is sound also for quotient semantics.
Corollary 5.5
The quotient semantics can be formulated in a Kleisli category \(\mathcal {K}{\!\!}\ell (M)\) by further assuming \((c)\) below. This is needed to lift a quotient of monads from \(\mathbf {Sets}\) to \(\mathcal {K}{\!\!}\ell (M)\).
Theorem 5.6
 (c)for each set \(X\), there is a map \(\lambda _X':RMX \rightarrow MRX\) making the following commute.
 1.
there is a monad \({\widehat{R}}:\mathcal {K}{\!\!}\ell (M) \rightarrow \mathcal {K}{\!\!}\ell (M)\) lifting \(R\) and a monad morphism \({\widehat{\xi }} :{{\widehat{H}}^*} \Rightarrow {\widehat{R}}\) defined as \({\widehat{{\xi }_X}}=\mathcal {J}({\xi }_X)\);
 2.
\(\mathcal {K}{\!\!}\ell (M)\), \({\widehat{H}}\), \({{\widehat{H}}^*}\), \({\widehat{H}}\mathcal {J}X + \mathrm {Id}\) (for a given set \(X\)), \({\widehat{R}}\) and \({\widehat{\xi }} :{{\widehat{H}}^*} \Rightarrow {\widehat{R}}\) satisfy Assumption 5.1.
Notice that condition (c) and the first part of statement 1 are related to [7, Theorem 1]; however, that paper treats distributive laws of monads over endofunctors.
Example 5.7
(Mazurkiewicz traces). This example, using a known equivalence in concurrency theory, illustrates the use of the quotient semantics developed in Sect. 5.
The trace semantics proposed by Mazurkiewicz [17] accounts for concurrent actions. Intuitively, let \(A\) be the action alphabet and \(a,b\in A\). We will call \(a\) and \(b\) concurrent, and write \(a\equiv b\), if the order in which these actions occur is not relevant. This means that we equate words that only differ in the order of these two actions, e.g. \(uabv\) and \(ubav\) denote the same Mazurkiewicz trace.
6 Discussion
The framework introduced in this paper provides a uniform way to express the semantics of systems with internal behaviour via canonical fixpoint solutions. Moreover, these solutions are exploited to eliminate internal transitions in a sound way, i.e., preserving the semantics. We have shown our approach at work on NDA with \(\epsilon \)transitions but, by virtue of Theorem 4.10, it also covers all the examples in [12] (like probabilistic systems) and more (like the weighted automata on positive reals of [22]).
It is worth noticing that, in principle, our framework is applicable also to examples that do not arise from Kleisli categories. Indeed the theory of Sect. 4 is formulated for a general category \(\mathbf {C}\): Assumption 4.5 only requires \(\mathbf {C}\) to be \(\mathbf {Cppo}\)enriched and the monad \(T\) to be locally continuous. The role of these assumptions is twofold: (a) ensuring the initial algebrafinal coalgebra coincidence and (b) guaranteeing that the canonical fixpoint operator \(e \mapsto {e}^\dag \) satisfies the double dagger law. If (a) implies (b), we could have formulated our theory just assuming the coincidence of initial algebra and final coalgebra and without any \(\mathbf {Cppo}\)enrichment. Condition (a) holds for some interesting examples not based on Kleisli categories, e.g. for examples in the category of join semilattices. Therefore it is of relevance to investigate the following question: given a monad \(T\) with initial algebrafinal coalgebra coincidence, under which conditions does the canonical fixpoint solution provided by \(T\) satisfy the double dagger law?
As a concluding remark, let us recall that our original question concerned the problem of modeling the semantics of systems where labels carry an algebraic structure. In this paper we have mostly been focusing on automata theory, but there are many other examples in which the information carried by the labels has relevance for the semantics of the systems under consideration: in logic programming labels are substitutions of terms; in (concurrent) constraint programming they are elements of a lattice; in process calculi they are actions representing syntactical contexts and in tile systems [10] they are morphisms in a category. We believe that our approach provides various insights towards a coalgebraic semantics for these computational models.
Footnotes
 1.
More generally, one could consider labels from an arbitrary monoid.
 2.
The equality of least and canonical fixpoint solutions can be used to state a stronger result, namely that canonical fixpoint solutions satisfy the axioms of iteration theories (cf. Example 2.10). However, the double dagger law is the only property that we need here, explaining the statement of Corollary 4.3.
 3.
Mazurkiewicz traces were defined over labelled transition systems which are similar to NDA but where every state is final. For simplicity, we consider LTS here immediately as NDA.
Notes
Acknowledgments
We are grateful to the anonymous referees for valuable comments. The work of Alexandra Silva is partially funded by the ERDF through the Programme COMPETE and by the Portuguese Foundation for Science and Technology, project ref. FCOMP010124FEDER020537 and SFRH/BPD/71956/2010. The first and the fourth author acknowledge support by project ANR 12IS0 2001 PACE.
References
 1.Adámek, J., Milius, S., Velebil, J.: Equational properties of iterative monads. Inform. Comput. 208, 1306–1348 (2010). doi: 10.1016/j.ic.2009.10.006 zbMATHGoogle Scholar
 2.Adámek, J., Milius, S., Velebil, J.: Elgot theories: a new perspective of the equational properties of iteration. Math. Structures Comput. Sci. 21(2), 417–480 (2011)zbMATHMathSciNetGoogle Scholar
 3.Asada, K., Hidaka, S., Kato, H., Hu, Z., Nakano, K.: A parameterized graph transformation calculus for finite graphs with monadic branches. In: Peña, R., Schrijvers, T. (eds.) PPDP, pp. 73–84. ACM (2013)Google Scholar
 4.Balan, A., Kurz, A.: On coalgebras over algebras. Theoret. Comput. Sci. 412(38), 4989–5005 (2011)zbMATHMathSciNetGoogle Scholar
 5.Barr, M.: Coequalizers and free triples. Math. Z. 116, 307–322 (1970)zbMATHMathSciNetGoogle Scholar
 6.Bloom, S.L., Ésik, Z.: Iteration Theories: The Equational Logic of Iterative. EATCS Monographs on Theoretical Computer Science. Springer, Heidelberg (1993)zbMATHGoogle Scholar
 7.Bonsangue, M.M., Hansen, H.H., Kurz, A., Rot, J.: Presenting distributive laws. In: Heckel and Milius [15], pp. 95–109Google Scholar
 8.Main, M.G., Melton, A.C., Mislove, M.W., Schmidt, D., Brookes, S.D. (eds.): MFPS 1993. LNCS, vol. 802. Springer, Heidelberg (1994)zbMATHGoogle Scholar
 9.Freyd, P.J.: Remarks on Algebraically Compact Categories. London Mathematical Society Lecture Notes Series, vol. 177. Cambridge University Press, London (1992)Google Scholar
 10.Gadducci, F., Montanari, U.: The tile model. In: Plotkin, G.D., Stirling, C., Tofte, M. (eds.) Proof, Language, and Interaction, pp. 133–166. MIT Press, Boston (2000)Google Scholar
 11.Hasuo, I., Jacobs, B., Sokolova, A.: Generic forward and backward simulations. In: (Partly in Japanese) Proceedings of JSSST Annual Meeting (2006)Google Scholar
 12.Hasuo, I., Jacobs, B., Sokolova, A.: Generic trace semantics via coinduction. Log. Methods Comput. Sci. 3(4:11), 1–36 (2007)MathSciNetGoogle Scholar
 13.Heckel, R., Milius, S. (eds.): Algebra and Coalgebra in Computer Science. Lecture Notes in Computer Science, vol. 8089. Springer, Heidelberg (2013)zbMATHGoogle Scholar
 14.Hopcroft, J., Motwani, R., Ullman, J.: Introduction to Automata Theory, Languages, and Computation, 3rd edn. Wesley, Lebanon (2006)Google Scholar
 15.Johnstone, P.: Adjoint lifting theorems for categories of algebras. Bull. London Math. Soc. 7, 294–297 (1975)zbMATHMathSciNetGoogle Scholar
 16.Kelly, G.M.: A unified treatment of transfinite constructions for free algebras, free monoids, colimits, associated sheaves, and so on. Bull. Austral. Math. Soc. 22, 1–83 (1980)zbMATHMathSciNetGoogle Scholar
 17.Mazurkiewicz, A.: Concurrent program schemes and their interpretation. DAIMI PB78, Computer Science Department, Aarhus University (1977)Google Scholar
 18.Mac Lane, S.: Categories for the Working Mathematician. Springer, Berlin (1971)zbMATHGoogle Scholar
 19.Milius, S., Palm, T., Schwencke, D.: Complete iterativity for algebras with effects. In: Kurz, A., Lenisa, M., Tarlecki, A. (eds.) CALCO 2009. LNCS, vol. 5728, pp. 34–48. Springer, Heidelberg (2009) Google Scholar
 20.Mulry, P.S.: Lifting theorems for Kleisli categories. In: Brookes et al. [10], pp. 304–319Google Scholar
 21.Rabinovich, A.M.: A complete axiomatisation for trace congruence of finite state behaviors. In: Brookes et al. [10], pp. 530–543Google Scholar
 22.Silva, A., Westerbaan, B.: A coalgebraic view of \(\varepsilon \)transitions. In: Heckel and Milius [15], pp. 267–281Google Scholar
 23.Sobociński, P.: Relational presheaves as labelled transition systems. In: Pattinson, D., Schröder, L. (eds.) CMCS 2012. LNCS, vol. 7399, pp. 40–50. Springer, Heidelberg (2012) Google Scholar
 24.Turi, D., Plotkin, G.: Towards a mathematical operational semantics. In: Proceedings of Logic in Computer Science (LICS’97). IEEE Computer Society (1997)Google Scholar