fbpx
Wikipedia

Alternating Turing machine

In computational complexity theory, an alternating Turing machine (ATM) is a non-deterministic Turing machine (NTM) with a rule for accepting computations that generalizes the rules used in the definition of the complexity classes NP and co-NP. The concept of an ATM was set forth by Chandra and Stockmeyer[1] and independently by Kozen[2] in 1976, with a joint journal publication in 1981.[3]

Definitions

Informal description

The definition of NP uses the existential mode of computation: if any choice leads to an accepting state, then the whole computation accepts. The definition of co-NP uses the universal mode of computation: only if all choices lead to an accepting state does the whole computation accept. An alternating Turing machine (or to be more precise, the definition of acceptance for such a machine) alternates between these modes.

An alternating Turing machine is a non-deterministic Turing machine whose states are divided into two sets: existential states and universal states. An existential state is accepting if some transition leads to an accepting state; a universal state is accepting if every transition leads to an accepting state. (Thus a universal state with no transitions accepts unconditionally; an existential state with no transitions rejects unconditionally). The machine as a whole accepts if the initial state is accepting.

Formal definition

Formally, a (one-tape) alternating Turing machine is a 5-tuple   where

  •   is the finite set of states
  •   is the finite tape alphabet
  •   is called the transition function (L shifts the head left and R shifts the head right)
  •   is the initial state
  •   specifies the type of each state

If M is in a state   with   then that configuration is said to be accepting, and if   the configuration is said to be rejecting. A configuration with   is said to be accepting if all configurations reachable in one step are accepting, and rejecting if some configuration reachable in one step is rejecting. A configuration with   is said to be accepting when there exists some configuration reachable in one step that is accepting and rejecting when all configurations reachable in one step are rejecting (this is the type of all states in a classical NTM except the final state). M is said to accept an input string w if the initial configuration of M (the state of M is  , the head is at the left end of the tape, and the tape contains w) is accepting, and to reject if the initial configuration is rejecting.

Note that it is impossible for a configuration to be both accepting and rejecting, however, some configurations may be neither accepting or rejecting, due to the possibility of nonterminating computations.

Resource bounds

When deciding if a configuration of an ATM is accepting or rejecting using the above definition, it is not always necessary to examine all configurations reachable from the current configuration. In particular, an existential configuration can be labelled as accepting if any successor configuration is found to be accepting, and a universal configuration can be labelled as rejecting if any successor configuration is found to be rejecting.

An ATM decides a formal language in time   if, on any input of length n, examining configurations only up to   steps is sufficient to label the initial configuration as accepting or rejecting. An ATM decides a language in space   if examining configurations that do not modify tape cells beyond the   cell from the left is sufficient.

A language that is decided by some ATM in time   for some constant   is said to be in the class  , and a language decided in space   is said to be in the class  .

Example

Perhaps the most natural problem for alternating machines to solve is the quantified Boolean formula problem, which is a generalization of the Boolean satisfiability problem in which each variable can be bound by either an existential or a universal quantifier. The alternating machine branches existentially to try all possible values of an existentially quantified variable and universally to try all possible values of a universally quantified variable, in the left-to-right order in which they are bound. After deciding a value for all quantified variables, the machine accepts if the resulting Boolean formula evaluates to true, and rejects if it evaluates to false. Thus at an existentially quantified variable the machine is accepting if a value can be substituted for the variable that renders the remaining problem satisfiable, and at a universally quantified variable the machine is accepting if any value can be substituted and the remaining problem is satisfiable.

Such a machine decides quantified Boolean formulas in time   and space  .

The Boolean satisfiability problem can be viewed as the special case where all variables are existentially quantified, allowing ordinary nondeterminism, which uses only existential branching, to solve it efficiently.

Complexity classes and comparison to deterministic Turing machines

The following complexity classes are useful to define for ATMs:

  •   are the languages decidable in polynomial time
  •   are the languages decidable in polynomial space
  •   are the languages decidable in exponential time

These are similar to the definitions of P, PSPACE, and EXPTIME, considering the resources used by an ATM rather than a deterministic Turing machine. Chandra, Kozen, and Stockmeyer[3] proved the theorems

  • ALOGSPACE = P
  • AP = PSPACE
  • APSPACE = EXPTIME
  • AEXPTIME = EXPSPACE
  •  
  •  
  •  

when   and  .

A more general form of these relationships is expressed by the parallel computation thesis.

Bounded alternation

Definition

