
< previous page page_87 next page >
Page 87
by following paths labelled
only
by
ε
’s. If
Q
is a set of states, then we define the
ε-closure of Q
by
the union of the
ε
-closures of each of the states in
Q
. Observe that . Referring to Example
4.1.1, the reader should check that
E(p)
=
{p, q}, E(q)
=
{q}, E(r)={r}, E(s)
=
{s, t, r}, E(t)
=
{t, r},
and
E(u)
=
{u, r}
. The only point that needs to be emphasised is that the
ε
-closure of a state must contain
that state, and so it can never be empty.
We are almost ready to define the extended transition function. We need one piece of notation.
Notation If
Q
is a set of states in an
ε
-automaton and then we write
Q
·
a
to mean
;
that is, a state
s
belongs to the set
Q
·
a
precisely when there is a state and a transition in A from
q
to
s
labelled by
a
.
The
extended transition function
of an
ε
-automaton is the unique function from
S
×
A
* to
satisfying the following three conditions where , and
:
(ETF1)
(ETF2)
(ETF3)
Once again, it can be shown that this defines a unique function. This definition agrees perfectly with our
definition of the
ε
-extension of a string. To see why, observe that if
,
then
E(E(s)·a)
is the set of
states that can be reached starting at
s
and following all paths labelled
εmaεn
. More generally,
,
where
,
consists of all states that can be reached starting at
s
and following all paths labelled by
ε
-extensions of
x
. We conclude that the appropriate definition of the language accepted by an
ε
-
automaton is
Our goal now is to show that a language recognised by an
ε
-automaton can be recognised by an
ordinary non-deterministic automaton. To do this, we shall use the following construction. Let A=
(S, A,
I, δε, T)
be a non-deterministic automaton with
ε
-transitions. Define a non-deterministic automaton,
as follows:
• ◊ is a new state.
< previous page page_87 next page >