subset construction
The subset construction is a technique of turning a non-deterministic automaton into a deterministic one, while keeping the accepting language the same. This technique shows that an NDFA is no more powerful in terms of word acceptance than a DFA.
We begin by looking at a semiautomaton . The transition function is a function from to , which maps a pair to a subset of . Observe that can be extended to a function from to by setting
(1) |
for any subset of and . Note that . What we have just done is turning a semiautomaton into a deterministic semiautomaton , where , the powerset of .
It is easy to see, by induction on the length of , that .
Next, given an NDFA , we turn it into a DFA as follows:
-
•
is derived from by the construction above,
-
•
, and
-
•
.
Since is an element of , and , is a well-defined DFA.
Proposition 1.
.
Proof.
iff (where ) iff iff . ∎
What happens if the NDFA in question contains -transitions (http://planetmath.org/EpsilonTransition)? Suppose is an -transition, and . Then , which is not allowed in a DFA.
To get around this difficulty, we make a small modification on . First, define, for any , the -closure of as the set
(2) |
For any , . If the automaton does not contain any -transitions, then .
Now, let NDFA be an -automaton (http://planetmath.org/EpsilonAutomaton), define as follows:
-
•
,
-
•
, where is defined in (1) above,
-
•
, and
-
•
.
By definition, is a DFA, and it can be shown that . The proof is very similar to the one given here (http://planetmath.org/EveryEpsilonAutomatonIsEquivalentToAnAutomaton).
Title | subset construction |
---|---|
Canonical name | SubsetConstruction |
Date of creation | 2013-03-22 19:02:00 |
Last modified on | 2013-03-22 19:02:00 |
Owner | CWoo (3771) |
Last modified by | CWoo (3771) |
Numerical id | 7 |
Author | CWoo (3771) |
Entry type | Definition |
Classification | msc 68Q05 |
Classification | msc 03D10 |
Classification | msc 68Q42 |
Synonym | powerset construction |
Related topic | DeterministicFiniteAutomaton |
Defines | -closure |