A unified implementation of automata and expression structures, and of the associated algorithms using enriched categories
Ludovic Mignot

TL;DR
This paper presents a Haskell-based implementation of a generalized automata and expressions framework using enriched category theory, unifying various automata algorithms and structures in a functional programming setting.
Contribution
It introduces a novel algebraic and categorical approach to automata and expressions, implemented in Haskell, enabling unified algorithms and structures for trees and words.
Findings
Classical automata algorithms are unified into single functions.
Generalized expressions are defined using monoidal tensor products.
Haskell implementation demonstrates practical application of enriched category theory.
Abstract
In this document, we propose a description, via a Haskell implementation, of a generalization of the notion of regular expression allowing us to group the definitions and the methods of (tree or word) automata constructions over one generic structure, based on enriched category theory tools. We first recall several methods of conversion from expressions to automata, enlightening the similarities between the words and trees cases. We then produce an original study of the power of enriched category theory applied 1) to automata and expressions implementation, and 2) to the study of associated algorithms, using advanced concepts of functional programming, while simultaneously constructing a Haskell implementation of notions of enriched category theory and associated automata. More precisely, the Haskell implementation and the algebraic definition of the generic automaton structure are…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
Topicssemigroups and automata theory · Logic, programming, and type systems · Formal Methods in Verification
