
< previous page page_86 next page >
Page 86
In order to define what we mean by the language accepted by such a machine, we have to define an
appropriate ‘extended transition function.’ This is slightly more involved than before, so I shall begin
with an informal description. A path in an
ε
-automaton is a sequence of states each labelled by an
element of the set
. The string corresponding to this path is the
concatenation
of these labels in
order. We say that a string
x
is accepted by an
ε
-automaton if there is a path from an initial state to a
terminal state the concatenation of whose labels is
x
. I now have to put this idea on a sound footing.
Let
A
be an alphabet. If
,
then for all we have that
a
=
εmaεn
. However,
εmaεn
is also a
string
consisting of
m ε
’s followed by one
a
followed by a further
n ε
’s. We call this string an
ε-extension
of the symbol
a
. The
value
of the
ε
-extension
εmaεn
is
a
. More generally, we can define an
ε
-extension
of a string
to be the product of
ε
-extensions of each symbol in
x
. The value of any such
ε
-
extension is just
x
. For example, the string
aba
has
ε
-extensions of the form
εmaεnbεpaεq,
where
. Let A be a non-deterministic automaton with
ε
-transitions. We say that
x
is
accepted by
A
if
some ε
-extension of
x
labels a path in A starting at some initial state and ending at some terminal
state. As usual we write
L
(A) to mean the set of all strings accepted by A. It is now time for a concrete
example.
Example 4.1.1 Consider the diagram below:
This is clearly a non-deterministic automaton with
ε
-transitions. We find some examples of strings
accepted by this machine. First of all, the letter
a
is accepted. At first sight, this looks wrong, because
there are no transitions from
p
to
r
labelled by
a
. However, this is not our definition of how a string is
accepted. We have to check
all possible ε-extensions of a
. In this case, we immediately see that
εa
labels a path from
p
to
r,
and so
a is
accepted. Notice, by the way, that it is the
value
of the
ε
-
extension that is accepted; so, if you said
εa
was accepted, I would have to say that you were wrong.
The letter
b
is accepted, because
bεε
labels a path from
p
to
r
. The string
bb
is accepted, because
bεbε
labels a path from
p
to
r
.
Now that we understand how
ε
-automata are supposed to behave, we can formally define the extended
transition function . To do this, we shall use the following definition. Let A be a non-deterministic
automaton with
ε-
transitions, and let
s
be an arbitrary state of A. The
ε-closure of s,
denoted by
E(s),
consists of
s
itself together with all states in A, which can be reached
< previous page page_86 next page >