TheoreticalComputerScience - COnnecting REpositories A.J.Cain/TheoreticalComputerScience410(2009)5022

  • View

  • Download

Embed Size (px)

Text of TheoreticalComputerScience - COnnecting REpositories...

  • Theoretical Computer Science 410 (2009) 5022–5038

    Contents lists available at ScienceDirect

    Theoretical Computer Science

    journal homepage:

    Automaton semigroups Alan J. Cain ∗ Centro de Matemática da Universidade do Porto, Rua do Campo Alegre 687, 4169–007 Porto, Portugal

    a r t i c l e i n f o

    Article history: Received 15 September 2008 Received in revised form 17 July 2009 Accepted 25 July 2009 Communicated by B. Durand

    Keywords: Automaton semigroup Constructions Cayley automata

    a b s t r a c t

    The concept of an automaton group generalizes easily to semigroups, and the systematic study of this area is beginning. This paper aims to contribute to that study. The basic theory of automaton semigroups is briefly reviewed. Various natural semigroups are shown to arise as automaton semigroups. The interaction of certain semigroup constructions with the class of automaton semigroups is studied. Semigroups arising from Cayley automata are investigated. Various open problems and areas for further research are suggested.

    © 2009 Elsevier B.V. All rights reserved.

    1. Introduction

    Automaton groups — groups of automorphisms of labelled rooted trees generated by actions of automata — were introduced in the early 1980s as interesting examples having ‘exotic’ properties. Grigorčuk’s infinite periodic group [1] was the first such example, and it inspired later ones such as the Gupta–Sidki group [2]. Since then, a substantial theory has developed; see, for example, Nekrashevych’smonograph [3] or one of the surveys by the school led by Bartholdi, Grigorchuk, Nekrashevych, and Šunić [4–6]. The notion of an automaton group naturally generalizes to semigroups, and the study of this generalization is beginning (see, for instance, Silva & Steinberg [7] or Grigorchuk, Nekrashevich & Sushchanskii [8, esp. Section 4 & Section 7.2]). This paper aims to contribute to this study. There are two main motivations for studying automaton semigroups. First, studies of other automata-theoretic

    ‘descriptions’ of groups have proved fruitful when generalized to semigroups: automatic structures in the sense of Epstein et al. [9,10]; automatic presentations [11,12]; the context-free language view of hyperbolic structures [13]. Second, and more importantly, studying the more general situation of automaton semigroups may shed light on the particular case of automaton groups: the ‘looser’ setting of semigroups may allow insights that can later be imported into the ‘stricter’ setting of groups. A historical parallel is the undecidability of the word problem. This was first established for finitely presented semigroups by Post [14] and later proved for finitely presented groups by Boone [15] and Novikov [16]. Sections 2 and 3 introduce and develop the concept of an automaton semigroup without assuming any prior knowledge

    beyond elementary semigroup theory and automata theory. In particular, Section 3 reviews the basic theory of automaton semigroups. Section 4 then exhibits naturally occurring examples and classes of automaton semigroups. In particular, free semigroups

    and free commutative semigroups are shown to be automaton semigroups, as are the free monoid of rank 1 and the [semigroup] free product of two trivial semigroups. The author hopes that this section will win over any sceptics who perhaps suspect that the class of automaton semigroups might consist only of the automaton groups together with uninteresting, ‘artificial’, non-group semigroups.

    ∗ Tel.: +351 217904850. E-mail address: URL:∼alanc.

    0304-3975/$ – see front matter© 2009 Elsevier B.V. All rights reserved. doi:10.1016/j.tcs.2009.07.054

  • A.J. Cain / Theoretical Computer Science 410 (2009) 5022–5038 5023

    Semigroup constructions are considered next, in Section 5. This area is potentially broad and requires further study, and this paper only takes the first steps into it and outlines a number of open problems. Section 6 is devoted to semigroups arising from Cayley automata — that is, automata obtained by viewing the Cayley

    graph of a finite semigroup as an automaton. The overmastering theme is to establish correspondences between certain properties of finite semigroups and properties of the Cayley automaton semigroups arising therefrom. A wider study of Cayley automaton semigroups has been undertaken by Maltcev [17]. Various open questions are scattered throughout the paper in the appropriate relevant contexts. [It should be emphasized that, despite their similar names, the notions of automaton groups and semigroups are entirely

    separate from the notions of automatic groups and semigroups whose study was begun by Epstein et al. [9] and Campbell et al. [10], respectively.]

    2. Automaton semigroups

    The present section is devoted to stating the various definitions required. These definitions will be illustrated by means of a running example, which will culminate in identifying the semigroup defined by a particular automaton. A basic point of notation:N∗ denotes thenatural numbersnot including zero andN0 denotes thenatural numbers including


    2.1. Automata, actions & semigroups

    An automatonA is formally a triple (Q , B, δ), where Q is a finite set of states, B is a finite alphabet of symbols, and δ is a transformation of the set Q × B. The automatonA is normally viewed as a directed labelled graph with vertex set Q and an edge from q to r labelled by x | ywhen (q, x)δ = (r, y):

    The interpretation of this is that if the automaton A is in state q and reads symbol x, then it changes to the state r and outputs the symbol y. Thus, starting in some state q0, the automaton can read a sequence of symbols α1α2 . . . αn and output a sequence β1β2 . . . βn, where (qi−1, αi)δ = (qi, βi) for all i = 1, . . . , n. Such automata are more usually known in computer science as deterministic real-time (synchronous) transducers. In

    the established field of automaton groups, they are simply called ‘automata’ and this paper retains this terminology. The automatonA, which outputs exactly one symbol for every symbol it reads, is said to be synchronous. A more general

    type of automaton exists which can output zero or many letters on each input (in which case δ would be a function from Q × B to Q × B∗). The present paper is solely concerned with synchronous automata.

    Example. Consider the following automatonA = (Q , B, δ):

    The state set Q of this automaton is {a, b}. Its alphabet B is {0, 1}. The function δ is formally defined by

    (a, 0) 7→ (b, 0), (b, 0) 7→ (b, 0), (a, 1) 7→ (a, 1), (b, 1) 7→ (a, 0).

    Suppose, for example, that A starts in state a and reads 0011. Then it outputs 0001. The sequence of states visited during this computation is a, b, b, a, a.

    Each state q ∈ Q acts on B∗, the set of finite sequences of elements of B. The action of q ∈ Q on B∗ is defined as follows: α · q (the result of q acting on α) is defined to be the sequence the automaton outputs when it starts in the state q and reads the sequence α. That is, if α = α1α2 . . . αn (where αi ∈ B), then α · q is the sequence β1β2 . . . βn (where βi ∈ B), where (qi−1, αi)δ = (qi, βi) for all i = 1, . . . , n, with q0 = q. Observe that, since A outputs one letter for each letter it reads, |α · q| = |α|. (The length of the sequence α is denoted


    Example. Returning to the running example: The automaton A acts on the set of words B∗; it has already been shown that 0011 · a = 0001. Notice that |0011| =

    |0001| = 4. As a further example, notice that for any i ∈ N∗, 1i · a = 1i and 1i · b = 01i−1.

  • 5024 A.J. Cain / Theoretical Computer Science 410 (2009) 5022–5038

    Fig. 1. The set {0, 1}∗ viewed as a rooted binary tree.

    The set B∗ can be identifiedwith an ordered regular tree of degree |B|. The vertices of this tree are labelled by the elements of B∗. The root vertex is labelledwith the emptyword ε, and a vertex labelled α (where α ∈ B∗) has |B| childrenwhose labels are αβ for each β ∈ B. It is convenient not to distinguish between a vertex and its label, and thus one normally refers to ‘the vertex α’ rather than ‘the vertex labelled by α’. (Fig. 1 illustrates the tree corresponding to {0, 1}∗.) The action of a state q on B∗ can thus be viewed as a transformation of the corresponding tree, sending the vertex w to

    the vertex w · q. Notice that, by the definition of the action of q, if αα′ · q = ββ ′ (where α, β ∈ B∗ and α′, β ′ ∈ B), then α · q = β · q. In terms of the transformation on the tree, this says that if one vertex (α) is the parent of another (αα′), then their images under the action by q are also parent (β) and child (ββ ′) vertices. More concisely, the action of q on the tree preserves adjacency and is thus an endomorphism of the tree. Furthermore, the action’s preservation of lengths of sequences becomes a preservation of levels in the tree. The actions of states extends naturally to actions of