As above, we assume that A is the finite alphabet set. The set of all finite words in A is denoted with A*. A subset of A* is called a language. 1 is the null word in A* and A+ is the set of words with positive length.
Definition A Finite State Automaton is a graph determined with a
5-tuple
where V is a finite set of vertices
(states), E is a finite set of edges,
is the labeling
function,
is the set of initial states, and
is the
set of terminal states.
So every SA is also a finite state automaton by taking I=T=V.
We extend
to a labeling function
where P is the set
of all finite paths in
in the natural way: if
is a
path in
than
.
As before we consider two
functions
as the source and the target of an edge. For a finite
path
we will call s(e1) the source of p and write s(p) and
t(ek) will be the target of p and we will write t(p).
A finite state automaton is called deterministic if for every vertex the outcomming edges are labeled distinctly.
In the case of a deterministic finite state automaton we will use the following
notations: Let p be a path with v=s(p), w=t(p) and
.
We will
write vx=w and if there is no path starting at v with label x, we will
write
.
Definition A language recognized with a finite state automaton
is the set
A language in A* for which there is a finite state automaton that recognizes it, is called a regular language.
The language recognized by a finite state automaton will not be changed if we erase every state v in the automaton for which: (a) there is no path from an initial state to v, or (b) there is no path from v to a terminal state. The process of erasing such states is called trimming and the obtained automaton is called trimmed. From now on, we will always assume that our automata are trimmed.
Definition Let
.
The right (left) context of v in the graph G is the set
We will write only R(v) and L(v) when G is known.
Definition Let K be a language and
.
The right (left) context
of x with respect to K is the set
We will write only R(x) and L(x) when the language K is known.
Consider the following relation on the set of vertices V:
The relation
is an equivalence and we call it the reduction on
.
We construct the automaton
where
is the set of equivalence classes of
and there is
an edge
in
from [v] to [w] with label a iff there is an
edge
with
,
and
.
iff
.
Definition An automaton
is reduced if the
equivalence classes of
are singletons.
Note 1.2.1
is reduced,
and if
is deterministic then so is
.
We now show that the example of an SFT given by the Figure 1.1 has no deterministic representation with less than 4 vertices and has no representation with 2 vertices.
Consider the words
aa, aab, c, cb and the vertices 1, 2, 3, 4. All paths
with label aa end at vertex 1, all paths with label aab end at vertex 2,
all paths with label c end at vertex 3 and all paths with label cb end
at vertex 4. So we have
R(aa)=R(1),
R(aab)=R(2), R(c)=R(3) and
R(cb)=R(4).
We can note that each of R(aa), R(c) and R(cb) has a word that is not in
any other. For example
.
This means that
every reduced representation of S has at least three vertices 1',2',3',
which are determined with the words aa,c,cb. The words aa,c,cb are in
the left contexts of 1',2',3' respectively.
Where will a path with label aab
end? It can't end at 1' since
.
It can't end only at 2' or
only at 3' since
.
So it must be that
and
i.e. a path with label aab
ends at 2' and at 3'. Where can a path with label aab start? It cannot
start at 2' because
,
and cannot start at 3' because
.
So it must
be that there is a path labeled with aab starting at 1' and ending at 2'
and at 3',
but that is in contradiction with the determinism.