Turing machines are a simple mathematical model of computation that was introduced by Alan Turing in 1936. A Turing machine consists of a finite set of states, an infinite tape divided into cells, and a head that can read and write symbols on the tape. It operates based on a transition function that changes the state and head position based on the current state and symbol. Turing machines can be used as language acceptors by accepting inputs that cause them to halt in an accepting state, or as transducers by treating the initial tape as input and final tape as output. Variations include multi-tape, non-deterministic, multi-head, and multi-dimensional Turing machines. Turing machines are useful for determining decid
DEFINITION
A Turing machine(TM) is a finite-state machine with an infinite tape
and a tape head that can read or write one tape cell and move left or
right.
It normally accepts the input string, or completes its computation, by
entering a final or accepting state.
Tape is use for input and working storage.
4.
Representation of TuringMachine
•
Turing Machine is represented by-
• M=(Q,Σ, Γ,δ,q0,B,F) ,
• Where
• Q is the finite state of states
• Σ a set of τ not including B, is the set of input symbols,
• τ is the finite state of allowable tape symbols,
• δ is the next move function, a mapping from Q × Γ to
• Q × Γ ×{L,R}
• Q0 in Q is the start state,
• B a symbol of Γ is the blank,
• F is the set of final states.
Transition function
One move(denoted by |---) in a TM does the following:
δ(q , X) = (p ,Y ,R/L)
• q is the current state
• X is the current tape symbol pointed by tape head
• State changes from q to p
7.
Turing machine aslanguage acceptors
A Turing machine halts when it no longer has available moves.
If it halts in a final state, it accepts its input, otherwise it rejects its
input.
For language accepted by M ,we define
L(M)={ w ε ∑+
: q0w |– x1qfx2 for some qf ε F , x1 ,x2ε Γ *
}
8.
Turing machine astransducers
• To use a Turing machine as a transducer, treat the entire nonblank
portion of the initial tape as input
• Treat the entire nonblank portion of the tape when the machine halts
as output.
A Turing machine defines a function y = f (x) for strings x, y ε ∑*
if
q0x |*– qf y
• A function index is “Turing computable” if there exists a Turing
machine that can perform the above task.
9.
ID of aTMID of a TM
• Instantaneous Description or ID :
X1 X2…Xi-1 q Xi Xi+1 …Xn
Means:
q is the current state
Tape head is pointing to Xi
X1X2…Xi-1XiXi+1… Xn are the current tape symbols
δ (q , Xi ) = (p ,Y , R ) is same as:δ (q , Xi ) = (p ,Y , R ) is same as:
X1 X2…Xi-1 q Xi Xi+1 …Xn|---- X1 X2…Xi-1 YY pp Xi+1…Xn
δδ (q Xi) = (p Y L) same as:(q Xi) = (p Y L) same as:
X1 X2…Xi-1 q Xi Xi+1 …Xn|---- X1 X2…ppXi-1YY Xi+1 …Xn
MULTITAPE TURING MACHINES
ATuring Machine with several tapes
Every Tape’s have their Controlled own R/W Head
For N- tape TM M=(Q,Σ, Γ,δ,q0,B,F)
• we define δ : Q X ΓN
Q X ΓN
X { L , R} N
12.
NON DETERMINISTIC TURINGNONDETERMINISTIC TURING
MACHINESMACHINES
It is similar to DTM except that for any input symbol and current
state it has a number of choices
A string is accepted by a NDTM if there is a sequence of moves that
leads to a final state
The transaction function δ : Q X Γ 2 QXΓ X{L,R}
13.
MULTIHEAD TURING MACHINEMULTIHEADTURING MACHINE
Multihead TM has a number of heads instead of one.
Each head indepently read/ write symbols and move left / right or
keep stationery.
14.
OFF- LINE TURINGMACHINEOFF- LINE TURING MACHINE
An Offline Turing Machine has two tapes
1. One tape is read-only and contains the input
2. The other is read-write and is initially blank.
15.
MULTIDIMENSIONAL TURINGMULTIDIMENSIONAL TURING
MACHINEMACHINE
AMultidimensional TM has a multidimensional tape.
• For example, a two-dimensional Turing machine would read and
write on an infinite plane divided into squares, like a checkerboard.
For a two- Dimensional Turing Machine transaction function define
as:
• δ : Q X Γ Q X Γ X { L , R,U,D}
16.
Applications of TM
•Check Decidability If TM cannot solve a problem in countable time
then there could not be any algorithm which could solve that
problem (That is the problem is undecidable).For a decision problem
if its TM halt in countable time for all finite length inputs then we can
say that the problem could be solved by an algorithm in countable
time.
• Classify Problem TM helps to classify decidable problems into classes
of Polynomial Hierarchy. Suppose we found that the problem is
decidable. Then out target become how efficiently we can solve it.
The efficiency been calculated in number of steps, extra space used ,
length of the code/size of the FSM.
• Design and Implement Algorithm for Practical Machines TM helps to
propagate idea of algorithm in other practical machines. After the
successful check of 1,2 criteria we can use our practical
devices/computers to design and implement algorithm.