Alternating Finite Automaton
   HOME

TheInfoList



OR:

In
automata theory Automata theory is the study of abstract machines and automata, as well as the computational problems that can be solved using them. It is a theory in theoretical computer science with close connections to cognitive science and mathematical l ...
, an alternating finite automaton (AFA) is a
nondeterministic finite automaton In automata theory, a finite-state machine is called a deterministic finite automaton (DFA), if * each of its transitions is ''uniquely'' determined by its source state and input symbol, and * reading an input symbol is required for each state tr ...
whose transitions are divided into '' existential'' and '' universal'' transitions. For example, let ''A'' be an alternating
automaton An automaton (; : automata or automatons) is a relatively self-operating machine, or control mechanism designed to automatically follow a sequence of operations, or respond to predetermined instructions. Some automata, such as bellstrikers i ...
. * For an existential transition (q, a, q_1 \vee q_2), ''A'' nondeterministically chooses to switch the state to either q_1 or q_2, reading ''a''. Thus, behaving like a regular
nondeterministic finite automaton In automata theory, a finite-state machine is called a deterministic finite automaton (DFA), if * each of its transitions is ''uniquely'' determined by its source state and input symbol, and * reading an input symbol is required for each state tr ...
. * For a universal transition (q, a, q_1 \wedge q_2), ''A'' moves to q_1 and q_2, reading ''a'', simulating the behavior of a parallel machine. Note that due to the universal quantification a run is represented by a run ''tree''. ''A'' accepts a word ''w'', if there ''exists'' a run tree on ''w'' such that ''every'' path ends in an accepting state. A basic theorem states that any AFA is equivalent to a
deterministic finite automaton 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 auto ...
(DFA), hence AFAs accept exactly the
regular language In theoretical computer science and formal language theory, a regular language (also called a rational language) is a formal language that can be defined by a regular expression, in the strict sense in theoretical computer science (as opposed to ...
s. An alternative model which is frequently used is the one where Boolean combinations are in
disjunctive normal form In boolean logic, a disjunctive normal form (DNF) is a canonical normal form of a logical formula consisting of a disjunction of conjunctions; it can also be described as an OR of ANDs, a sum of products, or in philosophical logic a ''cluster c ...
so that, e.g., \ would represent q_1 \vee (q_2 \wedge q_3). The state tt (''true'') is represented by \ in this case and ff (''false'') by \emptyset. This representation is usually more efficient. Alternating finite automata can be extended to accept trees in the same way as tree automata, yielding alternating tree automata.


Formal definition

An alternating finite automaton (AFA) is a 5-tuple, (Q, \Sigma, q_0, F, \delta), where *Q is a finite set of states; *\Sigma is a finite set of input symbols; *q_0\in Q is the initial (start) state; *F\subseteq Q is a set of accepting (final) states; *\delta\colon Q\times\Sigma\times\^Q\to\ is the transition function. For each string w\in\Sigma^*, we define the acceptance function A_w\colon Q\to\ by induction on the length of w: *A_\epsilon(q)=1 if q\in F, and A_\epsilon(q)=0 otherwise; *A_(q)=\delta(q,a,A_w). The automaton accepts a string w\in\Sigma^* if and only if A_w(q_0)=1. This model was introduced by
Chandra Chandra (), also known as Soma (), is the Hindu god of the Moon, and is associated with the night, plants and vegetation. He is one of the Navagraha (nine planets of Hinduism) and Dikpala (guardians of the directions). Etymology and other ...
, Kozen and Stockmeyer.


State complexity

Even though AFA can accept exactly the
regular language In theoretical computer science and formal language theory, a regular language (also called a rational language) is a formal language that can be defined by a regular expression, in the strict sense in theoretical computer science (as opposed to ...
s, they are different from other types of finite automata in the succinctness of description, measured by the number of their states. Chandra et al. proved that converting an n-state AFA to an equivalent DFA requires 2^ states in the worst case, though a DFA for the reverse language can be constructued with only 2^n states. Another construction by Fellah, Jürgensen and Yu. converts an AFA with n states to a
nondeterministic finite automaton In automata theory, a finite-state machine is called a deterministic finite automaton (DFA), if * each of its transitions is ''uniquely'' determined by its source state and input symbol, and * reading an input symbol is required for each state tr ...
(NFA) with up to 2^n states by performing a similar kind of powerset construction as used for the transformation of an NFA to a DFA.


Computational complexity

The membership problem asks, given an AFA A and a
word A word is a basic element of language that carries semantics, meaning, can be used on its own, and is uninterruptible. Despite the fact that language speakers often have an intuitive grasp of what a word is, there is no consensus among linguist ...
w, whether A accepts w. This problem is
P-complete In computational complexity theory, a decision problem is P-complete ( complete for the complexity class P) if it is in P and every problem in P can be reduced to it by an appropriate reduction. The notion of P-complete decision problems is use ...
.Theorem 19 of This is true even on a singleton alphabet, i.e., when the automaton accepts a
unary language In computational complexity theory, a unary language or tally language is a formal language (a set of strings) where all strings have the form 1''k'', where "1" can be any fixed symbol. For example, the language is unary, as is the language . The ...
. The non-emptiness problem (is the language of an input AFA non-empty?), the universality problem (is the complement of the language of an input AFA empty?), and the equivalence problem (do two input AFAs recognize the same language) are
PSPACE-complete In computational complexity theory, a decision problem is PSPACE-complete if it can be solved using an amount of memory that is polynomial in the input length (PSPACE, polynomial space) and if every other problem that can be solved in polynomial sp ...
for AFAs.


References

* {{DEFAULTSORT:Alternating Finite Automaton Finite-state machines