Read-only Turing machine explained

A read-only Turing machine or two-way deterministic finite-state automaton (2DFA) is class of models of computability that behave like a standard Turing machine and can move in both directions across input, except cannot write to its input tape. The machine in its bare form is equivalent to a deterministic finite automaton in computational power, and therefore can only parse a regular language.

Theory

We define a standard Turing machine by the 9-tuple

M=(Q,\Sigma,\Gamma,\vdash,\,\delta,s,t,r)

where

Q

is a finite set of states;

\Sigma

is the finite set of the input alphabet;

\Gamma

is the finite tape alphabet;

\vdash\in\Gamma-\Sigma

is the left endmarker;

\\in\Gamma-\Sigma

is the blank symbol;

\delta:Q x \GammaQ x \Gamma x \{L,R\}

is the transition function;

s\inQ

is the start state;

t\inQ

is the accept state;

r\inQ,~r\net

is the reject state.

So given initial state

q

reading symbol

a

, we have a transition defined by

\delta(q,a)=(q2,a2,d)

which replaces

a

with

a2

, transitions to state

q2

, and moves the "read head" in direction

d

(left or right) to read the next input.[1] In our 2DFA read-only machine, however,

a=a2

always.

This model is now equivalent to a DFA. The proof involves building a table which lists the result of backtracking with the control in any given state; at the start of the computation, this is simply the result of trying to move past the left endmarker in that state. On each rightward move, the table can be updated using the old table values and the character that was in the previous cell. Since the original head-control had some fixed number of states, and there is a fixed number of states in the tape alphabet, the table has fixed size, and can therefore be computed by another finite state machine. This machine, however, will never need to backtrack, and hence is a DFA.

Variants

Several variants of this model are also equivalent to DFAs. In particular, the nondeterministic case (in which the transition from one state can be to multiple states given the same input) is reducible to a DFA.

Other variants of this model allow more computational complexity. With a single infinite stack the model can parse (at least) any language that is computable by a Turing machine in linear time.[2] In particular, the language can be parsed by an algorithm which verifies first that there are the same number of a's and b's, then rewinds and verifies that there are the same number of b's and c's. With the further aid of nondeterminism the machine can parse any context-free language. With two infinite stacks the machine is Turing equivalent and can parse any recursive formal language.

If the machine is allowed to have multiple tape heads, it can parse any language in L or NL, according to whether nondeterminism is allowed.[3]

Applications

A read-only Turing machine is used in the definition of a Universal Turing machine to accept the definition of the Turing machine that is to be modelled, after which computation continues with a standard Turing machine.

In modern research, the model has become important in describing a new complexity class of Quantum finite automata or deterministic probabilistic automata.[4] [5]

See also

External links

Notes and References

  1. Book: Kozen, Dexter C. . David Gries, Fred B. Schneider . Automata and Computability . limited . 1951 . hardcover . 1 . Undergraduate Texts in Computer Science . 1997 . Springer-Verlag . New York . 978-0-387-94907-9 . 158, 210, 224.
  2. Computational Complexity by Wagner and Wechsung, section 13.3 (1986,)
  3. Computational Complexity by Wagner and Wechsung, section 13.1 (1986,)
  4. Book: Kondacs, A. . J. Watrous . Proceedings 38th Annual Symposium on Foundations of Computer Science . On the power of quantum finite state automata . 1997 . 66–75 . https://web.archive.org/web/20070823235100/http://www.cs.uwaterloo.ca/~watrous/papers/qfa.ps . dead . 2007-08-23 . 2007-11-07 . 10.1109/SFCS.1997.646094 . 978-0-8186-8197-4 . 10.1.1.49.6392 . 14025116 .
  5. Dwork . Cynthia . Cynthia Dwork . Stockmeyer . Larry . Larry Stockmeyer . 1990 . A Time Complexity Gap For 2-Way Probabilistic Finite State Automata . SIAM Journal on Computing . 19 . 6 . 1011–1023 . 2007-11-07 . 10.1137/0219069 . https://web.archive.org/web/20091028104653/http://geocities.com/stockmeyer@sbcglobal.net/pfa_gap.ps. dead . 2009-10-28.