22 research outputs found
How to write a coequation
There is a large amount of literature on the topic of covarieties,
coequations and coequational specifications, dating back to the early
seventies. Nevertheless, coequations have not (yet) emerged as an everyday
practical specification formalism for computer scientists. In this review
paper, we argue that this is partly due to the multitude of syntaxes for
writing down coequations, which seems to have led to some confusion about what
coequations are and what they are for. By surveying the literature, we identify
four types of syntaxes: coequations-as-corelations, coequations-as-predicates,
coequations-as-equations, and coequations-as-modal-formulas. We present each of
these in a tutorial fashion, relate them to each other, and discuss their
respective uses
The dual equivalence of equations and coequations for automata
Because of the isomorphism (X x A) -> X = X -> (A -> X), the transition structure t: X -> (A -> X) of a deterministic automaton with state set X and with inputs from an alphabet A can be viewed both as an algebra and as a coalgebra. Here we will use this algebra-coalgebra duality of automata as a common perspective for the study of equations and coequations. Equations are sets of pairs of words (v,w) tha
Formations of monoids, congruences, and formal languages
The main goal in this paper is to use a dual equivalence in automata theory started in [25] and developed in [3] to prove a general version of the Eilenberg-type theorem presented in [4]. Our principal results confirm the existence of a bijective correspondence between three concepts; formations of monoids, formations of languages and formations of congruences. The result does not require finiteness on monoids, nor regularity on languages nor finite index conditions on congruences. We relate our work to other results in the field and we include applications to non-r-disjunctive languages, Reiterman's equational description of pseudovarieties and varieties of monoid
Guarded Kleene Algebra with Tests: Coequations, Coinduction, and Completeness
Guarded Kleene Algebra with Tests (GKAT) is an efficient fragment of KAT, as it allows for almost linear decidability of equivalence. In this paper, we study the (co)algebraic properties of GKAT. Our initial focus is on the fragment that can distinguish between unsuccessful programs performing different actions, by omitting the so-called early termination axiom. We develop an operational (coalgebraic) and denotational (algebraic) semantics and show that they coincide. We then characterize the behaviors of GKAT expressions in this semantics, leading to a coequation that captures the covariety of automata corresponding to these behaviors. Finally, we prove that the axioms of the reduced fragment are sound and complete w.r.t. the semantics, and then build on this result to recover a semantics that is sound and complete w.r.t. the full set of axioms
Algebra, coalgebra, and minimization in polynomial differential equations
We consider reasoning and minimization in systems of polynomial ordinary
differential equations (ode's). The ring of multivariate polynomials is
employed as a syntax for denoting system behaviours. We endow this set with a
transition system structure based on the concept of Lie-derivative, thus
inducing a notion of L-bisimulation. We prove that two states (variables) are
L-bisimilar if and only if they correspond to the same solution in the ode's
system. We then characterize L-bisimilarity algebraically, in terms of certain
ideals in the polynomial ring that are invariant under Lie-derivation. This
characterization allows us to develop a complete algorithm, based on building
an ascending chain of ideals, for computing the largest L-bisimulation
containing all valid identities that are instances of a user-specified
template. A specific largest L-bisimulation can be used to build a reduced
system of ode's, equivalent to the original one, but minimal among all those
obtainable by linear aggregation of the original equations. A computationally
less demanding approximate reduction and linearization technique is also
proposed.Comment: 27 pages, extended and revised version of FOSSACS 2017 pape
Guarded Kleene Algebra with Tests: Coequations, Coinduction, and Completeness
Guarded Kleene Algebra with Tests (GKAT) is an efficient fragment of KAT, as it allows for almost linear decidability of equivalence. In this paper, we study the (co)algebraic properties of GKAT. Our initial focus is on the fragment that can distinguish between unsuccessful programs performing different actions, by omitting the so-called early termination axiom. We develop an operational (coalgebraic) and denotational (algebraic) semantics and show that they coincide. We then characterize the behaviors of GKAT expressions in this semantics, leading to a coequation that captures the covariety of automata corresponding to these behaviors. Finally, we prove that the axioms of the reduced fragment are sound and complete w.r.t. the semantics, and then build on this result to recover a semantics that is sound and complete w.r.t. the full set of axioms
Universal coalgebra: a theory of systems
In the semantics of programming, finite data types such as finite lists, have traditionally been modelled by initial algebras. Later final coalgebras were used in order to deal with infinite data types. Coalgebras, which are the dual of algebras, turned out to be suited, moreover, as models for certain types of automata and more generally, for (transition and dynamical) systems. An important property of initial algebras is that they satisfy the familiar principle of induction. Such a principle was missing for coalgebras until the work of Aczel (1988) on a theory of non-wellfounded sets, in which he introduced a proof principle nowadays called coinduction. It was formulated in terms of bisimulation, a notion originally stemming from the world of concurrent programming languages (Milner, 1980; Park, 1981). Using the notion of c
On the final sequence of a finitary set functor
AbstractA standard construction of the final coalgebra of an endofunctor involves defining a chain of iterates, starting at the final object of the underlying category and successively applying the functor. In this paper we show that, for a finitary set functor, this construction always yields a final coalgebra in ω2=ω+ω steps