Multitape Turing machine

From Wikipedia, the free encyclopedia
Jump to navigation Jump to search

A multi-tape Turing machine is like an ordinary Turing machine with several tapes. Each tape has its own head for reading and writing. Initially the input appears on tape 1, and the others start out blank.[1]

This model intuitively seems much more powerful than the single-tape model, but any multi-tape machine, no matter how many tapes, can be simulated by a single-tape machine using only quadratically more computation time.[2] Thus, multi-tape machines cannot calculate any more functions than single-tape machines,[3] and none of the robust complexity classes (such as polynomial time) are affected by a change between single-tape and multi-tape machines.

Formal definition[edit]

A k-tape Turing machine can be described as a 6-tuple where:

  • is a finite set of states
  • is a finite set of the tape alphabet
  • is the initial state
  • is the blank symbol
  • is the set of final or accepting states
  • is a partial function called the transition function, where k is the number of tapes, L is left shift, R is right shift and S is no shift.

Two-stack Turing machine[edit]

Two-stack Turing machines have a read-only input and two storage tapes. If a head moves left on either tape a blank is printed on that tape, but one symbol from a "library" can be printed.

See also[edit]


  1. ^ Sipser, Michael (2005). Introduction to the Theory of Computation. Thomson Course Technology. p. 148. ISBN 0-534-95097-3.
  2. ^ Papadimitriou, Christos (1994). Computational Complexity. Addison-Wesley. p. 53. ISBN 0-201-53082-1.
  3. ^ Martin, John (2010). Introduction to Languages and the Theory of Computation. McGraw Hill. pp. 243–246. ISBN 978-0071289429.