Content deleted Content added
reference added |
m Moving Category:Finite automata to Category:Finite-state machines per Wikipedia:Categories for discussion/Speedy |
||
(30 intermediate revisions by 24 users not shown) | |||
Line 1:
In the [[theory of computation]], a '''generalized nondeterministic finite
==Formal definition==
A GNFA can be defined as a [[n-tuple|5-tuple]], (''S'', Σ, ''T'', ''s'', ''a''), consisting of
* a [[finite set]] of states (''S'');
* a finite set called the alphabet (Σ);
* a transition [[function (mathematics)|function]] (''T'' : (''S''
* a start state (''s'' ∈ ''S'');
* an accept state (''a'' ∈ ''S'');
where ''R'' is the collection of all regular expressions over the alphabet Σ.
The transition function takes as its argument a pair of two states and outputs a regular expression (the label of the transition). This differs from other finite state machines, which take as input a single state and an input from the alphabet (or the empty string in the case of nondeterministic finite state machines) and outputs the next state (or the set of possible states in the case of nondeterministic finite state machines). A [[deterministic finite automaton|DFA]] or [[nondeterministic finite automaton|NFA]] can easily be converted into a GNFA and then the GNFA can be easily converted into a [[regular expression]] by repeatedly collapsing parts of it to single edges until ''S'' = {''s'', ''a''}. Similarly, GNFAs can be reduced to NFAs by changing regular expression operators into new edges until each edge is labelled with a regular expression matching a single string of length at most 1. NFAs, in turn, can be reduced to DFAs using the [[powerset construction]]. This shows that GNFAs recognize the same set of [[formal language]]s as DFAs and NFAs.
==References==
* Yo-Sub Han and [[Derick Wood]]. "The Generalization of Generalized Automata: Expression Automata." In: 9th International [[Conference on Implementation and Application of Automata]], CIAA 2004, Kingston, Canada, July 22–24, 2004, Revised Selected Papers, [[LNCS]] 3317, pp. 156–166. {{doi|10.1007/b105090}}
* [[Michael Sipser]]. 2006. Introduction to the Theory of Computation (2nd ed.). International Thomson Publishing.
==External links==
* A graphical description of GNFAs and the process of converting an NFA to a regular expression using GNFAs, can be found at [http://www.cs.sunysb.edu/~cse350/slides/rgExp2.pdf]
[[Category:Finite-state machines]]
|