"DFSA" redirects here. The term may also refer to drug-facilitated sexual assault.
In the theory of computation, a branch of theoretical computer science, a deterministic finite automaton (DFA)—also known as deterministic finite acceptor (DFA), deterministic finite-state machine (DFSM), or deterministic finite-state automaton (DFSA)—is a finite-state machine that accepts or rejects a given string of symbols, by running through a state sequence uniquely determined by the string.[1]Deterministic refers to the uniqueness of the computation run. In search of the simplest models to capture finite-state machines, Warren McCulloch and Walter Pitts were among the first researchers to introduce a concept similar to finite automata in 1943.[2][3]
The figure illustrates a deterministic finite automaton using a state diagram. In this example automaton, there are three states: S0, S1, and S2 (denoted graphically by circles). The automaton takes a finite sequence of 0s and 1s as input. For each state, there is a transition arrow leading out to a next state for both 0 and 1. Upon reading a symbol, a DFA jumps deterministically from one state to another by following the transition arrow. For example, if the automaton is currently in state S0 and the current input symbol is 1, then it deterministically jumps to state S1. A DFA has a start state (denoted graphically by an arrow coming in from nowhere) where computations begin, and a set of accept states (denoted graphically by a double circle) which help define when a computation is successful.
A DFA is defined as an abstract mathematical concept, but is often implemented in hardware and software for solving various specific problems such as lexical analysis and pattern matching. For example, a DFA can model software that decides whether or not online user input such as email addresses are syntactically valid.[4]
DFAs have been generalized to nondeterministic finite automata (NFA) which may have several arrows of the same label starting from a state. Using the powerset construction method, every NFA can be translated to a DFA that recognizes the same language. DFAs, and NFAs as well, recognize exactly the set of regular languages.[1]
^ abHopcroft 2001
^McCulloch and Pitts (1943)
^Rabin and Scott (1959)
^Gouda, Prabhakar, Application of Finite automata
and 22 Related for: Deterministic finite automaton information
deterministicfiniteautomaton (DFA)—also known as deterministicfinite acceptor (DFA), deterministicfinite-state machine (DFSM), or deterministic finite-state...
science), DFA minimization is the task of transforming a given deterministicfiniteautomaton (DFA) into an equivalent DFA that has a minimum number of states...
In computer science, a deterministic acyclic finite state automaton (DAFSA), also called a directed acyclic word graph (DAWG; though that name also refers...
automata, finite tree automata (FTA) can be either a deterministicautomaton or not. According to how the automaton processes the input tree, finite tree automata...
that should be mentioned and understood. The first is the non-deterministicfiniteautomaton (NFA). In this case, the vector q is replaced by a vector that...
state. A basic theorem states that any AFA is equivalent to a deterministicfiniteautomaton (DFA), hence AFAs accept exactly the regular languages. An alternative...
determined by the input.: 41 A common deterministicautomaton is a deterministicfiniteautomaton (DFA) which is a finite state machine, where for each pair...
standard method for converting a nondeterministic finiteautomaton (NFA) into a deterministicfiniteautomaton (DFA) which recognizes the same formal language...
accepted by a nondeterministic finiteautomaton (NFA) it is the language accepted by a deterministicfiniteautomaton (DFA) it can be generated by a regular...
automata theory, a deterministic pushdown automaton (DPDA or DPA) is a variation of the pushdown automaton. The class of deterministic pushdown automata...
of operations automatically. An automaton with a finite number of states is called a finiteautomaton (FA) or finite-state machine (FSM). The figure on...
probabilities, the quantum finiteautomaton. For a given initial state and input character, a deterministicfiniteautomaton (DFA) has exactly one next...
capable than finite-state machines but less capable than Turing machines (see below). Deterministic pushdown automata can recognize all deterministic context-free...
A queue machine, queue automaton, or pullup automaton (PUA)[citation needed] is a finite state machine with the ability to store and retrieve data from...
construct a nondeterministic finiteautomaton (NFA), which is then made deterministic and the resulting deterministicfiniteautomaton (DFA) is run on the target...
string. In terms of automata theory, a suffix automaton is the minimal partial deterministicfiniteautomaton that recognizes the set of suffixes of a given...
minimization is the task of transforming a given nondeterministic finiteautomaton (NFA) into an equivalent NFA that has a minimum number of states, transitions...
particular abstract machines which are deterministic include the deterministic Turing machine and deterministicfiniteautomaton. A variety of factors can cause...
a finite state machine, and experiment with proofs, such as converting a nondeterministic finiteautomaton (NFA) to a deterministicfiniteautomaton (DFA)...
algorithm may have a few hundred states, while the equivalent deterministicfiniteautomaton (DFA) on a given real machine has quadrillions. This makes the...