tttardigrade

Algebraic Automata Theory #1

Most intro courses to automata theory only cover the classical theory of authomata: DFAs, NFAs, regular expressions, their properties, and the conversions between them. But some important results in automata theory cannot be proved using only those methods. Sometimes we need to reach to the scary algebraic structures of semigroups and monoids.

Algebraic Automata Theory studies the (perhaps surprising) connection between automata and algebra. This series of posts are my personal notes as I try to learn AAT. I'm sure they contain many errors, but I hope that they are usefull to someone trying to learn it too.

Semigroups

Since we want to study the connection between algebra and automata, we need to start with some algebrai concepts.

Def: A semigroup is a pair S=(S,·) where S is a set and ·:S×SS is an associative binary operation on S, that is: $ a \cdot (b \cdot c) = (a \cdot b) \cdot c \qquad \forall a,b,c \in S$

Since the semigroup operation (often called "multiplication") is associative, we don't need to worry about parenthesis since the evaluation of expressions becomes unambiguous. It is common to use the notation an to denote the multiplication of nN copies of aS.

Lemma: The following properties hold:

  1. anam=an+m
  2. (an)m=anm

There are some important kinds of semigroup elements with certain properties:

  1. Left identities: 1l·a=a (aS)
  2. Right identities: a·1r=a (aS)
  3. Left zeroes: 0l·a=0l (aS)
  4. Right zeroes: a·0r=0r (aS)
  5. Identities: 1·a=a=a·1 (aS)
  6. Zeroes: 0·a=0=a·0 (aS)

Lemma: A semigroup can have, at most, one identity and one zero element.

Proof: Let a,b be two identity elements. Then a=ab=b. The same argument applies to the other case.

A semigroup with identity is called a monoid (which are also important for automata theory):

Def: A monoid is a triple M=(M,·,1) where M is a set, ·:M×MM is an associative binary operation on M, and 1M is an identity element, that is: $ a \cdot (b \cdot c) = (a \cdot b) \cdot c \qquad \forall a,b,c \in M$ $ a \cdot 1 = a = 1 \cdot a \qquad \forall a \in M$

Any semigroup S can be turned into a monoid S1:

S1={Sif S has an identity elementS{1}otherwise

where 1S is the identity of the monoid and the multiplication is extended accordingly.

There are other important kinds of semigroups:

  1. Finite Semigroups: the carrier set is finite
  2. Abelian Semigroups: the multiplication is commutative
  3. Groups: All elements have inverses

Another important kind of element of a semigroup are the idempotents. An element iS is said to be idempotent if i2=i. The set of idempotent elements of S is denoted by E(S).

Thm: Every finite semigroup has an idempotent element.

Proof: Let aS. Since S is finite, the sequence a,a2,a3, must eventually become periodic with period p. Let k be the first integer such that ak=ak+p. Let m=kp. Since m>k, am=am+kp=am+m=a2m=(am)2. Thus, am is an idempotent element.

Homomorphisms

Perhaps the most important feature of modern mathematics is the study of not only structures, but also of the structure preserving maps between them:

Def: Let S=(S,·) and T=(T,×) be semigroups. A semigroup homomorphism is a function φ:ST such that φ(a·b)=φ(a)×φ(b)

This notion extends easily to monoids by requiring that the identity element is also preserved, i.e., φ(1S)=1T.