A (co)algebraic theory of succinct automata
Gerco van Heerdt, Joshua Moerman, Matteo Sammartino, Alexandra Silva
aa r X i v : . [ c s . F L ] M a y A (co)algebraic theory of succinct automata ✩ Gerco van Heerdt a , Joshua Moerman a,b , Matteo Sammartino a , AlexandraSilva a a University College London b Radboud University
Abstract
The classical subset construction for non-deterministic automata can be general-ized to other side-effects captured by a monad. The key insight is that both thestate space of the determinized automaton and its semantics—languages overan alphabet—have a common algebraic structure: they are Eilenberg-Moore al-gebras for the powerset monad. In this paper we study the reverse question todeterminization. We will present a construction to associate succinct automatato languages based on different algebraic structures. For instance, for classicalregular languages the construction will transform a deterministic automatoninto a non-deterministic one, where the states represent the join-irreducibles ofthe language accepted by a (potentially) larger deterministic automaton. Otherexamples will yield alternating automata, automata with symmetries, CABA-structured automata, and weighted automata.
1. Introduction
Non-deterministic automata are often used to provide compact representa-tions of regular languages. Take, for instance, the language L = { w ∈ { a, b } ∗ | | w | > rd symbol from the right is an a } . There is a simple non-deterministic automaton accepting it (below, top automa-ton) and it is not very difficult to see that the smallest deterministic automaton(below, bottom automaton) will have 8 states. s s s s aa, b a, b a, b ✩ This work was partially supported by ERC starting grant ProFoundNet (679127) and aLeverhulme Prize (PLP-2016-129).
Preprint submitted to Elsevier May 15, 2019
12 123 123414 13 124 134 ab a a aa abb bbab ab b
The labels we chose for the states of the deterministic automaton are notcoincidental—they represent the subsets of states of the non-deterministic au-tomaton that would be obtained when constructing a deterministic one usingthe classical subset construction.The question we want to study in this paper has as starting point preciselythe observation that non-deterministic automata provide compact representa-tions of languages and hence are more amenable to be used in algorithms andpromote scalability. In fact, the origin of our study goes back to our own workon automata learning [15], where we encountered large nominal automata that,in order for the algorithm to work for more realistic examples, had to be repre-sented non-deterministically. In other recent work [7, 3], different forms of non-determinism are used to learn compact representations of regular languages.This left us wondering whether other side-effects could be used to overcomescalability issues.Moggi [16] introduced the idea that monads could be used a general abstrac-tion for side-effects. A monad is a triple (
T, η, µ ) in which T is an endofunctorover a category whose objects can be thought of as capturing pure computations.The monad is equipped with a unit η : X → T X , a natural transformation thatenables embedding any pure computation into an effectful one, and a multi-plication µ : T T X → T X that allows flattening nested effectful computations.Examples of monads capturing side-effects include powerset (non-determinism)and distributions (randomness).Monads have been used extensively in programming language semantics (seee.g. [22] and references therein). More recently, they were used in categoricalstudies of automata theory [6]. One example of a construction in which theyplay a key role is a generalization of the classical subset construction to a classof automata [21, 20], which we will describe next.The classical subset construction, connecting non-deterministic and deter-ministic automata, can be described concisely by the following diagram. X P ( X ) 2 A ∗ × P ( X ) A × (2 A ∗ ) Aδ {−} δ ♯ l <ǫ ? ,∂> id × l A We omit initial states and represent a non-deterministic automaton as a pair(
X, δ ) where X is the state space and δ : X → × P ( X ) is the transitionfunction which has in the first component the (non-)final state classifier. Thelanguage semantics of a non-deterministic automaton ( X, δ ) is obtained by firstconstructing a deterministic automaton ( P ( X ) , δ ♯ ) which has a larger state space2onsisting of subsets of the original state space and then computing the acceptedlanguage of the determinized automaton. The language map l associating the ac-cepted language to a state is a universal map: for every deterministic automaton( Q, Q → × Q A ) the map l is the unique map into the automaton of languages(2 A ∗ , A ∗ <ǫ ? ,∂> −−−−−→ × (2 A ∗ ) A ).The universal property of the automaton of languages inspired the develop-ment of a categorical generalization of automata theory, including of the subsetconstruction which we detail below. In particular, we can consider general au-tomata as pairs ( X, X t −→ F X ) where the transition dynamics t is parametric ona functor F . Such pairs are usually called coalgebras for the functor F [18]. Fora wide class of functors F , the category of coalgebras has a final object (Ω , ω ),the so-called final coalgebra, which plays the analogue role to languages.The classical subset construction was generalized in previous work [21] byreplacing deterministic automata with coalgebras for a functor F and the pow-erset monad with a suitable monad T . As above, it can be summarized in adiagram: X T X Ω F T X F Ω δ η δ ♯ l ωF l The monad T will be the structure we will explore to enable succinct represen-tations. The crucial ingredient in generalizing the subset construction was theobservation that the target of the transition dynamics—2 × P ( − ) A —and theset of languages—2 A ∗ —both have a complete join-semilattice structure. Thisenables one to define the determinized automaton as a unique lattice extensionof the non-deterministic one, and, moreover, the language map l preserves thesemantics: l ( { s , s } ) = l ( { s } ) ∪ l ( { s } ).This latter somewhat trivial observation was also exploited in the work ofBonchi and Pous [8] in defining an efficient algorithm for language equivalence ofNFAs by using coinduction-up-to. Join-semilattices are precisely the Eilenberg-Moore algebras of the powerset monad, and one can show that if a functor hasa final coalgebra in Set , this can be lifted to the category of Eilenberg-Moorealgebras of a monad T ( T -algebras). This makes it possible to construct themore general diagram above, where the coalgebra structure is generalized usinga functor F and a monad T . The only assumptions for the existence of T -algebramaps δ ♯ and l are the existence of a final coalgebra for F in Set and that
F T X can be given a T -algebra structure.In this paper we ask the reverse question—given a deterministic automaton,if we assume the state space has a join-semilattice structure, can we build a corre-sponding succinct non-deterministic one? More generally, given an F -coalgebrain the category of T -algebras, can we build a succinct F T -coalgebra in the basecategory that represents the same behavior?We will provide an abstract framework to understand this construction,based on previous work by Arbib and Manes [4]. Our abstract framework re-lies on alternative, more modern, presentation of some of their results. Due toour focus on set-based structures, we will conduct our investigation within thecategory
Set , which enables us to provide effective procedures. This does meanthat not all of the results due to Arbib and Manes will be given in their original3enerality. We present a comprehensive set of examples that will illustrate theversatility of the framework. We also discuss more algorithmic aspects that areessential if the present framework is to be used as an optimization, for instanceas part of a learning algorithm.After recalling basic facts about monads and structured automata in Sec-tion 2, the rest of this paper is organized as follows: • In Section 3 we introduce a general notion of generators for a T -algebra,and we show that automata whose state space form a T -algebra—which wecall T -automata—admit an equivalent T -succinct automaton , defined overgenerators. We also characterize minimal generators and give a conditionunder which they are globally minimal in size. • In Section 4 we give an effective procedure to find a minimal set of genera-tors for a T -algebra, and we present an algorithm that uses that procedureto compute the T -succinct version of a given T -automaton. The algorithmworks by first minimising the T -automaton: the explicit algebraic structureallows states that correspond to algebraic combinations of other states tobe detected, and then discarded when generators are computed. • In Section 5 we show how the algorithm of Section 4 can be applied to“plain” finite automata—without any algebraic structure—in order to de-rive an equivalent T -succinct automaton. We conclude with a result aboutthe compression power of our construction: it produces an automaton thatis at least as small as the minimal version of the original automaton. • Finally, in Section 6 we give several examples, and in Section 7 we discussrelated and future work.
2. Preliminaries
Side-effects and different notions of non-determinism can be convenientlycaptured as a monad T on a category C . A monad T = ( T, µ, η ) is a tripleconsisting of an endofunctor T on C and two natural transformations: a unit η : Id ⇒ T and a multiplication µ : T ⇒ T . They satisfy the following laws: µ ◦ ηT = id = µ ◦ T η µ ◦ µT = µ ◦ T µ.
An example is the triple ( P , {−} , S ) where P denotes the powerset functor in Set that assigns to each set the set of all its subsets, {−} is the function thatreturns a singleton set, and S is just union of sets.Given a monad T , the category of C T of Eilenberg-Moore algebras over T , orsimply T -algebras, has as objects pairs ( X, h ) consisting of an object X , calledcarrier, and a morphism h : T X → X such that h ◦ µ X = h ◦ T h and h ◦ η X = id X .A T -homomorphism between two T -algebras ( X, h ) and (
Y, k ) is a morphism f : X → Y such that f ◦ h = k ◦ T f .We will often refer to a T -algebra ( X, h ) as X if h is understood or if itsspecific definition is irrelevant. Given an object X , ( T X, µ X ) is a T -algebracalled the free T -algebra on X . Given an object U and a T -algebra ( V, v ), thereis a bijective correspondence between T -algebra homomorphisms T U → V andmorphisms U → V : for a T -algebra homomorphism f : T U → V , define f † =4 ◦ η : U → V ; for a morphism g : U → V , define g ♯ = v ◦ T g : T U → V . Then g ♯ is a T -algebra homomorphism called the free T -extension of g , and we have f † ♯ = f g ♯ † = g. (1)Furthermore, for all objects S and morphisms h : S → U , g ♯ ◦ T h = ( g ◦ h ) ♯ . (2) Example 2.1.
For the monad P the associated Eilenberg-Moore category isthe category of (complete) join-semilattices. Given a set X , the free P -algebraon X is the join-semilattice ( P X, S ) of subsets of X with the union operationas join.Although some results are completely abstract, the central definition of min-imal generators in Section 3 is specific to monads T on the category Set . There-fore we restrict ourselves to this setting. More precisely, we consider automataover a finite alphabet A with outputs in a set O . In order to define automatain Set T as (pointed) coalgebras for the functor O × ( − ) A , we need to lift thisfunctor from Set to Set T . Such a lifting corresponds to a distributive law of T over O × ( − ) A [see e.g., 13]. A distributive law of the monad T over a functor F : Set → Set is a natural transformation ρ : T F ⇒ F T satisfying ρ ◦ ηF = F η and
F µ ◦ ρT ◦ T ρ = ρ ◦ µF . In most examples we will define a T -algebrastructure β : T O → O on O , which is well known to induce a distributive law ρ : T ( O × ( − ) A ) ⇒ O × T ( − ) A given by ρ X = T ( O × X A ) h T π ,T π i −−−−−−−→ T O × T ( X A ) β × ρ ′ X −−−−→ O × T ( X ) A (3)for any set X , where ρ ′ ( U )( a ) = T ( λf : A → X.f ( a )). In general, we assumean arbitrary distributive law ρ : T ( O × ( − ) A ) ⇒ O × T ( − ) A , which gives us thefollowing notion of automaton. Definition 2.2 ( T -automaton) . A T -automaton is a triple ( X, i : 1 → X, δ : X → O × X A ), where X is an object of Set T denoting the state space of the au-tomaton, i is a function designating the initial state, and δ is a T -algebra mapassigning an output and transitions to each state.Notice that the initial state map i : 1 → X in the above definition is notrequired to be a T -algebra map. However, it corresponds to the T -algebra map i ♯ : T → X . Thus, a T -automaton is an automaton in Set T .The functor F ( X ) = O × X A has a final coalgebra in Set T [12] that can beused to define the language accepted by a T -automaton. Definition 2.3 (Language accepted) . Given a T -automaton ( X, i : 1 → X, δ : X → O × X A ), the language accepted by X is l ◦ i : 1 → O A ∗ , where l is the finalcoalgebra map. In the diagram below, ω is the final coalgebra.1 X O A ∗ ω ( ϕ ) = ( ϕ ( ε ) , λa w.ϕ ( aw )) l ( x )( ε ) = π ( δ ( x )) O × X A O × ( O A ∗ ) A l ( x )( aw ) = l ( π ( δ ( x ))( a ))( w ) i δ l ω id × l A We use ε to denote the empty word. 5f the monad T is finitary, then the category Set T is locally finitely pre-sentable, and hence it admits (strong epi, mono)-factorizations [2]. As in [4], weuse these factorizations to quotient the state-space of an automaton under lan-guage equivalence. The transition structure, γ , is obtained by diagonalizationvia the factorization system. Diagramatically:1 X M O A ∗ O × X A O × M A O × ( O A ∗ ) Ai jδ e γ m ω id × e A id × m A (4)Here the epi e and mono m are obtained by factorizing the final coalgebra map l : X → O A ∗ . We call the quotient automaton ( M, j, γ ) the observable quotient of (
X, i, δ ). T -succinct automata Given a T -automaton X = ( X, i, δ ), our aim is to obtain an equivalentautomaton in
Set with transition function Y → O × T ( Y ) A , where Y is smallerthan X . The key idea is to find generators for X . Our definition of generatorsis equivalent to the definition of a scoop due to Arbib and Manes [4, Section 7,Definition 8]. Definition 3.1 (Generators for an algebra) . We say that a set G is a set ofgenerators for a T -algebra X whenever there exists a function g : G → X suchthat g ♯ : T G → X is a split epi in Set .The intuition of requiring a split epi is that every element of X can now bedecomposed into a “combination” (defined by T ) of elements of G . We show twosimple results on generators, which will allow us to find initial sets of generatorsfor a given T -algebra. Lemma 3.2.
The carrier of any T -algebra X is a set of generators for it.Proof. Let
T X χ −→ X be the T -algebra structure on X . Then id X satisfies id ♯X = χ , and χ is a split epi because it is required to satisfy χ ◦ η X = id X . Lemma 3.3.
Any set X is a set of generators for the free T -algebra T X .Proof.
Follows directly from the fact that η X : X → T X satisfies η ♯X = id T X .Once we have a set of generators G for X , we can define an equivalent freerepresentation of X , that is, an automaton whose state space is freely generatedfrom G . Here, we are abusing notation and using O and A for both the objects in Set T and in thebase category Set . In particular, we use
T C to also denote the free T -algebra over C . roposition 3.4 (Free representation of an automaton [4, Section 7, Proposi-tion 9]) . The free algebra
T G forms the state space of an automaton equivalentto X .Proof. Let g : G → X witness G being a set of generators for X and let s : X → T G be a right inverse of g ♯ . Recall that X = ( X, i, δ ) and define j = 1 i −→ X s −→ T Gγ = G g −→ X δ −→ O × X A id × s A −−−−→ O × ( T G ) A Then (
T G, j, γ ♯ ) is an automaton. We will show that g ♯ : T G → X is an au-tomaton homomorphism. We have g ♯ ◦ j = g ♯ ◦ s ◦ i = i , and, writing F for thefunctor O × ( − ) A and χ for the T -algebra structure on X , T G T X T F X T F T G F T G F T GF T X F T XX F X
T gg ♯ T δχ T F sρ ρ F µF T g ♯ F g ♯ id F T s F χδ commutes. Here commutes because δ is a T -algebra homomorphism, com-mutes by naturality of the distributive law ρ , and commutes because g ♯ is a T -algebra homomorphism. The triangle on the left unfolds the definition of g ♯ ,and the remaining triangle commutes by s being right inverse to g ♯ . Note thatthe composition in the top row of the diagram is γ ♯ . We conclude that g ♯ isan automaton homomorphism, which using the finality in Definition 2.3 impliesthat ( T G, j, γ ♯ ) accepts the same language as X .The state space T G of this free representation can be extremely large. For-tunately, the fact that
T G is a free algebra allows for a much more succinctversion of this automaton.
Definition 3.5 ( T -succinct automaton) . Given an automaton of the form(
T X, i, δ ), where
T X is the free T -algebra on X , the corresponding T -succinctautomaton is the triple ( X, i, δ ◦ η ). The language accepted by the T -succinctautomaton is the language l ◦ i accepted by ( T X, i, δ ):1
X T X O A ∗ O × ( T X ) A O × ( O A ∗ ) Aiηδ ◦ η δ l ω id × l A The goal of our construction is to build a T -succinct automaton from a setof generators that is minimal in a way that we will define now. In what followsbelow we use the following piece of notation: if U and V are sets such that U ⊆ V , then we write ι UV for the inclusion map U → V .7 efinition 3.6 (Minimal generators) . Given a T -algebra X and a set of gener-ators G for X witnessed by g : G → X , we say that r ∈ G is redundant if thereexists a U ∈ T ( G \ { r } ) satisfying ( g ◦ ι G \{ r } G ) ♯ ( U ) = g ( r ); all other elementsare said to be isolated [4] . We call G a minimal set of generators for X if G contains no redundant elements.A minimal set of generators is not necessarily minimal in size. However,under certain conditions this is the case. The following result was mentionedbut not proved by Arbib and Manes [4], who showed that its conditions aresatisfied for any finitely generated P -algebra. We note that these conditions donot apply (in general) to any of the further examples in Section 6. Proposition 3.7.
If a T -algebra X is generated by the isolated elements I ofthe set of generators X (Lemma 3.2) with their inclusion map ι IX and I is finite,then there is no set of generators for X smaller than I , and every minimal setof generators for X has the same size as I .Proof. Let G g −→ X be a set of generators for X , and assume towards a contra-diction that G is smaller than I . Then there must be an i ∈ I such that thereis no v ∈ G satisfying g ( v ) = i . Let g ′ : G → X \ { i } be pointwise equal to g . Because g ♯ is a split epi and thus surjective, there is a U ∈ T G such that g ♯ ( U ) = i . Note that by (2), g ♯ = ( ι X \{ i } X ◦ g ′ ) ♯ = T G T ( g ′ ) −−−→ T ( X \ { i } ) ( ι X \{ i } X ) ♯ −−−−−−→ X. Then ( id ◦ ι X \{ i } X ) ♯ ( T ( g ′ )( U )) = i , contradicting the fact that i is isolated inthe full set of generators X . Thus, G cannot be smaller than I . In fact, we seethat for every i ∈ I there is a v ∈ G satisfying g ( v ) = i . This yields a function h : I → G such that g ◦ h = ι IX .Suppose G is a minimal set of generators, and take any v ∈ G not in theimage of h . We will show that v is redundant in G . Since I constitutes a set ofgenerators for X , there exists a U ∈ T I such that ( ι IX ) ♯ ( U ) = g ( v ). Then g ♯ ( T ( h )( U )) = ( g ◦ h ) ♯ ( U ) = ( ι IX ) ♯ ( U ) = g ( v ) . It follows that v is redundant in G , which contradicts G being minimal. There-fore, h is surjective and G has the same size as I . T -minimization In this section we describe a construction to compute a “minimal” succinct T -automaton equivalent to a given T -automaton. This crucially relies on a pro-cedure that finds a minimal set of generators by removing redundant elementsone by one. All that needs to be done for specific monads is determining whetheran element is redundant. Arbib and Manes [4] define isolated elements only for the full set X rather than relativeto a set of generators for X . Our refinement plays an important role in finding a minimal setof generators. roposition 4.1 (Generator reduction) . Given a T -algebra X and a set ofgenerators G for X , if r ∈ G is redundant, then G \ { r } is a set of generatorsfor X .Proof. Let G ′ = G \ { r } and let g ′ : G ′ → X be the restriction of g : G → X to G ′ . Since r is redundant, there is a U ∈ T ( G ′ ) such that g ′ ♯ ( U ) = g ( r ). Define e : G → T ( G ′ ) by e ( x ) = ( U if x = rη ( x ) if x = r .We will show that g ′ ♯ ◦ e = g . Consider any x ∈ G . If x = r , then g ′ ♯ ( e ( x )) = g ′ ♯ ( e ( r )) = g ′ ♯ ( U ) = g ( r ) = g ( x ) . If x = r , then, using (1), g ′ ♯ ( e ( x )) = g ′ ♯ ( η ( x )) = g ′ ♯ † = g ′ ( x ) = g ( x ) . Let χ : T X → X be the algebra structure on X and take any right inverse s : X → T G of g ♯ . Then g ′ ♯ ◦ e ♯ ◦ s = g ′ ♯ ◦ µ ◦ T e ◦ s (definition of e ♯ )= χ ◦ T ( g ′ ♯ ) ◦ T e ◦ s ( g ′ ♯ is a T -algebra homomorphism)= χ ◦ T ( g ′ ♯ ◦ e ) ◦ s (functoriality of T )= χ ◦ T g ◦ s ( g ′ ♯ ◦ e = g as shown above)= g ♯ ◦ s (definition of g ♯ )= id X ( s is right inverse to g ♯ ) . We thus see that e ♯ ◦ s is right inverse to g ′ ♯ , which means that G ′ is a set ofgenerators for X .If we determine that an element is isolated, there is no need to check thisagain later when the set of generators has been reduced. This is thanks to thefollowing result. Proposition 4.2. If G g −→ X and G ′ g ′ −→ X are sets of generators for a T -algebra X such that G ′ ⊆ G and g ′ is the restriction of g to the domain G ′ , thenwhenever an element r ∈ G ′ is isolated in G , it is also isolated in G ′ .Proof. We will show that redundant elements in G ′ are also redundant in G .If r ∈ G ′ is isolated in G ′ , then there exists U ∈ T ( G ′ \ { r } ) such that ( g ′ ◦ ι G ′ \{ r } G ′ ) ♯ ( U ) = g ′ ( r ). Note that g ′ = g ◦ ι G ′ G . We have( g ◦ ι G \{ r } G ) ♯ ( T ( ι G ′ \{ r } G \{ r } )( U )) = ( g ◦ ι G \{ r } G ◦ ι G ′ \{ r } G \{ r } ) ♯ ( U ) (2)= ( g ◦ ι G ′ G ◦ ι G ′ \{ r } G \{ r } ) ♯ ( U )= ( g ′ ◦ ι G ′ \{ r } G \{ r } ) ♯ ( U )= g ′ ( r )= g ( r ) , so r is redundant in G . 9inally, taking the observable quotient M of a T -automaton Q preservesgenerators, considering that the T -automaton homomorphism m : Q → M is asplit epi in Set under the axiom of choice.
Proposition 4.3. If Q and M are T -algebras, m : Q → M is a T -algebrahomomorphism that is a split epi in Set , and G g −→ Q is a set of generators for Q , then G g −→ Q m −→ M is a set of generators for M .Proof. Let a : T Q → Q be the T -algebra structure on Q and b : T M → M theone on M . We have( m ◦ g ) ♯ = b ◦ T ( m ◦ g ) = b ◦ T ( m ) ◦ T ( g ) = m ◦ a ◦ T g = m ◦ g ♯ using that m is a T -algebra homomorphism. It is well known that compositionsof split epis are split epis themselves, so G is a set of generators for M .Now we are ready to define the construction that builds a T -succinct au-tomaton accepting the same language as a T -automaton. Construction 4.4 ( T -minimization) . Starting from a T -automaton ( X, i, δ ),where X has a finite set of generators, we execute the following steps.1. Take the observable quotient ( M, i , δ ) of ( X, i, δ ).2. Compute a minimal set of generators G of M by starting from the full set M and applying Proposition 4.1.3. Compute and return the corresponding T -succinct automaton as definedin Definition 3.5 via Proposition 3.4.Generic minimization algorithms have been proposed in the literature. Forexample, Ad´amek et al. give a general procedure to compute the observablequotient [1], and K¨onig and K¨upper provide a generic partition refinement algo-rithm for coalgebras, with a focus on instantiations to weighted automata [14].None of these works provide any complexity analysis. Recently, Dorsch et al. [11]have presented a coalgebraic Paige–Tarjan algorithm and provided a complex-ity analysis for a class of functors in categories with image-factorization. Theserestrictions match well the ones we make, and therefore their algorithm couldbe applied in our first step. Given a finite set of generators G , the loop in thesecond step involves considering each element of G and checking whether it isredundant. If so, we will remove the element from G and continue the loop.The redundancy check is the only part for which computability needs to bedetermined in each specific setting. Example 4.5 (Join-semilattices) . We give an example of the construction inthe category JSL of complete join-semilattices. We start from a minimal P -automaton (in JSL) that has 4 states and is depicted below on the left. Thedashed blue lines indicate the JSL structure. x yz ⊥ b ba, baa a, b x ya, ba, bb b {⊥ , x, y, z } . Note that z is the unionof x and y , so we can eliminate it. Additionally, ⊥ is the empty union and canbe removed as well. Both x and y are isolated elements and form the uniqueminimal set of generators G = { x, y } (see the remark above Proposition 3.7).These are exactly the join-irreducibles of M . They induce by Proposition 3.4an automaton ( T G, j, γ ), where γ is the same transition structure as the aboveautomaton, but with { x, y } substituted for z ; the initial state is the singleton set { x } . The P -succinct automaton corresponding to this minimal set of generators(Definition 3.5) is the non-deterministic automaton shown on the right.Note that the definition of the automaton defined in Proposition 3.4 dependson the right inverse chosen for the extension of the generator map. When theoriginal JSL automaton is reachable (every state is reached by some set ofwords, where a set of words reaches the join of the states reached by the words itcontains), this right inverse may be chosen in such a way to recover the canonical residual finite state automaton (RFSA), as well as the simplified canonical RFSA,both due to Denis et al. [10]. Details are given in [23]. See [17] for conditionsunder which the canonical RFSA, referred to as the jiromaton, is a state-minimalNFA.
5. Main construction
In this section we present the main construction of the paper. Given a finite automaton (
X, i, δ ) in
Set , i.e., an automaton where X is finite, this constructionbuilds an equivalent T -succinct automaton.The first step is taking the reachable part R of X and converting this au-tomaton into a T -automaton recognising the same language. Proposition 5.1.
Let ( T R, ˆ i, ˆ δ ) be the T -automaton defined as follows: R T RO × R A O × T ( R ) Ai ˆ i = η R ◦ iη R δ ˆ δ =(( id × η AR ) ◦ δ ) ♯ id × η AR Then ( R, i, δ ) and ( T R, ˆ i, ˆ δ ) accept the same language.Proof. The diagram above means that η R is a coalgebra homomorphism, andas such it preserves language. Explicitly: x ∈ R accepts the same language as η R ( x ), which in particular holds for i ( ⋆ ) and ˆ i ( ⋆ ).Now we can T -minimize ( T R, ˆ i, ˆ δ ) (Construction 4.4), which yields an equiv-alent T -automaton. Notice that, R being finite, any quotient of T R has a finiteset of generators. This is a consequence of R being a set of generators for T R (Lemma 3.3) and of generators being preserved by quotients (Proposition 4.3).It follows that every step of the T -minimization construction terminates. Proposition 5.2.
The T -succinct automaton defined above is at least as smallas the minimal deterministic automaton equivalent to X . roof. The situation is summed up in the following commutative diagram:
GR T R M O A ∗ gη e m Here G is the final minimal set of generators for M resulting from the con-struction. Commutativity follows from G being a subset of the set of generators R . The minimal deterministic automaton equivalent to X is obtained from R by merging language-equivalent states. Recalling (4) and the proof of Propo-sition 5.1, we see that e ◦ η R is a coalgebra homomorphism. Together withcommutativity of the above diagram, this means that the language accepted by r ∈ G (seen as a state of R ) is given by ( m ◦ g )( r ). Since G is a subset of R ,to show that G is at least as small as the minimal deterministic automaton, weonly have to show that different states in G accept different languages. That is,we will show that m ◦ g is injective. We know that m is injective by definition;to see that g is injective, consider r , r ∈ G such that g ( r ) = g ( r ). Then g ( r ) = g ( r ) = g ♯ ( η ( r )). Assuming r = r leads to the contradiction that G is not a minimal set of generators because in this case η ( r ) ∈ T ( G \ { r } ).Computing the determinization T R is an expensive operation that only ter-minates if T preserves finite sets. One could devise an optimized version ofConstruction 4.4 in which the determinization is not computed completely inorder to minimize it. Instead, we could choose to work with data structures asB¨ollig et al. [7] did for non-deterministic automata, and which we generalizedin recent work [23]. In these papers, partial representations of the determinizedautomaton are used in an iterative process to compute the generators of thestate space of the minimal one.
6. Examples If T preserves finite sets, then there is a naive method to find a redundantelement: assuming a finite set of generators G for a T -algebra X , the set T ( G \{ r } ) is also finite for any r ∈ G . Thus, we can loop over all U ∈ T ( G \ { r } ) andcheck if the generator map g : G → X satisfies g ♯ ( U ) = g ( r ). We now use our construction to get small alternating finite automata (AFAs)over a finite alphabet A . AFAs generalize both non-deterministic and universalautomata, where the latter are the dual of non-deterministic automata: a wordis accepted when all paths reading it are accepting. In an AFA, reading a symbolleads to a DNF formula (without negation) of next states.We use the characterization of alternating automata due to Bertrand [5].Given a partially ordered set ( P, ≤ ), an upset is a subset U of P such thatwhenever x ∈ U and x ≤ y , then y ∈ U . Given Q ⊆ P , we write ↑ Q for the upward closure of Q , that is the smallest upset of P containing Q . We consider12 q q q q ab ab a, ba b a, b (a) Deterministic automaton q q q a ba a, b (b) Small corresponding AFAFigure 1: Automata for the language { a, ba, bb, baa } the monad T Alt that maps a set X to the set of all upsets of P ( X ). Its unit isgiven by η X ( x ) = ↑ and its multiplication by µ X ( U ) = { V ⊆ X | ∃ W ∈ U ∀ Y ∈ W ∃ Z ∈ Y Z ⊆ V } . The sets of sets in T Alt ( X ) can be seen as DNF formulae over elements of X :the outer powerset is interpreted disjunctively and the inner one conjunctively.Accordingly, we define an algebra structure β : T Alt (2) → β ( U ) = 1 if { } ∈ U and β ( U ) = 0 otherwise. Recall from (3) inSection 2 that such an algebra structure induces a distributive law.We now explicitly spell out the T -minization algorithm that turns a DFA( X, i, δ ) into a T Alt -succinct
AF A .1. Compute the reachable states R of ( X, i, δ ) via a standard visit of itsgraph.2. Compute the corresponding freely-generated T Alt -automaton ( T Alt R, ˆ i, ˆ δ ),by generating all DNF formulae T Alt R on R .3. Compute the observable quotient ( M, i , δ ) of ( T Alt R, ˆ i, ˆ δ ) via a stan-dard minimization algorithm, such as the coalgebraic Paige–Tarjan algo-rithm [11].4. Compute a minimal set of generators for M as follows. Consider the gen-erator map id M : M → M , for which we have that id ♯ is the algebra mapof M . Pick r ∈ M , and iterate over all DNF formulae ϕ over M \ { r } ; ifthere is ϕ which is mapped to r by the algebra map of M (i.e., id ♯ ), r isredundant and can be removed from M . Repeat until no more elementsare removed from M , which yields a minimal set of generators G .5. Return the T Alt -succinct automaton (
G, i , i ◦ η ).Note that every step of this algorithm terminates, as X is finite and the size of T Alt R is 2 | R | . Example 6.1.
Consider the regular language over A = { a, b } given by thefinite set { a, ba, bb, baa } . The minimal DFA accepting this language is given inFigure 1a.According to our construction, we first construct a T Alt -automaton withstate space freely generated from this automaton (which is already reachable).Then we T Alt -minimize it in order to obtain a small AFA. In this case, there isa unique minimal subset of 3 generators: G = { q , q , q } . To see this, consider13he languages J q K accepted by states q of the deterministic automaton: J q K = { a, ba, bb, baa } J q K = { ε } J q K = ∅ J q K = { a, b, aa } J q K = { ε, a } . These languages generate the states of the minimal T Alt -automaton by inter-preting joins as unions and meets as intersections. We note that J q K is just anempty join and J q K = ( J q K ∩ J q K ) ∪ J q K . These are the only redundant gen-erators. Removing them leads to the AFA in Figure 1b. Here the black squarerepresents a conjunction of next states.
We now consider the monad C given by the double contravariant powersetfunctor, namely CX = 2 X . Here the outer powerset is treated disjunctively asin the case of T Alt , and the sets provided by the inner powerset are interpretedas valuations. Thus, elements of C ( X ) can be seen as full DNF formulae over X : every conjunctive clause contains for each x ∈ X either x or the negation x of x . The unit assigns to an element x the disjunction of all full conjunctionscontaining x , and the multiplication turns formulae of formulae into full DNFformulae in the usual way. Algebras for this monad are known as completeatomic boolean algebras (CABAs).Using the fact that 2 is a free CABA (2 ∼ = C ( ∅ )), we obtain the followingsemantics for C -succinct automata: a set of sets of states is accepting if andonly if it contains the exact set F of accepting states. This is different fromalternating automata, where a subset of F is sufficient. Reading a symbol in a C -succinct automaton works as follows. Suppose we are in a set of sets of states S ∈ C ( Q ), where we read a symbol a . The resulting set of sets contains U ⊆ Q if and only if there is a set V ∈ S such that every state in V transitions into aset of sets containing U , and every state not in V does not transition into anyset of sets containing U .Note that every DNF formula can be converted to a full DNF formula. Thisimplies that C -succinct automata can always be as small as the smallest AFAsfor a given language. With the following example we show that they can actuallybe strictly smaller. The T -minimization algorithm for AFA we have given inthe previous section applies to this setting as well (including negation in DNFformulae). Example 6.2.
Consider the regular language of words over the singleton alpha-bet A = { a } whose length is non-zero and even. The minimal DFA accepting thislanguage is shown in Figure 2a. We start the algorithm with the C -automatonwith state space freely generated from this this DFA and merge the language-equivalent states. Initially, the set of generators is the set of states of the originalDFA. By noting that the language accepted by q is the negation of the one ac-cepted by q , in full DNF form J q K = ( J q K ∩ J q K ) ∪ ( J q K ∩ J q K ) (where forany language U its complement is defined as U = A ∗ \ U ), we see that q is Strictly speaking, we should take the upwards-closure of this disjunction (adding anypossible set of elements to each conjunction as an additional clause). We choose to use theequivalent succinct formula both here and in the subsequent AFA construction to aid read-ability. q q a aa (a) Deterministic automaton q q aa a (b) C -succinct automatonFigure 2: Automata for the language of non-zero even words over { a } redundant. The set of generators { q , q } is minimal and corresponds to the C -succinct automaton in Figure 2b. We depict C -succinct automata in the samemanner as AFAs, but note that their interpretation is different. Here the transi-tion into the black square represents the transition into the conjunction of thenegations of q and q .We now show that there is no AFA with two states accepting the samelanguage. Suppose such an AFA exists, and let the state space be X = { x , x } .Since a and aaa are not in the language but aa is, one of these states mustbe accepting and the other must be rejecting. Without loss of generality weassume that x is rejecting and x is accepting. The empty word is not in thelanguage, so our initial configuration has to be ↑ . Since a is also not inthe language, x will have to transition to ↑ as well. However, this impliesthat aa is not accepted by the AFA, which contradicts the assumption that itaccepts the right language.Unfortunately, the fact that the transition behavior of a set of states dependson states not in that set generally makes it difficult to work with C -succinctautomata by hand. We now consider succinct automata that exploit symmetry present in theiraccepted language. Given a finite group G , consider the monad G × ( − ), wherethe unit pairs any element with the unit of G and the multiplication applies themultiplication of G . The algebras for G × ( − ) are precisely left group actions.We assume an action on the alphabet A ; if no such action is relevant, one mayconsider the trivial action G × A π −→ A . We also assume an action on theoutput set O . Group actions will be denoted by a centered dot. We consider thedistributive law ρ : G × ( O × ( − ) A ) ⇒ O × ( G × ( − )) A given by ρ X ( g, o, f ) = ( g · o, λa. ( g, f ( g − · a ))) . We explain the resulting semantics of ( G × ( − ))-succinct automata in an exam-ple. If there were no rejecting states, the only way to reject a word is by ending up in theempty set of sets of states. However, this means that extensions of that word are rejectedas well. Similarly, if there are no accepting states one can only accept by ending up in ↑{∅} ,which accepts everything. , ⊥ q , ⊥ q , ⊥ q , aq , bab ab ba a, ba, b (a) Deterministic automaton q , ⊥ q , ⊥ q , aa/eb/ ( ab ) a/eb/ ( ab ) a/e, b/e (b) Corresponding ( G × ( − ))-succinct automatonFigure 3: Automata outputting the first symbol to appear twice in a row Example 6.3.
Consider the group
Perm ( { a, b } ) = { e, ( ab ) } of permutationsover elements a and b . Here e is the identity and ( ab ) swaps a and b . We considerthe alphabet A = { a, b } with an action Perm ( A ) × A → A given by applyingthe permutation to the element of A , and the output set O = A ∪ {⊥} with anaction given by( ab ) · a = b ( ab ) · b = a ( ab ) · ⊥ = ⊥ . Figure 3a shows a deterministic automaton over the alphabet A with outputsin O . States are labeled by pairs ( q, o ), where q is a state label and o the outputof the state. The recognized language is the one assigning to a word over A thefirst input symbol appearing twice in a row, or ⊥ if no such symbol exists. Thisdeterministic automaton is in fact the minimal ( Perm ( A ) × ( − ))-automaton. Theaction on its state space is defined by( ab ) · q = q ( ab ) · q = q ( ab ) · q = q ( ab ) · q = q ( ab ) · q = q . We note that in the set of generators given by the full state space, q , q , q , and q are redundant. After removing q , only q and q are redundant. Subsequentlyremoving q leaves no redundant elements.The final ( G × ( − ))-succinct automaton is shown in Figure 3b. Its actualconfigurations are pairs of a group element and a state. Transition labels are ofthe form x/g , where x ∈ A and g ∈ Perm ( A ). If we are in a configuration ( g, q )and state q has an associated output o ∈ O , the actual output is g · o . On readinga symbol x ∈ A , we find the outgoing transition of which the label starts withthe symbol g − · x . Supposing this label contains a group element g ′ and leads toa state q ′ , the resulting configuration is ( gg ′ , q ′ ). For example, consider readingthe word bb . We start in the configuration ( e, q ). Reading b here simply takesthe transition corresponding to b , which brings us to (( ab ) , q ). Now reading thesecond b , we actually read ( ab ) − · b = ( ab ) · b = a . This brings us to (( ab ) , q ).The output is then given by ( ab ) · a = b .In general, sets of generators in this setting correspond to subsets in whichall orbits are represented. The orbits of a set X with a left group action are theequivalence classes of the relation that identifies elements x, y ∈ X wheneverthere exists g ∈ G such that g · x = y . Minimal sets of generators contain a single16epresentative for each orbit. The algorithm given for AFAs in section 6.1.1 canbe applied to this setting as well: step 4 will remove elements until only orbitrepresentatives are left. We now exploit vector space structures. Given a field F , consider the freevector space monad V . It maps each set X to the set of functions X → F withfinite support (finitely many elements of X are mapped to a non-zero value). Afunction f : X → Y is mapped to the function V ( f ) : V ( X ) → V ( Y ) given by V ( f )( g )( y ) = X x ∈ X,f ( x )= y g ( x ) . The unit η : X → V ( X ) and multiplication µ : V V ( X ) → V ( X ) of the monadare given by η ( x )( x ′ ) = ( x = x ′ x = x ′ µ ( f )( x ) = X g ∈ V ( X ) f ( g ) · g ( x ) ∈ F . Here 0 and 1, as well as addition and multiplication, are those of the field F .Elements of V ( X ) can alternatively be written as formal sums v x + · · · + v n x n with v i ∈ F and x i ∈ X for all i . We will use this notation in the example below.Algebras for the free vector space monad are precisely vector spaces. We usethe output set O = F , and the alphabet can be any finite set A . Instantiating(3), this leads to a pointwise distributive law ρ : V ( O × ( − ) A ) ⇒ O × V ( − ) A given at a set X by ρ ( f ) = X ( o,g ) ∈ O × X A f ( o, g ) · o, λa.λx. X ( o,g ) ∈ O × X A ,g ( a )= x f ( o, g ) . With these definitions, the V -succinct automata are weighted automata. Wenote that if F is infinite, any non-trivial V -automaton will also be infinite. How-ever, we can still start from a given weighted automaton and apply a slightmodification of Construction 4.4: minimize from the succinct representation,use the states of the succinct representation as initial set of generators, andfinally find a minimal set of generators. Moreover, we may add a reachabilityanalysis, which in this case cannot lead to a larger automaton. Thus, the result-ing algorithm essentially comes down to the standard minimization algorithmfor weighted automata [19], where the process of removing redundant generatorsis integrated into the minimization. If F is finite and we do want to start froma deterministic automaton, we can consider this automaton as a weighted oneby assigning each transition a weight of 1. Example 6.4.
Consider for F = R the deterministic automaton in Figure 4a.This is a minimal automaton in Set ; the freely generated V -automaton is in-finite, and so is its minimization. However, that minimization has the statesof the automaton in Figure 4a as a set of generators. To gain insight into thisminimization, we compute the languages accepted by those generators (apart17 , q , q , q , q , a bc a, b, ca, b, c a, b, c a, b, c (a) Deterministic automaton q , q , q , a, cb, c/ a, b, c (b) Succinct weighted automatonFigure 4: Succinctness via a weighted automaton from q ): q : ε a b c q : ε a b c q : ε a b c q : ε a b c q is theonly one assigning non-zero values to certain words of length two, such as aa ,and therefore q cannot be a redundant generator. The other generators are redundant: writing J q K for the language of a state q , J q K is just a zero-ary sum,and we have J q K = J q K − J q K J q K = 12 J q K − J q K J q K = J q K + 2 J q K . Once q is removed, all other generators are still redundant. Further removing q makes q and q isolated. Therefore, V -minimization yields the weightedautomaton shown in Figure 4b. Here a transition on an input x ∈ A withweight w ∈ F receives the label x/w , or just x if w = 1. Weights multiply alonga path, and different possible paths add up to assign a value to a word. Reading c from q , for example, we move to q + 2 q , which has an output of 1 + 2 ∗
7. Conclusions
We have presented a construction to obtain succinct representations of de-terministic finite automata as automata with side-effects. This construction isvery general in that it is based on the abstract characterisation of side-effectsas monads. Nonetheless, it can be easily implemented. An essential part of ourconstruction is the computation of a minimal set of generators for an algebra.We have provided an algorithm for this that works for any suitable
Set monad.18e have applied the construction to several non trivial examples: alternating au-tomata, automata with symmetries, CABA-structured automata, and weightedautomata.
Related work.
This work revamps and extends results of Arbib and Manes [4],as discussed throughout the paper. We note that most of their results are for-mulated in a more general category, whereas here we work specifically in
Set .The reason for this is that we focus on the procedure for finding minimal setsof generators by removing redundant elements, which are defined using set sub-traction (Definition 3.6). This limitation is already present in the work of Ar-bib and Manes, who spend little time on the subject and only study the non-deterministic case in detail. Our main contribution, the general procedure forfinding a minimal set of generators, is not present in their work. It generalizesseveral techniques to obtain compact automaton representations of languages,some of them presented in the context of learning algorithms [10, 7, 3]. Prelimi-nary results on generalizing succinct automaton constructions within a learningalgorithm can be found in [23].In [17], Myers et al. present a coalgebraic construction of canonical non-deterministic automata. Their specific examples are the ´atomaton [9], obtainedfrom the atoms of the boolean algebra generated by the residual languages (thelanguages accepted by the states of the minimal DFA); the canonical RFSA;the minimal xor automaton [24], actually a weighted automaton over field withtwo elements rather than a non-deterministic one; and what they call the dis-tromaton, obtained from the atoms of the distributive lattice generated by theresidual languages. They further provide specific algorithms for obtaining someof their example succinct automata.The underlying idea in the work of Myers et al. for finding succinct represen-tations of algebras is similar to ours, and the deterministic structured automatathey start from are equivalent: in their paper the deterministic automata livein a locally finite variety, which translates to the category of algebras for amonad that preserves finite sets (such as those in Section 6.1). They also de-fine the succinct automaton using a minimal set of generators for the algebra,but instead of our algorithmic approach of getting to this set by removing re-dundant generators, they use a dual equivalence between finite algebras and asuitable modification of the category of sets and relations between them. Thisseems to restrict their work to non-deterministic automata, although there maybe an easy generalization: the equivalence would be with a modification of aKleisli category. A major difference with our work is that they have no generalalgorithm to construct the succinct automata; as mentioned, specific ones areprovided for their examples. In fact, they provide no guidelines on how to finda suitable equivalence for a given variety. On the other hand, their equivalencesguarantee uniqueness up to isomorphism of the succinct automata, which is adesirable property for many applications.The restriction in the work of Myers et al. to locally finite varieties meansthat our example of weighted automata over an infinite field (Section 6.2) cannotbe captured in their work. Conversely, since both the ´atomaton and the distro-maton are non-deterministic NFAs obtained from categories of algebras withmore structure than JSLs, these examples are not covered by our work. Theirother examples, however, the canonical RFSA and the minimal xor automaton,are obtained using instances of our method as well. The fact that the problem19f finding in general a suitable equivalence is open means it is not trivial todetermine whether our approach can be seen as a special case of a generalizedversion of theirs when we restrict to monads that preserve finite sets.
Future work.
The main question that remains is under which conditions thenotion of a minimal set of generators actually describes a size-minimal set ofgenerators. Proposition 3.7 provides a partial answer to this question, but itsconditions fail to apply the majority of our examples, even though in some ofthese cases minimal does mean size-minimal. A related question is whether wecan find heuristics to increase the state space of a T -automaton in such a waythat the number of generators decreases. The reason the canonical RFSAs ofDenis et al. [10] are not always state-minimal NFAs is because the states ofthese NFAs, seen as singletons in the determinized automaton, in general arenot reachable. Hence, removing unreachable states from a T -automaton mayincrease the size of minimal sets of generators, which is why Construction 4.4does not include a reachability analysis. Although finding state-minimal NFAsis PSPACE-complete, a moderate gain might still be possible. References [1] Jiˇr´ı Ad´amek, Filippo Bonchi, Mathias H¨ulsbusch, Barbara K¨onig, StefanMilius, and Alexandra Silva. A coalgebraic perspective on minimizationand determinization. In
FoSSaCS , pages 58–73. Springer, 2012.[2] Jiˇr´ı Ad´amek and Jiˇr´ı Rosicky.
Locally presentable and accessible categories ,volume 189. Cambridge University Press, 1994.[3] Dana Angluin, Sarah Eisenstat, and Dana Fisman. Learning regular lan-guages via alternating automata. In
IJCAI , pages 3308–3314, 2015.[4] Michael A. Arbib and Ernest G. Manes. Fuzzy machines in a category.
Bulletin of the AMS , 13:169–210, 1975.[5] Meven Bertrand and Jurriaan Rot. Coalgebraic determinization of alter-nating automata.
CoRR , abs/1804.02546, 2018.[6] Miko laj Boja´nczyk. Recognisable languages over monads. In Igor Potapov,editor,
Developments in Language Theory - 19th International Conference,DLT 2015, Liverpool, UK, July 27-30, 2015, Proceedings. , volume 9168 of
Lecture Notes in Computer Science , pages 1–13. Springer, 2015.[7] Benedikt Bollig, Peter Habermehl, Carsten Kern, and Martin Leucker.Angluin-style learning of NFA. In
IJCAI , volume 9, pages 1004–1009, 2009.[8] Filippo Bonchi and Damien Pous. Hacking nondeterminism with inductionand coinduction.
Commun. ACM , 58(2):87–95, 2015.[9] Janusz Brzozowski and Hellis Tamm. Theory of ´atomata. In
DLT , pages105–116. Springer, 2011.[10] Fran¸cois Denis, Aur´elien Lemay, and Alain Terlutte. Residual finite stateautomata.
Fundamenta Informaticae , 51:339–368, 2002.2011] Ulrich Dorsch, Stefan Milius, Lutz Schr¨oder, and Thorsten Wißmann. Acoalgebraic paige-tarjan algorithm.
CoRR , abs/1705.08362, 2017.[12] Bart Jacobs, Alexandra Silva, and Ana Sokolova. Trace semantics via de-terminization. In
CMCS , pages 109–129. Springer, 2012.[13] Peter T. Johnstone. Adjoint lifting theorems for categories of algebras.
Bull.London Math. Society , 7:294–297, 1975.[14] Barbara K¨onig and Sebastian K¨upper. Generic partition refinement algo-rithms for coalgebras and an instantiation to weighted automata. In JosepD´ıaz, Ivan Lanese, and Davide Sangiorgi, editors,
Theoretical Computer Sci-ence - 8th IFIP TC 1/WG 2.2 International Conference, TCS 2014, Rome,Italy, September 1-3, 2014. Proceedings , volume 8705 of
Lecture Notes inComputer Science , pages 311–325. Springer, 2014.[15] Joshua Moerman, Matteo Sammartino, Alexandra Silva, Bartek Klin, andMicha l Szynwelski. Learning nominal automata. In
POPL , pages 613–625,2017.[16] Eugenio Moggi. Notions of computation and monads.
Inf. Comput. ,93(1):55–92, 1991.[17] Robert S. R. Myers, Jir´ı Ad´amek, Stefan Milius, and Henning Urbat. Coal-gebraic constructions of canonical nondeterministic automata.
Theor. Com-put. Sci. , 604:81–101, 2015.[18] Jan J. M. M. Rutten. Universal coalgebra: a theory of systems.
Theor.Comput. Sci. , 249(1):3–80, 2000.[19] Marcel P. Sch¨utzenberger. On the definition of a family of automata.
In-formation and control , 4(2-3):245–270, 1961.[20] Alexandra Silva, Filippo Bonchi, Marcello M. Bonsangue, and Jan J. M. M.Rutten. Generalizing the powerset construction, coalgebraically. In Ka-mal Lodaya and Meena Mahajan, editors,
IARCS Annual Conference onFoundations of Software Technology and Theoretical Computer Science,FSTTCS 2010, December 15-18, 2010, Chennai, India , volume 8 of
LIPIcs ,pages 272–283. Schloss Dagstuhl - Leibniz-Zentrum fuer Informatik, 2010.[21] Alexandra Silva, Filippo Bonchi, Marcello M. Bonsangue, and Jan J. M. M.Rutten. Generalizing determinization from automata to coalgebras.
LogicalMethods in Computer Science , 9(1), 2013.[22] Nikhil Swamy, Nataliya Guts, Daan Leijen, and Michael Hicks. Lightweightmonadic programming in ml. In
Proceedings of the 16th ACM SIGPLANInternational Conference on Functional Programming , ICFP ’11, pages 15–27, New York, NY, USA, 2011. ACM.[23] Gerco van Heerdt, Matteo Sammartino, and Alexandra Silva. Optimizingautomata learning via monads. arXiv:1704.08055arXiv:1704.08055