HOME

TheInfoList



OR:

State complexity is an area of
theoretical computer science Theoretical computer science is a subfield of computer science and mathematics that focuses on the Abstraction, abstract and mathematical foundations of computation. It is difficult to circumscribe the theoretical areas precisely. The Associati ...
dealing with the size of abstract automata, such as different kinds of
finite automata A finite-state machine (FSM) or finite-state automaton (FSA, plural: ''automata''), finite automaton, or simply a state machine, is a mathematical model of computation. It is an abstract machine that can be in exactly one of a finite number ...
. The classical result in the area is that simulating an n-state nondeterministic finite automaton by a
deterministic Determinism is the metaphysical view that all events within the universe (or multiverse) can occur only in one possible way. Deterministic theories throughout the history of philosophy have developed from diverse and sometimes overlapping mo ...
finite automaton requires exactly 2^n states in the worst case.


Transformation between variants of finite automata

Finite automata can be
deterministic Determinism is the metaphysical view that all events within the universe (or multiverse) can occur only in one possible way. Deterministic theories throughout the history of philosophy have developed from diverse and sometimes overlapping mo ...
and nondeterministic, one-way (DFA, NFA) and
two-way Two-way or Two Way may refer to: Music * " 2-Way", a 2002 song by Lil' Romeo * "Two Way" (song), by KT Tunstall and James Bay, 2016 Other uses * Two-way, Cincinnati chili Cincinnati chili (or Cincinnati-style chili) is a Mediterranean-spic ...
(2DFA, 2NFA). Other related classes are
unambiguous Ambiguity is the type of meaning in which a phrase, statement, or resolution is not explicitly defined, making for several interpretations; others describe it as a concept or statement that has no real reference. A common aspect of ambiguit ...
(UFA), self-verifying (SVFA) and alternating (AFA) finite automata. These automata can also be two-way (2UFA, 2SVFA, 2AFA). All these machines 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. However, the size of different types of automata necessary to accept the same language (measured in the number of their states) may be different. For any two types of finite automata, the ''state complexity tradeoff'' between them is an integer function f where f(n) is the least number of states in automata of the second type sufficient to recognize every language recognized by an n-state automaton of the first type. The following results are known. * NFA to DFA: 2^n states. This is the subset construction by Rabin and
Scott Scott may refer to: Places Canada * Scott, Quebec, municipality in the Nouvelle-Beauce regional municipality in Quebec * Scott, Saskatchewan, a town in the Rural Municipality of Tramping Lake No. 380 * Rural Municipality of Scott No. 98, Sas ...
, proved optimal by Lupanov. * UFA to DFA: 2^n states, see Leung, An earlier lower bound by Schmidt was smaller. * NFA to UFA: 2^n-1 states, see Leung. There was an earlier smaller lower bound by Schmidt. * SVFA to DFA: \Theta(3^) states, see Jirásková and Pighizzini * 2DFA to DFA: n(n^n-(n-1)^n) states, see Kapoutsis. Earlier construction by Shepherdson used more states, and an earlier lower bound by Moore was smaller. * 2DFA to NFA: \binom = O(\frac), see Kapoutsis. Earlier construction by Birget used more states. * 2NFA to NFA: \binom, see Kapoutsis. ** 2NFA to NFA accepting the complement: O(4^n) states, see Vardi. * AFA to DFA: 2^ states, see
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. * AFA to NFA: 2^n states, see Fellah, Jürgensen and Yu. * 2AFA to DFA: 2^, see Ladner,
Lipton Lipton is a brand named after its founder, Sir Thomas Lipton, Tom Lipton, who started an eponymous grocery retail business in the United Kingdom in 1871. The brand was used for various consumer goods sold in Lipton stores, including tea from 1 ...
and Stockmeyer. * 2AFA to NFA: 2^, see Geffert and Okhotin.


The 2DFA vs. 2NFA problem and logarithmic space

