请输入您要查询的百科知识:

 

词条 Non-deterministic Turing machine
释义

  1. Background

     Deterministic Turing Machine  Non-Deterministic Turing Machine  Resolution of multiple rules 

  2. Definition

  3. Computational equivalence with DTMs

     DTM as a special case of NTM  DTM simulation of NTM  Multiplicity of configuration states  Multiplicity of tapes  Time complexity and P vs. NP 

  4. Bounded non-determinism

  5. Comparison with quantum computers

  6. See also

  7. References

  8. External links

{{Turing}}{{more citations needed|date=January 2019}}

In theoretical computer science, a non-deterministic Turing machine is a theoretical model of computation. They are used in thought experiments to examine the abilities and limitations of computers. One of the most important open problems in theoretical computer science is the P vs. NP problem, which concerns the question of how difficult it is to simulate non-deterministic computation with a deterministic computer.

Background

In essence, a Turing machine is imagined to be a simple computer that reads and writes symbols one at a time on an endless tape by strictly following a set of rules. It determines what action it should perform next according to its internal state and what symbol it currently sees. An example of one of a Turing Machine's rules might thus be: "If you are in state 2 and you see an 'A', change it to 'B', move left, and change to state 3."

Deterministic Turing Machine

In a deterministic Turing machine (DTM), the set of rules prescribes at most one action to be performed for any given situation.

A deterministic Turing machine has a transition function that, for a given state and symbol under the tape head, specifies three things:

  • the symbol to be written to the tape,
  • the direction (left, right or neither) in which the head should move, and
  • the subsequent state of the finite control.

For example, an X on the tape in state 3 might make the DTM write a Y on the tape, move the head one position to the right, and switch to state 5.

Non-Deterministic Turing Machine

By contrast, in a non-deterministic Turing machine (NTM), the set of rules may prescribe more than one action to be performed for any given situation. For example, an X on the tape in state 3 might allow the NTM to:

  • Write a Y, move right, and switch to state 5
or
  • Write an X, move left, and stay in state 3.

Resolution of multiple rules

How does the NTM "know" which of these actions it should take? There are two ways of looking at it. One is to say that the machine is the "luckiest possible guesser"; it always picks a transition that eventually leads to an accepting state, if there is such a transition. The other is to imagine that the machine "branches" into many copies, each of which follows one of the possible transitions. Whereas a DTM has a single "computation path" that it follows, an NTM has a "computation tree". If at least one branch of the tree halts with an "accept" condition, we say that the NTM accepts the input.

Definition

A non-deterministic Turing machine can be formally defined as a 6-tuple , where

  • is a finite set of states
  • is a finite set of symbols (the tape alphabet)
  • is the initial state
  • is the blank symbol
  • is the set of accepting (final) states
  • is a relation on states and symbols called the transition relation. is the movement to the left, is no movement, and is the movement to the right.

The difference with a standard (deterministic) Turing machine is that for those, the transition relation is a function (the transition function).

Configurations and the yields relation on configurations, which describes the possible actions of the Turing machine given any possible contents of the tape, are as for standard Turing machines, except that the yields relation is no longer single-valued. The notion of string acceptance is unchanged: a non-deterministic Turing machine accepts a string if, when the machine is started on the configuration in which the tape head is on the first character of the string (if any), and the tape is all blank otherwise, at least one of the machine's possible computations from that configuration puts the machine into a state in . (If the machine is deterministic, the possible computations are the prefixes of a single, possibly infinite, path.)

Computational equivalence with DTMs

Any computational problem that can be solved by a DTM can also be solved by a NTM, and vice versa. However, it is believed that in general the time complexity may not be the same.

DTM as a special case of NTM

NTMs include DTMs as special cases, so every computation that can be carried out by a DTM can also be carried out by the equivalent NTM.

DTM simulation of NTM

It might seem that NTMs are more powerful than DTMs, since they can allow trees of possible computations arising from the same initial configuration, accepting a string if any one branch in the tree accepts it. However, it is possible to simulate NTMs with DTMs, and in fact this can be done in more than one way.

