Multitape Turing machine
Hypothetical computing device
From Wikipedia, the free encyclopedia
A multi-tape Turing machine is a variant of the Turing machine that uses 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
-tape Turing machine can be formally defined as a 7-tuple , following the notation of a Turing machine:
- is a finite, non-empty set of tape alphabet symbols;
- is the blank symbol (the only symbol allowed to occur on the tape infinitely often at any step during the computation);
- is the set of input symbols, that is, the set of symbols allowed to appear in the initial tape contents;
- is a finite, non-empty set of states;
- is the initial state;
- is the set of final states or accepting states. The initial tape contents is said to be accepted by if it eventually halts in a state from .
- is a partial function called the transition function, where L is left shift, R is right shift.
A -tape Turing machine , where is the number of tapes assigned, computes as follows. starts in its initial state . This is defined by all tapes having one head starting at the leftmost position, along with an input on the leftmost positions of the first tape, all other symbols of every tape being the blank symbol defined by . A step for the machine is done by evaluating the transition function. This is done by taking in the current state and the set of alphabetic symbols that the heads reside over notated as . The transition function takes both of these parameters and outputs the three things necessary for a transition: the new state that transitions into, a new set of alphabet symbols that each of the heads will write to their respective cells, and a set of shift instructions that will instruct each of the heads which direction to move to (left or right one cell) after the new symbols are written. The transition function iterates until enters a final state belonging to the set , at which point it halts.
Two-stack Turing machine
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.