It is an open problem whether all 2NFAs can be converted to 2DFAs with polynomially many states, i.e. whether there is a polynomial p(n) such that for every n-state 2NFA there exists a p(n)-state 2DFA. The problem was raised by Sakoda and Sipser, who compared it to the P vs. NP problem in the
computational complexity theory In theoretical computer science and mathematics, computational complexity theory focuses on classifying computational problems according to their resource usage, and explores the relationships between these classifications. A computational problem ...
. Berman and Lingas discovered a formal relation between this problem and the L vs. NL open problem. This relation was further elaborated by Kapoutsis.


State complexity of operations for finite automata

Given a binary regularity-preserving operation on languages \circ and a family of automata X (DFA, NFA, etc.), the state complexity of \circ is an integer function f(m,n) such that * for each m-state X-automaton A and n-state X-automaton B there is an f(m,n)-state X-automaton for L(A) \circ L(B), and * for all integers m, n there is an m-state X-automaton A and an n-state X-automaton B such that every X-automaton for L(A) \circ L(B) must have at least f(m,n) states. Analogous definition applies for operations with any number of arguments. The first results on state complexity of operations for DFAs were published by Maslov and by Yu, Zhuang and Salomaa. Holzer and Kutrib pioneered the state complexity of operations on NFA. The known results for basic operations are listed below.


Union

If language L_1 requires m states and language L_2 requires n states, how many states does L_1 \cup L_2 require? * DFA: mn states, see Maslov and Yu, Zhuang and Salomaa. * NFA: m+n+1 states, see Holzer and Kutrib. * UFA: at least \min(n,m)^; between mn+m+n and m + nm 2^ states, see Jirásek, Jirásková and Šebej. * SVFA: mn states, see Jirásek, Jirásková and Szabari. * 2DFA: between m+n and 4m+n+4 states, see Kunc and Okhotin. * 2NFA: m+n states, see Kunc and Okhotin.


Intersection

How many states does L_1 \cap L_2 require? * DFA: mn states, see Maslov and Yu, Zhuang and Salomaa. * NFA: mn states, see Holzer and Kutrib. * UFA: mn states, see Jirásek, Jirásková and Šebej. * SVFA: mn states, see Jirásek, Jirásková and Szabari. * 2DFA: between m+n and m+n+1 states, see Kunc and Okhotin. * 2NFA: between m+n and m+n+1 states, see Kunc and Okhotin.


Complementation

If language L requires n states then how many states does its ''
complement Complement may refer to: The arts * Complement (music), an interval that, when added to another, spans an octave ** Aggregate complementation, the separation of pitch-class collections into complementary sets * Complementary color, in the visu ...
'' require? * DFA: n states, by exchanging accepting and rejecting states. * NFA: 2^n states, see Birget. or Jirásková * UFA: at least n^ states, see Göös, Kiefer and Yuan, (this follows an earlier bound by Raskin); and at most \sqrt \cdot 2^ states, see Indzhev and Kiefer. * SVFA: n states, by exchanging accepting and rejecting states. * 2DFA: at least n and at most 4n states, see Geffert, Mereghetti and Pighizzini.


Concatenation

How many states does L_1 L_2 = \ require? * DFA: m \cdot 2^n - 2^ states, see Maslov and Yu, Zhuang and Salomaa. * NFA: m+n states, see Holzer and Kutrib. * UFA: \frac 2^-1 states, see Jirásek, Jirásková and Šebej. * SVFA: \Theta(3^2^m) states, see Jirásek, Jirásková and Szabari. * 2DFA: at least \frac and at most 2m^\cdot 2^ states, see Jirásková and Okhotin.


Kleene star

* DFA: \frac 2^n states, see Maslov and Yu, Zhuang and Salomaa. * NFA: n+1 states, see Holzer and Kutrib. * UFA: \frac 2^n states, see Jirásek, Jirásková and Šebej. * SVFA: \frac2^n states, see Jirásek, Jirásková and Szabari. * 2DFA: at least \frac2^ and at most 2^ states, see Jirásková and Okhotin.


Reversal

* DFA: 2^n states, see Mirkin, Leiss, and Yu, Zhuang and Salomaa. * NFA: n+1 states, see Holzer and Kutrib. * UFA: n states. * SVFA: 2n+1 states, see Jirásek, Jirásková and Szabari. * 2DFA: between n+1 and n+2 states, see Jirásková and Okhotin.


