I was wondering if for every NFA there exists an equivalent DFA? I think the answer is yes. How would one prove it? Since I'm just starting up learning about Automata I'm not confused about this and especially the proof of such a statement.
Can _any_ NFA be converted to a DFA?
-
0Yes. See http://en.wikipedia.org/wiki/Powerset_construction, which works for any NFA (including those with lambda transitions). – 2012-10-25
2 Answers
Indeed, every NFA can be converted to an equivalent DFA. In fact, DFAs, NFAs and regular expressions are all equivalent. One approach would be to observe the NFA and, if it is simple enough, determine the regular expression that it recognizes, then convert the regular expression to a DFA.
Yet, there are algorithms out there that can take an NFA and produce its equivalent DFA. For example, the powerset construction check out this link and google:
http://en.wikipedia.org/wiki/Powerset_construction
Furthermore, every DFA has a unique minimum state DFA that recognizes a regular expression using a minimal number of states. This DFA state minimization also has an algorithm.
Good luck!
-
0I would think that the power set construction is more straightforward that any algorithm that can routinely convert a regular expression to a DFA. Yet your phrasing suggests that the latter needs no explanation! – 2016-11-26
It can be done in two steps:
1) Use subset construction to construct DFA from NFA.
2) Then show for any w $\in$\sum$^*$,
$\hat\delta$_D$({q},a) = $\hat\delta$_N$(q,a). That is for any string and for any set of states they both take you to same set of states.