Multiplicity of configuration states

One approach is to use a DTM of which the configurations represent multiple configurations of the NTM, and the DTM's operation consists of visiting each of them in turn, executing a single step at each visit, and spawning new configurations whenever the transition relation defines multiple continuations.

Multiplicity of tapes

Another construction simulates NTMs with 3-tape DTMs, of which the first tape always holds the original input string, the second is used to simulate a particular computation of the NTM, and the third encodes a path in the NTM's computation tree.[1] The 3-tape DTMs are easily simulated with a normal single-tape DTM.

Time complexity and P vs. NP

{{main|P vs. NP problem}}

In the second construction, the constructed DTM effectively performs a breadth-first search of the NTM's computation tree, visiting all possible computations of the NTM in order of increasing length until it finds an accepting one. Therefore, the length of an accepting computation of the DTM is, in general, exponential in the length of the shortest accepting computation of the NTM. This is believed to be a general property of simulations of NTMs by DTMs. The P = NP problem, the most famous unresolved question in computer science, concerns one case of this issue: whether or not every problem solvable by a NTM in polynomial time is necessarily also solvable by a DTM in polynomial time.

Bounded non-determinism

An NTM has the property of bounded non-determinism. That is, if an NTM always halts on a given input tape T then it halts in a bounded number of steps, and therefore can only have a bounded number of possible configurations.

Comparison with quantum computers

Because quantum computers use quantum bits, which can be in superpositions of states, rather than conventional bits, there is a misconception that quantum computers are NTMs.[2] It is believed by experts (but has not been proven) that instead, the power of quantum computers is incomparable to that of NTMs, that is, problems likely exist that an NTM could efficiently solve that a quantum computer cannot and vice versa.[3]{{better source|date=September 2017}} In particular, it is likely that NP-complete problems are solvable by NTMs but not by quantum computers in polynomial time.

See also

  • Probabilistic Turing machine

References

1. ^Elements of the Theory of Computation, by Harry R. Lewis and Christos H. Papadimitriou, Prentice-Hall, Englewood Cliffs, New Jersey, 1981, {{isbn|0-13-273417-6}}, pp. 206–211
2. ^The Orion Quantum Computer Anti-Hype FAQ, Scott Aaronson.
3. ^{{cite arxiv|first=Tereza|last=Tušarová|title=Quantum complexity classes|year=2004|eprint=cs/0409051 }}.
  • {{cite book|author = Harry R. Lewis, Christos Papadimitriou | year = 1981 | title = Elements of the Theory of Computation | publisher = Prentice-Hall | edition = 1st | isbn = 0-13-273417-6}} Section 4.6: Nondeterministic Turing machines, pp. 204–211.
  • {{cite book|author = John C. Martin | year = 1997 | title = Introduction to Languages and the Theory of Computation | publisher = McGraw-Hill | edition = 2nd | isbn = 0-07-040845-9}} Section 9.6: Nondeterministic Turing machines, pp. 277–281.
  • {{cite book|author = Christos Papadimitriou | year = 1993 | title = Computational Complexity | publisher = Addison-Wesley | edition = 1st | isbn = 0-201-53082-1}} Section 2.7: Nondeterministic machines, pp. 45–50.

External links

  • [https://web.archive.org/web/20080515023814/http://semillon.wpi.edu/~aofa/AofA/msg00020.html C++ Simulator of a Nondeterministic Multitape Turing Machine] (free software).
  • C++ Simulator of a Nondeterministic Multitape Turing Machine download link from sourceforge.net
{{DEFAULTSORT:Non-Deterministic Turing Machine}}

1 : Turing machine

随便看

 

开放百科全书收录14589846条英语、德语、日语等多语种百科知识,基本涵盖了大多数领域的百科知识,是一部内容自由、开放的电子版国际百科全书。

 

Copyright © 2023 OENC.NET All Rights Reserved
京ICP备2021023879号 更新时间:2024/9/20 19:27:10