1.4 Turing Machines

Turing Machines
Introduction
• Turing machine was invented by the
Mathematician Alan Turing in 1934
• A machine capable of solving any problem that
can be represented algorithmically
• The basis from which modern Computers were
developed
• Anything a modern computer can do can be
represented using a Turing machine
What is a Turing machine?
• It describes an algorithm
• It consists of a deterministic finite state machine
together with an infinitely long tape
• They compute functions or accept a set of
strings i.e. language
• Input received from initial tape
• Output is final content of tape
• If it doesn’t halt on inputs specified for function
then no algorithm exists and function is not
computable
Power of Turing Machines
• The basic operations of a Turing machine
cannot be divided further and all other types of
computing machines can be reduced to an
equivalent Turing machine
• A Turing machine provides a formal definition of
the digital computer
• A sequence of Turing machines may be
connected together to perform more complex
operations matching those of any program
running on a Pentium processor
Universal Turing Machines
• A UTM is a Turing machine that can execute
other Turing machines by simulating their
behaviour
• A UTM using a single 1-dim tape, the
instructions of the Turing machine being
simulated are placed on the tape followed by the
data to be processed.
• It behaves as an Interpreter
• Desktop machines are based on this principle
e.g. Java applets downloaded as data but can
be executed as programs
DNA Computing
Modern computers use silicon chips but recently
computers have been developed based on DNA.
In 2002, Ehud Shapiro showed a programmable
molecular device composed of enzymes and
synthetic strands of DNA. This was an
implementation of a Turing Machine. A ‘DNA
Turing Machine’ could be used to compare ratios
of molecules in the human body – detecting
cancers and releasing anti-cancer drugs.
Class work
1. Answer questions on Turing machines
worksheet.
2. Answer questions 1-10 in the A2
Computing book pages 43 and 46.
3. Download and install Java
4. Download and install TuringKara.
5. Follow the ‘Learning to use TuringKara’
worksheet.
Homework
1. Watch the ‘A Turing Machine overview’
YouTube video
2. Answer the past paper questions:
a) Q6 Specimen COMP3
b) Q8 COMP3 2010
Hand-in answers on Friday 30th March 2012
Questions