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. The word ''automata'' comes from the Greek word αὐτόματο� ...
, 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 t ...
whose transitions are divided into ''
existential
Existentialism ( ) is a form of philosophical inquiry that explores the problem of human existence and centers on human thinking, feeling, and acting. Existentialist thinkers frequently explore issues related to the meaning, purpose, and value ...
'' and ''
universal
Universal is the adjective for universe.
Universal may also refer to:
Companies
* NBCUniversal, a media and entertainment company
** Universal Animation Studios, an American Animation studio, and a subsidiary of NBCUniversal
** Universal TV, a ...
'' transitions. For example, let ''A'' be an alternating
automaton
An automaton (; plural: 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.Automaton – Definition and More ...
.
* For an existential transition
, ''A'' nondeterministically chooses to switch the state to either
or
, 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 t ...
.
* For a universal transition
, ''A'' moves to
and
, 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 automa ...
(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 co ...
so that, e.g.,
would represent
. The state tt (''true'') is represented by
in this case and ff (''false'') by
. 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
6-tuple,
, where
*
is a finite set of existential states. Also commonly represented as
.
*
is a finite set of universal states. Also commonly represented as
.
*
is a finite set of input symbols.
*
is a set of transition relations to next state
.
*
is the initial (start) state, such that
.
*
is a set of accepting (final) states such that
.
The model was introduced by
Chandra
Chandra ( sa, चन्द्र, Candra, shining' or 'moon), also known as Soma ( sa, सोम), 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) a ...
,
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
-state AFA to an equivalent DFA
requires
states in the worst case. Another construction by Fellah, Jürgensen and Yu.
converts an AFA with
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 t ...
(NFA) with up to
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
and a
word
A word is a basic element of language that carries an objective or practical 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 consen ...
, whether
accepts
. 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 usef ...
.
[Theorem 19 of ] This is true even on a singleton alphabet, i.e., when the automaton accepts a
unary language.
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 ( polynomial space) and if every other problem that can be solved in polynomial space can ...
for AFAs.
References
*
{{DEFAULTSORT:Alternating Finite Automaton
Finite automata