An alternating Turing machine with k alternations is an alternating Turing machine that switches from an existential to a universal state or vice versa no more than k−1 times. (It is an alternating Turing machine whose states are divided into k sets. The states in even-numbered sets are universal and the states in odd-numbered sets are existential (or vice versa). The machine has no transitions between a state in set i and a state in set j < i.)

  is the class of languages decidable in time   by a machine beginning in an existential state and alternating at most   times. It is called the jth level of the   hierarchy.

  is defined in the same way, but beginning in a universal state; it consists of the complements of the languages in  .

  is defined similarly for space bounded computation.

Example

Consider the circuit minimization problem: given a circuit A computing a Boolean function f and a number n, determine if there is a circuit with at most n gates that computes the same function f. An alternating Turing machine, with one alternation, starting in an existential state, can solve this problem in polynomial time (by guessing a circuit B with at most n gates, then switching to a universal state, guessing an input, and checking that the output of B on that input matches the output of A on that input).

Collapsing classes

It is said that a hierarchy collapses to level j if every language in level   of the hierarchy is in its level j.

As a corollary of the Immerman–Szelepcsényi theorem, the logarithmic space hierarchy collapses to its first level.[4] As a corollary the   hierarchy collapses to its first level when   is space constructible[citation needed].

Special cases

An alternating Turing machine in polynomial time with k alternations, starting in an existential (respectively, universal) state can decide all the problems in the class   (respectively,  ).[5] These classes are sometimes denoted   and  , respectively. See the polynomial hierarchy article for details.

Another special case of time hierarchies is the logarithmic hierarchy.

References

  1. ^ Chandra, Ashok K.; Stockmeyer, Larry J. (1976). "Alternation". Proc. 17th IEEE Symp. on Foundations of Computer Science. Houston, Texas. pp. 98–108. doi:10.1109/SFCS.1976.4.
  2. ^ Kozen, D. (1976). "On parallelism in Turing machines". Proc. 17th IEEE Symp. on Foundations of Computer Science. Houston, Texas. pp. 89–97. doi:10.1109/SFCS.1976.20. hdl:1813/7056.
  3. ^ a b Chandra, Ashok K.; Kozen, Dexter C.; Stockmeyer, Larry J. (1981). (PDF). Journal of the ACM. 28 (1): 114–133. doi:10.1145/322234.322243. Archived from the original (PDF) on April 12, 2016.
  4. ^ Immerman, Neil (1988). "Nondeterministic space is closed under complementation" (PDF). SIAM Journal on Computing. 17 (5): 935–938. CiteSeerX 10.1.1.54.5941. doi:10.1137/0217058.
  5. ^ Kozen, Dexter (2006). Theory of Computation. Springer-Verlag. p. 58. ISBN 9781846282973.

Further reading

