This is an old revision of the document!
Finite state machine with epsilon transitions
Finite state machine with epsilon transitions is an extension of a finite state machine where transitions can be labelled by . If such a transition
exists then an automaton may transition from
to
without consuming any portion of the input string.
As for finite state machine, we define a finite state machine with epsilon transitions as a 5-tuple with the only difference that
where
is a special symbol.
An execution is now an alternating sequence of states and elements of . The word accepted by a given accepting execution is given by concatenating the labels of all transitions in an execution, with
transitions ignored.
Epsilon transitions are a matter of convenience and can always be eliminated by the following process. For each state we compute the set of all states
reachable from
along the edges with
transitions, and add the outgoing non-epsilon edges of
as outgoing edges of
. We also insert
into
whenever one of the states
is in
. The resulting automaton accepts the same langauge and has no
transitions.