Open main menu
Home
Random
Recent changes
Special pages
Community portal
Preferences
About Wikipedia
Disclaimers
Incubator escapee wiki
Search
User menu
Talk
Dark mode
Contributions
Create account
Log in
Editing
Nondeterministic finite automaton
(section)
Warning:
You are not logged in. Your IP address will be publicly visible if you make any edits. If you
log in
or
create an account
, your edits will be attributed to your username, along with other benefits.
Anti-spam check. Do
not
fill this in!
==Closure properties== [[File:Thompson-or.svg|thumb|Composed NFA accepting the union of the languages of some given NFAs {{color|#800000|''N''(''s'')}} and {{color|#008000|''N''(''t'')}}. For an input string ''w'' in the language union, the composed automaton follows an ε-transition from ''q'' to the start state (left colored circle) of an appropriate subautomaton — {{color|#800000|''N''(''s'')}} or {{color|#008000|''N''(''t'')}} — which, by following ''w'', may reach an accepting state (right colored circle); from there, state ''f'' can be reached by another ε-transition. Due to the ε-transitions, the composed NFA is properly nondeterministic even if both {{color|#800000|''N''(''s'')}} and {{color|#008000|''N''(''t'')}} were DFAs; vice versa, constructing a DFA for the union language (even of two DFAs) is much more complicated.]] The set of languages recognized by NFAs is [[closed under]] the following operations. These closure operations are used in [[Thompson's construction algorithm]], which constructs an NFA from any [[regular expression]]. They can also be used to prove that NFAs recognize exactly the [[regular languages]]. *Union (cf. picture); that is, if the language ''L''<sub>1</sub> is accepted by some NFA ''A''<sub>1</sub> and ''L''<sub>2</sub> by some ''A''<sub>2</sub>, then an NFA ''A''<sub>u</sub> can be constructed that accepts the language ''L''<sub>1</sub>∪''L''<sub>2</sub>. *Intersection; similarly, from ''A''<sub>1</sub> and ''A''<sub>2</sub> an NFA ''A''<sub>i</sub> can be constructed that accepts ''L''<sub>1</sub>∩''L''<sub>2</sub>. *Concatenation *Negation; similarly, from ''A''<sub>1</sub> an NFA ''A''<sub>n</sub> can be constructed that accepts Σ<sup>*</sup>\''L''<sub>1</sub>. *[[Kleene closure]] Since NFAs are equivalent to nondeterministic finite automaton with ε-moves (NFA-ε), the above closures are proved using closure properties of NFA-ε.
Edit summary
(Briefly describe your changes)
By publishing changes, you agree to the
Terms of Use
, and you irrevocably agree to release your contribution under the
CC BY-SA 4.0 License
and the
GFDL
. You agree that a hyperlink or URL is sufficient attribution under the Creative Commons license.
Cancel
Editing help
(opens in new window)