alternating, turing, machine, this, article, includes, list, general, references, lacks, sufficient, corresponding, inline, citations, please, help, improve, this, article, introducing, more, precise, citations, 2011, learn, when, remove, this, template, messa. This article includes a list of general references but it lacks sufficient corresponding inline citations Please help to improve this article by introducing more precise citations May 2011 Learn how and when to remove this template message In computational complexity theory an alternating Turing machine ATM is a non deterministic Turing machine NTM with a rule for accepting computations that generalizes the rules used in the definition of the complexity classes NP and co NP The concept of an ATM was set forth by Chandra and Stockmeyer 1 and independently by Kozen 2 in 1976 with a joint journal publication in 1981 3 Contents 1 Definitions 1 1 Informal description 1 2 Formal definition 1 3 Resource bounds 2 Example 3 Complexity classes and comparison to deterministic Turing machines 4 Bounded alternation 4 1 Definition 4 2 Example 4 3 Collapsing classes 4 4 Special cases 5 References 6 Further readingDefinitions EditInformal description Edit The definition of NP uses the existential mode of computation if any choice leads to an accepting state then the whole computation accepts The definition of co NP uses the universal mode of computation only if all choices lead to an accepting state does the whole computation accept An alternating Turing machine or to be more precise the definition of acceptance for such a machine alternates between these modes An alternating Turing machine is a non deterministic Turing machine whose states are divided into two sets existential states and universal states An existential state is accepting if some transition leads to an accepting state a universal state is accepting if every transition leads to an accepting state Thus a universal state with no transitions accepts unconditionally an existential state with no transitions rejects unconditionally The machine as a whole accepts if the initial state is accepting Formal definition Edit Formally a one tape alternating Turing machine is a 5 tuple M Q G d q 0 g displaystyle M Q Gamma delta q 0 g where Q displaystyle Q is the finite set of states G displaystyle Gamma is the finite tape alphabet d Q G P Q G L R displaystyle delta Q times Gamma rightarrow mathcal P Q times Gamma times L R is called the transition function L shifts the head left and R shifts the head right q 0 Q displaystyle q 0 in Q is the initial state g Q a c c e p t r e j e c t displaystyle g Q rightarrow wedge vee accept reject specifies the type of each stateIf M is in a state q Q displaystyle q in Q with g q a c c e p t displaystyle g q accept then that configuration is said to be accepting and if g q r e j e c t displaystyle g q reject the configuration is said to be rejecting A configuration with g q displaystyle g q wedge is said to be accepting if all configurations reachable in one step are accepting and rejecting if some configuration reachable in one step is rejecting A configuration with g q displaystyle g q vee is said to be accepting when there exists some configuration reachable in one step that is accepting and rejecting when all configurations reachable in one step are rejecting this is the type of all states in a classical NTM except the final state M is said to accept an input string w if the initial configuration of M the state of M is q 0 displaystyle q 0 the head is at the left end of the tape and the tape contains w is accepting and to reject if the initial configuration is rejecting Note that it is impossible for a configuration to be both accepting and rejecting however some configurations may be neither accepting or rejecting due to the possibility of nonterminating computations Resource bounds Edit When deciding if a configuration of an ATM is accepting or rejecting using the above definition it is not always necessary to examine all configurations reachable from the current configuration In particular an existential configuration can be labelled as accepting if any successor configuration is found to be accepting and a universal configuration can be labelled as rejecting if any successor configuration is found to be rejecting An ATM decides a formal language in time t n displaystyle t n if on any input of length n examining configurations only up to t n displaystyle t n steps is sufficient to label the initial configuration as accepting or rejecting An ATM decides a language in space s n displaystyle s n if examining configurations that do not modify tape cells beyond the s n displaystyle s n cell from the left is sufficient A language that is decided by some ATM in time c t n displaystyle c cdot t n for some constant c gt 0 displaystyle c gt 0 is said to be in the class A T I M E t n displaystyle mathsf ATIME t n and a language decided in space c s n displaystyle c cdot s n is said to be in the class A S P A C E s n displaystyle mathsf ASPACE s n Example EditPerhaps the most natural problem for alternating machines to solve is the quantified Boolean formula problem which is a generalization of the Boolean satisfiability problem in which each variable can be bound by either an existential or a universal quantifier The alternating machine branches existentially to try all possible values of an existentially quantified variable and universally to try all possible values of a universally quantified variable in the left to right order in which they are bound After deciding a value for all quantified variables the machine accepts if the resulting Boolean formula evaluates to true and rejects if it evaluates to false Thus at an existentially quantified variable the machine is accepting if a value can be substituted for the variable that renders the remaining problem satisfiable and at a universally quantified variable the machine is accepting if any value can be substituted and the remaining problem is satisfiable Such a machine decides quantified Boolean formulas in time n 2 displaystyle n 2 and space n displaystyle n The Boolean satisfiability problem can be viewed as the special case where all variables are existentially quantified allowing ordinary nondeterminism which uses only existential branching to solve it efficiently Complexity classes and comparison to deterministic Turing machines EditThe following complexity classes are useful to define for ATMs A P k gt 0 A T I M E n k displaystyle mathsf AP bigcup k gt 0 mathsf ATIME n k are the languages decidable in polynomial time A P S P A C E k gt 0 A S P A C E n k displaystyle mathsf APSPACE bigcup k gt 0 mathsf ASPACE n k are the languages decidable in polynomial space A E X P T I M E k gt 0 A T I M E 2 n k displaystyle mathsf AEXPTIME bigcup k gt 0 mathsf ATIME 2 n k are the languages decidable in exponential timeThese are similar to the definitions of P PSPACE and EXPTIME considering the resources used by an ATM rather than a deterministic Turing machine Chandra Kozen and Stockmeyer 3 proved the theorems ALOGSPACE P AP PSPACE APSPACE EXPTIME AEXPTIME EXPSPACE A S P A C E f n c gt 0 D T I M E 2 c f n D T I M E 2 O f n displaystyle mathsf ASPACE f n bigcup c gt 0 mathsf DTIME 2 cf n mathsf DTIME 2 O f n A T I M E g n D S P A C E g n displaystyle mathsf ATIME g n subseteq mathsf DSPACE g n N S P A C E g n c gt 0 A T I M E c g n 2 displaystyle mathsf NSPACE g n subseteq bigcup c gt 0 mathsf ATIME c times g n 2 when f n log n displaystyle f n geq log n and g n log n displaystyle g n geq log n A more general form of these relationships is expressed by the parallel computation thesis Bounded alternation EditDefinition Edit This section does not cite any sources Please help improve this section by adding citations to reliable sources Unsourced material may be challenged and removed October 2013 Learn how and when to remove this template message An alternating Turing machine with k alternations is an alternating Turing machine that switches from an existential to a universal state or vice versa no more than k 1 times It is an alternating Turing machine whose states are divided into k sets The states in even numbered sets are universal and the states in odd numbered sets are existential or vice versa The machine has no transitions between a state in set i and a state in set j lt i A T I M E C j S j T I M E C displaystyle mathsf ATIME C j Sigma j mathsf TIME C is the class of languages decidable in time f C displaystyle f in C by a machine beginning in an existential state and alternating at most j 1 displaystyle j 1 times It is called the j th level of the T I M E C displaystyle mathsf TIME C hierarchy c o A T I M E C j P j T I M E C displaystyle mathsf coATIME C j Pi j mathsf TIME C is defined in the same way but beginning in a universal state it consists of the complements of the languages in A T I M E f j displaystyle mathsf ATIME f j A S P A C E C j S j S P A C E C displaystyle mathsf ASPACE C j Sigma j mathsf SPACE C is defined similarly for space bounded computation Example Edit Consider the circuit minimization problem given a circuit A computing a Boolean function f and a number n determine if there is a circuit with at most n gates that computes the same function f An alternating Turing machine with one alternation starting in an existential state can solve this problem in polynomial time by guessing a circuit B with at most n gates then switching to a universal state guessing an input and checking that the output of B on that input matches the output of A on that input Collapsing classes Edit It is said that a hierarchy collapses to level j if every language in level k j displaystyle k geq j of the hierarchy is in its level j As a corollary of the Immerman Szelepcsenyi theorem the logarithmic space hierarchy collapses to its first level 4 As a corollary the S P A C E f displaystyle mathsf SPACE f hierarchy collapses to its first level when f W log displaystyle f Omega log is space constructible citation needed Special cases Edit An alternating Turing machine in polynomial time with k alternations starting in an existential respectively universal state can decide all the problems in the class S k p displaystyle Sigma k p respectively P k p displaystyle Pi k p 5 These classes are sometimes denoted S k P displaystyle Sigma k rm P and P k P displaystyle Pi k rm P respectively See the polynomial hierarchy article for details Another special case of time hierarchies is the logarithmic hierarchy References Edit Chandra Ashok K Stockmeyer Larry J 1976 Alternation Proc 17th IEEE Symp on Foundations of Computer Science Houston Texas pp 98 108 doi 10 1109 SFCS 1976 4 Kozen D 1976 On parallelism in Turing machines Proc 17th IEEE Symp on Foundations of Computer Science Houston Texas pp 89 97 doi 10 1109 SFCS 1976 20 hdl 1813 7056 a b Chandra Ashok K Kozen Dexter C Stockmeyer Larry J 1981 Alternation PDF Journal of the ACM 28 1 114 133 doi 10 1145 322234 322243 Archived from the original PDF on April 12 2016 Immerman Neil 1988 Nondeterministic space is closed under complementation PDF SIAM Journal on Computing 17 5 935 938 CiteSeerX 10 1 1 54 5941 doi 10 1137 0217058 Kozen Dexter 2006 Theory of Computation Springer Verlag p 58 ISBN 9781846282973 Further reading EditMichael Sipser 2006 Introduction to the Theory of Computation 2nd ed PWS Publishing ISBN 978 0 534 95097 2 Section 10 3 Alternation pp 380 386 Christos Papadimitriou 1993 Computational Complexity 1st ed Addison Wesley ISBN 978 0 201 53082 7 Section 16 2 Alternation pp 399 401 Bakhadyr Khoussainov Anil Nerode 2012 Automata Theory and its Applications Springer Science amp Business Media ISBN 978 1 4612 0171 7 Retrieved from https en wikipedia org w index php title Alternating Turing machine amp oldid 1072613732, wikipedia, wiki, book, books, library,

article

, read, download, free, free download, mp3, video, mp4, 3gp, jpg, jpeg, gif, png, picture, music, song, movie, book, game, games.