Algebraic Characterization of Regular Languages

Total Page:16

File Type:pdf, Size:1020Kb

Algebraic Characterization of Regular Languages Algebraic Characterization of Regular Languages Chloe Sheen Advised by Professor Steven Lindell A Thesis Presented in Partial Fulfillment of Bachelor's Degree Department of Computer Science Bryn Mawr College Abstract This paper presents the proof provided by Marcel-Paul Sch¨utzenberger, which connects regular language theory and algebraic automata theory. The two fundamental areas of study in mathematics and theoretical computer sci- ence hold a notable relationship, which motivated the discussion surrounding this topic. On a high-level perspective, Sch¨utzenberger's theorem bridges the two areas of study using languages recognized by aperiodic monoids to re- late them to star-free regular expressions. By outlining the essential ideas in both automata theory and group theory, we attempt to produce a more comprehensible document for both computer scientists and mathematicians to discuss this topic. Contents 1 Introduction 2 1.1 Background . .2 1.2 Motivations and Goals . .3 2 Notations, Definitions, and Examples 5 2.1 Finite Automata and Regular Languages . .5 2.2 Detailed Examples . .8 2.3 Algebra: Group Theory . 15 3 Sch¨utzenberger's theorem 20 4 Further Readings 27 5 Conclusion 28 1 Chapter 1 Introduction 1.1 Background Mathematics is the foundation of computing, and computing is often a key component in mathematical problem-solving. For instance, linear algebra is heavily used in computer graphics, graph theory forms the basis of network analysis, and number theory is used for cryptography. Such relationship between the two disciplines has inevitably resulted in the shared interest and involvement of both mathematicians and computer scientists in the study of formal languages. Formal language is composed of strings formed by letters from an alphabet along with a specific set of properties. This concept is often introduced in undergraduate computer science courses for its more practical connections to the field. This paper will specifically focus on regular languages, which are formal languages that can be expressed using regular expressions. Regular expres- sions describe the lexical tokens in syntactic specifications of programming languages, describe the textual patterns that trigger processing actions in text manipulation systems, and serve as the basis of standard utilities in pattern matching. Regular language theory provides the theoretical basis of pattern matching utilities including text tools awk, a text-manipulation language, and grep, a Unix utility that searches for lines in files that match a pattern [2]. Beyond its wide range of applications, regular languages are an important part of theoretical computer science. In theoretical computer science, formal language theory is closely tied 2 Algebraic Characterization of Regular Languages to the study of computability theory and computational complexity. Com- putability theory studies whether problems are computationally solvable us- ing different representations of algorithms and languages, and computational complexity considers the inherent difficulty of evaluating computational prob- lems [1]. Regular language theory also has connections with areas of mathematics in various fundamental fields including algebra and logic. The two areas of study have been bridged by Marcel-Paul Sch¨utzenberger's theorem, which essentially relates languages recognized by aperiodic monoids with star-free regular languages. 1.2 Motivations and Goals Given the equivalence of regular languages and finite automata as Kleene's theorem [4] states along with the relationship of regular languages and finite algebra, we were motivated to embed regular languages into a pure math- ematical system. This paper will explore the algebraic characterization of regular languages in order to (1) provide computer scientists with a more comprehensible introduction to algebraic automata theory, and to (2) introduce mathematicians to the area of formal languages. We believe that with the provided background in automata theory and algebra in this paper, coupled with an explanation of star-free expressions, establishing Sch¨utzenberger's theorem to connect the two fields of study will come naturally. The contents of this paper will be organized into the following structure: • In Section 2, we provide the background that is required for discussing Sch¨utzenberger's theorem. { In Section 2.1, we introduce standard notations, definitions, and simple examples of finite automata and regular languages. { In Section 2.2, we give several detailed examples of regular lan- guages, their representation in finite automata, and their monoid representations. Chapter 1 3 Algebraic Characterization of Regular Languages { In Section 2.3, we introduce group theory, provide several detailed examples of mapping strings to monoids, and finally prove that monoids and finite automata are equivalent. • In Section 3, we state our definition of star-free expressions, ideals of monoids, and provide the proof of Sch¨utzenberger's theorem in a way that is more accessible to both mathematicians and computer scientists, which is our major contribution in this work. • In Section 4, we briefly discuss further readings that may inspire further work with this subject. • In Section 5, we conclude the work by restating the major points of this paper. Below is the general diagram that illustrates the sequence of the main points that we will cover in order to successfully unpack Sch¨utzenberger's theorem. The idea of aperiodic monoids and star-free expressions will be introduced in section 2.3 and section 3, respectively. Regular FSA Monoid language Star free Aperiodic Chapter 1 4 Chapter 2 Notations, Definitions, and Examples The following subsections introduce the standard notations and defini- tions this paper will follow to establish Sch¨utzenberger's theorem. Each of the definitions and concepts are accompanied by relevant examples. 2.1 Finite Automata and Regular Languages Finite automata are the simplest computational model. They are used to recognize patterns within input taken from some set of characters by accept- ing or rejecting an input. Automata bridge the theory of formal language to computation. From a mathematical perspective, we require a more precise, notation-based definition of finite automata. In essence, a finite automaton is composed of several parts: a set of states, an input alphabet, a start state, rules that connect one state to another depending on the input symbol, and accept states. We will use the standard definition of finite automata in this paper: Definition 1. [8] A finite automaton is a 5-tuple (Q, Σ, δ, q0, F), where (i) Q is a finite set called the states, (ii) Σ is a finite set called the alphabet, (iii) δ :Q × Σ ! Q is the transition function, 5 Algebraic Characterization of Regular Languages (iv) q0 2 Q is the start state, and (v)F ⊆ Q is the set of accept states. From the five parts of the formal definition, we can use the notation to describe finite automata by specifying each of the components of the 5-tuple. Example 1. Here is a finite automaton M1. a a b start q1 q2 b Figure 2.1: State diagram of the two-state finite automaton M1 In the formal definition, M1 is (fq1, q2g, fa, bg, δ, q1, fq1g). The transition function δ is a b q1 q1 q2 q2 q2 q1. To better understand this machine, we can analyze it with an example input string. Consider the word w = abab. The machine starts in the start state q1, reads the first symbol of w, which is a, and proceeds to q1. It then reads the next symbol b, proceeds to q2, reads the next symbol a, stays in q2, and reads the last symbol b, taking us back to q1. Since q1 2 F, the automaton accepts the word. We will describe the languages using words in later sections. Example 2. Figure 2.2 shows another finite automaton M2. b a a; b a b start q1 q2 q3 Figure 2.2: State diagram of the three-state finite automaton M2 Chapter 2 6 Algebraic Characterization of Regular Languages Machine M2 has three states, with a formal definition of (fq1, q2, q3g, fa, bg, δ, q1, fq3g). The transition function δ is a b q1 q2 q1 q2 q2 q3 q3 q3 q3. Take w = baa. The machine starts in the start state q1, reads the first symbol of w, which is b, and stays in q1. It then reads the next symbol a, proceeds to q2, and reads the last symbol a, leaving us in q2. Since q2 2= F, the automaton rejects the word. In both Example 1 and Example 2, we have given a formal definition of the automata. We can also give a formal definition of the automata's computation in the following way: Definition 2. [8] Let M = (Q, Σ, δ, q0,F ) be a finite automaton and let w = w1w2 ... wn be a string where each wi is a member of the alphabet Σ. Then M accepts w if a sequence of states r0; r1 ... rn in Q exists with three conditions: (i) r0 = q0 (ii) δ(ri, wi+1) = ri+1, for i = 0, ... , n − 1, and (iii) rn 2 F. M recognizes the language A if A = fw j M accepts wg. The following is the standard definition of regular language. Definition 3. Given an alphabet Σ, the collection of regular languages is defined by: • The empty set φ and the empty string are regular. • Each symbol a 2 Σ is regular. • If A and B are regular languages, then A • B (concatenation), A [ B (union), and A∗ (Kleene star) are regular languages Chapter 2 7 Algebraic Characterization of Regular Languages According to Kleene's theorem [4], a language is called a regular language if and only if there is some finite automaton that recognizes it. In other words, a FSA has the same expressive power as regular languages. We can revisit the previous examples to demonstrate this theorem. In Example 1, we can also run the machine on an input word w = aba.
Recommended publications
  • Sage 9.4 Reference Manual: Monoids Release 9.4
    Sage 9.4 Reference Manual: Monoids Release 9.4 The Sage Development Team Aug 24, 2021 CONTENTS 1 Monoids 3 2 Free Monoids 5 3 Elements of Free Monoids 9 4 Free abelian monoids 11 5 Abelian Monoid Elements 15 6 Indexed Monoids 17 7 Free String Monoids 23 8 String Monoid Elements 29 9 Utility functions on strings 33 10 Hecke Monoids 35 11 Automatic Semigroups 37 12 Module of trace monoids (free partially commutative monoids). 47 13 Indices and Tables 55 Python Module Index 57 Index 59 i ii Sage 9.4 Reference Manual: Monoids, Release 9.4 Sage supports free monoids and free abelian monoids in any finite number of indeterminates, as well as free partially commutative monoids (trace monoids). CONTENTS 1 Sage 9.4 Reference Manual: Monoids, Release 9.4 2 CONTENTS CHAPTER ONE MONOIDS class sage.monoids.monoid.Monoid_class(names) Bases: sage.structure.parent.Parent EXAMPLES: sage: from sage.monoids.monoid import Monoid_class sage: Monoid_class(('a','b')) <sage.monoids.monoid.Monoid_class_with_category object at ...> gens() Returns the generators for self. EXAMPLES: sage: F.<a,b,c,d,e>= FreeMonoid(5) sage: F.gens() (a, b, c, d, e) monoid_generators() Returns the generators for self. EXAMPLES: sage: F.<a,b,c,d,e>= FreeMonoid(5) sage: F.monoid_generators() Family (a, b, c, d, e) sage.monoids.monoid.is_Monoid(x) Returns True if x is of type Monoid_class. EXAMPLES: sage: from sage.monoids.monoid import is_Monoid sage: is_Monoid(0) False sage: is_Monoid(ZZ) # The technical math meaning of monoid has ....: # no bearing whatsoever on the result: it's ....: # a typecheck which is not satisfied by ZZ ....: # since it does not inherit from Monoid_class.
    [Show full text]
  • Monoids (I = 1, 2) We Can Define 1  C 2000 M
    Geometria Superiore Reference Cards Push out (Sommes amalgam´ees). Given a diagram i : P ! Qi Monoids (i = 1; 2) we can define 1 c 2000 M. Cailotto, Permissions on last. v0.0 u −!2 Send comments and corrections to [email protected] Q1 ⊕P Q2 := coker P −! Q1 ⊕ Q2 u1 The category of Monoids. 1 and it is a standard fact that the natural arrows ji : Qi ! A monoid (M; ·; 1) (commutative with unit) is a set M with a Q1 ⊕P Q2 define a cocartesian square: u1 composition law · : M × M ! M and an element 1 2 M such P −−−! Q1 that: the composition is associative: (a · b) · c = a · (b · c) (for ? ? all a; b; c 2 M), commutative: a · b = b · a (for all a; b 2 M), u2 y y j1 and 1 is a neutral element for the composition: 1 · a = a (for Q2 −! Q1 ⊕P Q2 : all a 2 M). j2 ' ' More explicitly we have Q1 ⊕P Q2 = (Q1 ⊕ Q2)=R with R the A morphism (M; ·; 1M ) −!(N; ·; 1N ) of monoids is a map M ! N smallest equivalence relation stable under product (in Q1 ⊕P of sets commuting with · and 1: '(ab) = '(a)'(b) for all Q2) and making (u1(p); 1) ∼R (1; u2(p)) for all p 2 P . a; b 2 M and '(1 ) = 1 . Thus we have defined the cat- M N In general it is not easy to understand the relation involved in egory Mon of monoids. the description of Q1 ⊕P Q2, but in the case in which one of f1g is a monoid, initial and final object of the category Mon.
    [Show full text]
  • Event Structures and Trace Monoids
    View metadata, citation and similar papers at core.ac.uk brought to you by CORE provided by Elsevier - Publisher Connector Theoretical Computer Science 91 (1991) 285-313 285 Elsevier Event structures and trace monoids Brigitte Rozoy* L.I.U.C. Universitt. 14032 CAEN Cedex, France P.S. Thiagarajan** The Institute of Mathematical Sciences, Madras 600 113, India Communicated by M. Nivat Received May 1989 Abstract Rozoy, B. and P.S. Thiagarajan, Event structures and trace monoids, Theoretical Computer Science 91 (1991) 285-313. Event structures are a poset-based model for describing the behaviour of distributed systems. They give rise to a well-understood class of Scott domains. Event structures are also related to Petri nets in a fundamental way. Trace monoids are a string-based formalism for describing the behaviour of distributed systems. They have an independent theory rooted in the theory of formal languages. Here we obtain a representation of trace monoids in terms of a subclass of labelled event structures. Rozoy, B. and P.S. Thiagarajan, Event structures and trace monoids, Theoretical Computer Science 91 (1991) 2855313. Les structures d’evenements peuvent itre vus comme un modele de representation du comportement des systemes distribues, base sur les ensembles partiellement ordonnes. IIs sont associes de facon classique a une classe de domaines de Scott, et aux reseaux de Petri. Les mono’ides de traces constituent aussi un moddle de description du fonctionnement des systemes distribues, a partir dun formalisme de theorie des langages. Cet article etablit entre eux des theoremes de representation. 0. Introduction In recent years, languages accompanied by a commutability relation (over the alphabet of the language) have received a good deal of attention.
    [Show full text]
  • Bi-Atomic Classes of Positive Semirings
    BI-ATOMIC CLASSES OF POSITIVE SEMIRINGS NICHOLAS R. BAETH, SCOTT T. CHAPMAN, AND FELIX GOTTI Abstract. A subsemiring of R is called a positive semiring provided that it contains 1 and consists of nonnegative numbers. Here we study factorizations in both the additive monoid pS; q and the multiplicative monoid pSzt0u; ¤q. In particular, we investigate when, for a positive semiring S, both pS; q and pSzt0u; ¤q have the following properties: atomicity, the ACCP, the bounded factorization property (BFP), the finite factorization property (FFP), and the half-factorial property (HFP). It is well known that in the context of cancellative and commutative monoids, the chain of implications HFP ñ BFP and FFP ñ BFP ñ ACCP ñ atomicity holds. We construct classes of positive semirings S wherein the additive and multiplicative structures both satisfy each of these properties and give examples to show that, in general, none of the implications in the previous chain is reversible. 1. Introduction The atomic structure of positive monoids (i.e., additive submonoids of the nonnegative cone of the real line) has been the subject of much recent investigation. The simplest positive monoids are numerical monoids (i.e., additive monoids consisting of nonnegative integers, up to isomorphism), and their additive structure has been investigated by many authors during the last three decades (see [4, 23] and references therein). In addition, the atomicity of Puiseux monoids (i.e., additive monoids consisting of nonnegative rational numbers) has been the subject of various papers during the last four years (see [14, 15] and references therein). Puiseux monoids have also been studied in connection to commutative rings [20] and factorizations of matrices [6].
    [Show full text]
  • On Regularity and the Word Problem for Free Idempotent Generated Semigroups
    ON REGULARITY AND THE WORD PROBLEM FOR FREE IDEMPOTENT GENERATED SEMIGROUPS IGOR DOLINKA, ROBERT D. GRAY, AND NIK RUSKUCˇ Abstract. The category of all idempotent generated semigroups with a pre- scribed structure E of their idempotents E (called the biordered set) has an initial object called the free idempotent generated semigroup over E, defined by a presentation over alphabet E, and denoted by IG(E). Recently, much effort has been put into investigating the structure of semigroups of the form IG(E), especially regarding their maximal subgroups. In this paper we take these investigations in a new direction by considering the word problem for IG(E). We prove two principal results, one positive and one negative. We show that, for a finite biordered set E, it is decidable whether a given word w ∈ E∗ represents a regular element; if in addition one assumes that all maxi- mal subgroups of IG(E) have decidable word problems, then the word problem in IG(E) restricted to regular words is decidable. On the other hand, we exhibit a biorder E arising from a finite idempotent semigroup S, such that the word problem for IG(E) is undecidable, even though all the maximal subgroups have decidable word problems. This is achieved by relating the word problem of IG(E) to the subgroup membership problem in finitely presented groups. 1. Introduction In his foundational paper [28] Nambooripad made the fundamental observation that the set of idempotents E(S) of an arbitrary semigroup S carries the abstract structure of a so-called biordered set (or regular biordered set in the case of regular semigroups).
    [Show full text]
  • On Some Properties of the Free Monoids with Applications to Automata Theory*
    JOURNAL OF COMPUTER AND SYSTEM SCIENCES: 1, 13%154 (1967) On Some Properties of the Free Monoids with Applications to Automata Theory* YEHOSHAFAT GIVE'ON The Aiken Computation Laboratory, Harvard University, Cambridge, Massachusetts 02138 INTRODUCTION Let T be any set, and denote by T* the free monoid generated by T. By definition, T* is characterized by the property that, for any function f from the set T into the carrier of any monoid M, there exists a unique monoid homornorphism f* : T* -+ M whose underlying function is an extension of the function f. This property of the free monoids is very useful in many applications where free monoids are encountered. Another property of the free monoids follows immediately from this definition. Namely, for any homomorphism h : T*-+ M 2 and any surjective homomorphism f : M 1 -~ M 2 there exists at least one homomorphism g : T* ~ M 1 such that Ylhm ~ M l ~ M a f commutes. This paper will be concerned with the following issues: (i) The above-mentioned derived property of the free monoids characterizes the free monoids in the category M of all monoids. This property should not be confused with either the defining property of the free monoids or with the property of the projective objects in 19I. On the other hand, our method of proof yields the analogous characterization of the free Abelian monoids in the category of Abelian monoids. (ii) Since every monoid is a homomorphic image of a free monoid, the above- derived property leads us to consider idempotent endomorphisms of free monoids.
    [Show full text]
  • Subdirect Products of Free Semigroups and Monoids
    Subdirect products of free semigroups and monoids Ashley Clayton This thesis is submitted in partial fulfilment for the degree of Doctor of Philosophy (PhD) at the University of St Andrews April 2020 Abstract Subdirect products are special types of subalgebras of direct products. The purpose of this thesis is to initiate a study of combinatorial properties of subdirect products and fiber products of semigroups and monoids, motivated by the previous work on free groups, and some recent advances in general algebra. In Chapter 1, we outline the necessary preliminary definitions and results, including elements of algebraic semigroup theory, formal language theory, automata theory and universal algebra. In Chapter 2, we consider the number of subsemigroups and subdirect prod- ucts of N×N up to isomorphism. We obtain uncountably many such objects, and characterise the finite semigroups S for which N × S has uncountably many subsemigroups and subdirect products up to isomorphism. In Chapter 3, we consider particular finite generating sets for subdirect prod- ucts of free semigroups introduced as \sets of letter pairs". We classify and count these sets which generate subdirect and fiber products, and discuss their abundance. In Chapter 4, we consider finite generation and presentation for fiber products of free semigroups and monoids over finite fibers. We give a characterisation for finite generation of the fiber product of two free monoids over a finite fiber, and show that this implies finite presentation. We show that the fiber product of two free semigroups over a finite fiber is never finitely generated, and obtain necessary conditions on an infinite fiber for finite generation.
    [Show full text]
  • Noncommutative Rational Pólya Series 2
    NONCOMMUTATIVE RATIONAL PÓLYA SERIES JASON BELL AND DANIEL SMERTNIG Abstract. A (noncommutative) Pólya series over a field K is a formal power series whose nonzero coefficients are contained in a finitely generated subgroup of K×. We show that rational Pólya series are unambiguous rational series, prov- ing a 40 year old conjecture of Reutenauer. The proof combines methods from noncommutative algebra, automata theory, and number theory (specifically, unit equations). As a corollary, a rational series is a Pólya series if and only if it is Hadamard sub-invertible. Phrased differently, we show that every weighted finite automaton taking values in a finitely generated subgroup of a field (and zero) is equivalent to an unambiguous weighted finite automaton. 1. Introduction and main results Let K be a field. A univariate formal power series S = s(n)xn KJxK ∈ nX≥0 is a rational series if it is the power series expansion of a rational function at 0. Neces- sarily, this rational function does not have a pole at 0. Equivalently, the coefficients of a rational series satisfy a linear recurrence relation, that is, there exist α1, . , αm K such that ∈ s(n + m)= α s(n + m 1) + + αms(n) forall n 0. 1 − ··· ≥ Pólya [Pó21] considered arithmetical properties of rational series over K = Q, and characterized the univariate rational series whose coefficients are supported at finitely many prime numbers. This was later extended to number fields by Benzaghou [Ben70, arXiv:1906.07271v3 [math.CO] 29 Jan 2021 Chapitre 5], and to arbitrary fields, in particular fields of positive characteristic, by Bézivin [Bé87].
    [Show full text]
  • On Finitely Generated Submonoids of Virtually Free Groups
    On finitely generated submonoids of virtually free groups Pedro V. Silva1, Alexander Zakharov2 Centre of Mathematics, University of Porto, R. Campo Alegre 687, 4169-007 Porto, Portugal Abstract We prove that it is decidable whether or not a finitely generated submonoid of a virtually free group is graded, introduce a new geometric characterization as quasi- geodesic monoids, and show that their word problem is rational (as a relation). We also solve the isomorphism problem for this class of monoids, generalizing earlier results for submonoids of free monoids. We also prove that the classes of graded monoids, regular monoids and Kleene monoids coincide for submonoids of free groups. MSC: 20E05; 20M05; 20F10; 68Q45; 68Q70 Keywords: Free group; virtually free group; submonoids; graded monoid; rational monoid; Kleene monoids; decidability 1 Introduction A lot is known about subgroups of free groups. And the seminal work of Stallings [21] provided the tools to expand that knowledge in multiple directions, particularly when au- tomata got into the picture (see [2], [9]). This glorious picture fades away when we change from subgroups to submonoids, even in the finitely generated case. Indeed, we cannot use anymore inverse automata and that is a major setback. The membership problem is still decidable, as a consequence of Benois’ Theorem (see [17, Theorem 6.1, p.314]), but e.g. the isomorphism problem remains open. On the other hand, submonoids of virtually free groups (i.e. groups admitting a free subgroup of finite index) have been studied in [5]. In this paper, we explore a subclass of finitely generated submonoids of virtually free groups which is somehow in the antipodals of subgroups.
    [Show full text]
  • An Efficient Algorithm to Decid Whether a Monoid Presented by a Regular Church-Rosser Thue System Ls a Group
    View metadata, citation and similar papers at core.ac.uk brought to you by CORE provided by Elsevier - Publisher Connector Theoretical Computer Science 66 (1989) 55-63 55 North-Holland AN EFFICIENT ALGORITHM TO DECID WHETHER A MONOID PRESENTED BY A REGULAR CHURCH-ROSSER THUE SYSTEM LS A GROUP Zhang Luo XIN Department of Mathematics, Lanzhou University, Lanzhou, Gansu, People’s Rep. China Communicated by R. Book Received August 1987 Revised January 1988 Abstract. We give an 0( IAI’ x 1TI) algorithm that on the input of a regular Church-Rosser Thue system T on alphabet A decides whether or not the monoid MT presented by T is a group, where IAl is the cardinality of A, and ITI is the size of the Thue system T. In addition, a problem is presented that is decidable for regular monadic Church-Rosser Thue systems, but that is undeci- dable for finite non-monadic Church-Rosser Thue systems. Introduction The Church-Rosser property has been shown to be a very powerful tool in providing decidability results for monoids. Many decision problems for monoids, that are undecidable in general, become decidable when they are restricted to presentations involving the Church-Rosser property [2-5,12,13,15,16]. In addi- tion, Nivat and co-workers studied the Church-Rosser property when they investi- gated Thue congruences that specify formai languages [6,14]. It is well known that there is no algorithm to decide whether or not a monoid presented by a Thue system is a group. There are cases where this problem is decidable [l, 3,4,11,16].
    [Show full text]
  • A Tale of Theories and Data-Structures
    A tale of theories and data-structures Jacques Carette, Musa Al-hassy, Wolfram Kahl McMaster University, Hamilton June 4, 2018 Carette, Al-hassy, Kahl (McMaster) A tale of theories and data-structures June 4, 2018 1 / 15 Fancy explanation: The functor from the category Types of types and function, with List as its object mapping and map for homomorphism, to the category Monoid of monoids and monoid homomorphisms, is left adjoint to the forgetful functor (from Monoid to Types). List (equipped with constructors [], :: and functions map, ++, singleton, and foldr) is the language of monoids. In other words, List is the canonical term syntax for computing with monoids. Why on earth would we care about that? Let's see! Lists and Monoids Claim A List is a Free Monoid What does that really mean? Carette, Al-hassy, Kahl (McMaster) A tale of theories and data-structures June 4, 2018 2 / 15 List (equipped with constructors [], :: and functions map, ++, singleton, and foldr) is the language of monoids. In other words, List is the canonical term syntax for computing with monoids. Why on earth would we care about that? Let's see! Lists and Monoids Claim A List is a Free Monoid What does that really mean? Fancy explanation: The functor from the category Types of types and function, with List as its object mapping and map for homomorphism, to the category Monoid of monoids and monoid homomorphisms, is left adjoint to the forgetful functor (from Monoid to Types). Carette, Al-hassy, Kahl (McMaster) A tale of theories and data-structures June 4, 2018 2 / 15 Why on earth would we care about that? Let's see! Lists and Monoids Claim A List is a Free Monoid What does that really mean? Fancy explanation: The functor from the category Types of types and function, with List as its object mapping and map for homomorphism, to the category Monoid of monoids and monoid homomorphisms, is left adjoint to the forgetful functor (from Monoid to Types).
    [Show full text]
  • On the Complexity of Reasoning in Kleene Algebra
    On the Complexity of Reasoning in Kleene Algebra Dexter Kozen Computer Science Department, Upson Hall, Cornell University, Ithaca, NY 14853-7501, USA E-mail: [email protected] We study the complexity of reasoning in Kleene algebra and -continuous Kleene algebra in the presence of extra equational assumptions E ; that is, the complexity s t E of deciding the validity of universal Horn formulas E , where is a finite set of equations. We obtain various levels of complexity based on the form of the E assumptions E . Our main results are: for -continuous Kleene algebra, (i) if pq qp contains only commutativity assumptions , the problem is -complete; E (ii) if contains only monoid equations, the problem is -complete; and (iii) for E arbitrary equations , the problem is -complete. The last problem is the universal Horn theory of the -continuous Kleene algebras. This resolves an open question of [22]. 1. INTRODUCTION Kleene algebra (KA) is fundamental and ubiquitous in computer science. Since its invention by Kleene in 1956, it has arisen in various forms in program logic and semantics [18, 30], relational algebra [29, 34], automata theory [25, 26], and the design and analysis of algorithms [1, 16]. Many authors have contributed to the development of Kleene algebra over the years [2, 3, 4, 6, 7, 8, 12, 17, 18, 19, 22, 24, 26, 31, 32, 33]. On the practical side, KA provides a natural and effective tool for equational specification and verification. It has recently been used successfully in numerous applications involving basic safety analysis, low-level program transformations, and concurrency control [9, 10, 23].
    [Show full text]