Alternating Turing machine

from Wikipedia, the free encyclopedia

In theoretical computer science , an alternating Turing machine (ATM) is a nondeterministic Turing machine that extends the usual rules for accepting an input. The states of the machine are divided into existential and universal states. The first accept an input if there is a possible computation that accepts, while the second accept only when all possible computations accept.

Informal description

Since alternating Turing machines are nondeterministic machines, there are several options for continuing the calculation for each configuration of the machine. To define classes like NP , one assumes that an input is accepted if there is a computation that accepts it. On the other hand, to define machines for coNP problems, one assumes that a word is only accepted if it accepts all possible calculations.

Alternating machines combine these two modes by dividing the states into existential and universal states. If a configuration has an existential state, it is viewed as accepting as soon as only one successor configuration is accepted, while a configuration with a universal state only accepts if all successor configurations accept. An entry is accepted if the associated initial configuration accepts.

Formal definition

An alternating Turing machine with k-bands is a tuple with

  • is a finite non-empty set (set of states)
  • is a finite non-empty set (input alphabet)
  • is a finite non-empty set (ribbon alphabet), where
  • is the transition relation
  • is the start state
  • is the blank symbol
  • a function that assigns a type to each state

Acceptance of input

Now consider a configuration of such a machine with the state :

  • If so , then it is an accepting (end) configuration.
  • If so , then it is a non-accepting (end) configuration.
  • If so , then an accepting configuration is if and only if all successor configurations are accepting configurations. Otherwise is a non-accepting configuration.
  • If then there is an accepting configuration, if there is an accepting successor configuration. Otherwise is a non-accepting configuration.

An alternating Turing machine accepts an input if and only if the initial configuration is an accepting configuration.

Complexity theory

As with deterministic and non-deterministic Turing machines, time and space complexity can also be defined for alternating Turing machines .

In order to calculate the value of a configuration, not all successors necessarily have to be evaluated. An existential configuration is surely accepting as soon as a successor accepts (regardless of the value of the remaining successors), and a universal configuration is non-accepting as soon as a successor does not accept. For an efficient calculation, not all configurations have to be evaluated, and this is also taken into account in the following definitions of and .

An ATM that decides a language decides this in time if all calculation paths from evaluated configurations are no longer than for each input . The set of all languages ​​that can be decided in time by an ATM is recorded as .

An ATM that decides a language decides this in place if for each input all evaluated configurations on all bands are no longer used as cells. The set of all languages ​​that can be decided into place by an ATM is recorded as .

Complexity classes

The following complexity classes closed under (log n) reductions via ATMs are common:

  • Alternating logarithmic space
  • Alternating polynomial time
  • Alternating polynomial space
  • Alternating exponential time

Relation to other machine models

The following relationships apply between alternating and deterministic complexity:

In particular, the complexity classes defined above correspond to the usual deterministic complexity classes:

ATMs can also be used to characterize the LOGCFL class .

Limited alternations

One can also consider alternating Turing machines that can only perform a limited number of changes between existential and universal states. One defines (or ) as the set of all languages ​​that are decided by an ATM in time , whose initial state is an existential (or universal) state and which changes between existential and universal states at most times on each possible calculation path .

Alternating Turing machines with limited alternations are closely related to the polynomial time hierarchy . The following applies:

See also

credentials

  • AK Chandra, DC Kozen, LJ Stockmeyer: Alternation. In: Journal of the ACM. Volume 28, Issue 1, 1981, pp. 114-133.
  • Alternation. In: Christos Papadimitriou: Computational Complexity . 1st edition. Addison-Wesley, 1993, ISBN 0-201-53082-1 , pp. Chapter 16.2, pp. 399-401 .

Individual evidence

  1. Barak, Boaz .: Computational complexity: a modern approach . Cambridge University Press, Cambridge 2009, ISBN 978-0-521-42426-4 , pp. 99–100 ( Draft [PDF; accessed August 31, 2020]).