Complementation of automata

In theoretical computer science and formal language theory, the complementation of an automaton[clarify] is the problem of computing an automaton that accepts precisely the words rejected by another automaton.

Formally, given an automaton A which recognizes a regular language L, we want to compute an automaton that precisely recognizes the words that are not in L, i.e., the complement of L. Several questions on the complementation operation are studied, such as: With a nondeterministic finite automaton, the state complexity of the complement automaton may be exponential.

[1] Lower bounds are also known in the case of unambiguous automata.

[2] Complementation has also been studied for two-way automata.

[3]