You are on page 1of 3

TURING MACHINE

Definition:
Turing machine is used to accept Recursive Enumerable Languages (generated by
Type-0 Grammar).
A turing machine consists of a tape of infinite length on which read and writes
operation can be performed. The tape consists of infinite cells on which each cell
either contains input symbol or a special symbol called blank. It also consists of a
head pointer which points to cell currently being read and it can move in both
directions.
A Turing machine is a 7-tuple (Q, Σ, Γ, δ, q0, qaccept, qreject) such that
1. Q is a finite set of states;
2. Σ is the input alphabet not containing the blank symbol t;
3. Γ is the tape alphabet, where t ∈ Γ and Σ ⊆ Γ;
4. δ : (Q × Γ) → (Q × Γ × {L, R}) is the transition function;
5. q0 ∈ Q is the start state;
6. qaccept ∈ Q is the accept state;
7. qreject ∈ Q is the reject state, where qreject 6= qaccept.
M=(Q, T, B, ∑, δ, q0, B, F) where:
 Q is a finite set of states
 T is the tape alphabet (symbols which can be written on Tape)
 B is blank symbol (every cell is filled with B except input alphabet initially)
 ∑ is the input alphabet (symbols which are part of input alphabet)
 δ is a transition function which maps Q × T → Q × T × {L,R}. Depending on
its present state and present tape alphabet (pointed by head pointer), it will
move to new state, change the tape symbol (may or may not) and move head
pointer to either left or right.
 q0 is the initial state
 F is the set of final states. If any state of F is reached, input string is accepted.
Example of turing machine:
Turing machine M = (Q, X, ∑, δ, q0, B, F) with

 Q = {q0, q1, q2, qf}


 X = {a, b}
 ∑ = {1}
 q0 = {q0}
 B = blank symbol
 F = {qf }
δ is given by −

Tape alphabet symbol Present State ‘q0’ Present State ‘q1’ Present State ‘q2’

a 1Rq1 1Lq0 1Lqf

b 1Lq2 1Rq1 1Rqf

Here the transition 1Rq1 implies that the write symbol is 1, the tape moves right,
and the next state is q1. Similarly, the transition 1Lq2 implies that the write symbol
is 1, the tape moves left, and the next state is q2.

Acceptability of String:
M1 accepts strings of {w#w|w ∈ {0, 1} ∗}. It works as follows: 1. At the start, the
input string appears on the tape; the tape-head is over the leftmost cell. 2. Mark the
symbol a below the tape head, remembering if it’s a 0 or 1. 3. Move right, finding
the first unmarked symbol b after the #. If a 6= b, or if an empty cell is found
before a #, then reject. 4. Otherwise, mark b and return to the left, stopping at the
first marked symbol after the #. Then move one cell to the right. 5. Repeat this
process until all symbols to the left of the # are marked. Then move to the right,
looking for unmarked symbols after the #. 6. If any are found, reject. If instead an
empty cell is encountered, accept.

You might also like