Finite automata over a unary alphabet

State complexity of finite automata with a one-letter (''unary'') alphabet, pioneered by Chrobak, is different from the multi-letter case. Let g(n)=e^ be Landau's function.


Transformation between models

For a one-letter alphabet, transformations between different types of finite automata are sometimes more efficient than in the general case. * NFA to DFA: g(n)+O(n^2) states, see Chrobak. * 2DFA to DFA: g(n)+O(n) states, see Chrobak and Kunc and Okhotin. * 2NFA to DFA: O(g(n)) states, see Mereghetti and Pighizzini. and Geffert, Mereghetti and Pighizzini. * NFA to 2DFA: at most O(n^2) states, see Chrobak. * 2NFA to 2DFA: at most n^ states, proved by implementing the method of
Savitch's theorem In computational complexity theory, Savitch's theorem, proved by Walter Savitch in 1970, gives a relationship between deterministic and non-deterministic space complexity. It states that for any space-constructable function f\in\Omega(\log(n)) ...
, see Geffert, Mereghetti and Pighizzini. * UFA to DFA: e^, see Okhotin. * NFA to UFA: g(n)+O(n^2), see Okhotin.


Union

* DFA: mn states, see Yu, Zhuang and Salomaa. * NFA: m+n+1 states, see Holzer and Kutrib. * 2DFA: between m+n and 2m+n+4 states, see Kunc and Okhotin. * 2NFA: m+n states, see Kunc and Okhotin.


Intersection

* DFA: mn states, see Yu, Zhuang and Salomaa. * NFA: mn states, see Holzer and Kutrib. * 2DFA: between m+n and m+n+1 states, see Kunc and Okhotin. * 2NFA: between m+n and m+n+1 states, see Kunc and Okhotin.


Complementation

* DFA: n states. * NFA: g(n)+O(n^2) states, see Holzer and Kutrib. * UFA: at least n^ states, see Raskin, and at most e^ states, see Okhotin. * 2DFA: at least n and at most 2n+3 states, see Kunc and Okhotin. * 2NFA: at least n and at most O(n^8) states. The upper bound is by implementing the method of the
Immerman–Szelepcsényi theorem In computational complexity theory, the Immerman–Szelepcsényi theorem states that nondeterministic space complexity classes are closed under complementation. It was proven independently by Neil Immerman and Róbert Szelepcsényi in 1987, for wh ...
, see Geffert, Mereghetti and Pighizzini.


Concatenation

* DFA: mn states, see Yu, Zhuang and Salomaa. * NFA: between m+n-1 and m+n states, see Holzer and Kutrib. * 2DFA: e^ states, see Kunc and Okhotin. * 2NFA: e^ states, see Kunc and Okhotin.


Kleene star

* DFA: (n-1)^2+1 states, see Yu, Zhuang and Salomaa. * NFA: n+1 states, see Holzer and Kutrib. * UFA: (n-1)^2+1 states, see Okhotin. * 2DFA: \Theta((g(n))^2) states, see Kunc and Okhotin. * 2NFA: \Theta(g(n)) states, see Kunc and Okhotin.


Further reading

Surveys of state complexity were written by Holzer and Kutrib and by Gao et al. New research on state complexity is commonly presented at the annual workshops on
Descriptional Complexity of Formal Systems DCFS, the International Workshop on Descriptional Complexity of Formal Systems is an annual academic conference in the field of computer science. Beginning with the 2011 edition, the proceedings of the workshop appear in the series Lecture Notes ...
(DCFS), at the
Conference on Implementation and Application of Automata CIAA, the International Conference on Implementation and Application of Automata is an annual academic conference in the field of computer science. Its purpose is to bring together members of the academic, research, and industrial community who h ...
(CIAA), and at various conferences on
theoretical computer science Theoretical computer science is a subfield of computer science and mathematics that focuses on the Abstraction, abstract and mathematical foundations of computation. It is difficult to circumscribe the theoretical areas precisely. The Associati ...
in general.


References

{{reflist Finite-state machines