the turing machine olena lastivka. definition turing machine is a theoretical device that...
TRANSCRIPT
The Turing machine
Olena Lastivka
Definition Turing machine is a theoretical
device that manipulates symbols on a strip of tape according to a table of rules. Despite its simplicity, Turing machine can be adapted to simulate the logic of any computer algorithm.
Alan Turing
The "Turing" machine was described by Alan Turing in 1936, who called it an "automatic-machine". The Turing machine is not intended as a practical computing technology, but rather as a thought experiment representing a computing machine. Turing machines help computer scientists understand the limits of mechanical computation.
History background In 1936 Alan Turing was
member of the Royal Army and worked in the British codebreaking centre, located at Bletchley Park in South East England. His major task during World War II was breaking the Enigma, a device that was used by the Germans, in order to encode military messages.
German Enigma
History background
A single message could be interpreted in more than 150 quadrillion ways (> 150,000,000,000,000 or 150 * 1012), therefore the British scientists made use of technical support. The “Turing Bombe”1, a cluster of four Turing machines, could successfully decode a secret message within several hours and thus was a huge advantage for the Royal British Army in their battle against Nazi Germany.
“Turing Bombe”
DescriptionThe Turing machine consists of three main
components:tape which is divided into cells, one next to the
other. Each cell contains a symbol from some finite alphabet. The alphabet contains a special blank symbol and one or more other symbols. Tape is endless in both directions.
head that can read data from or write data to the tape
application, which is a table of instructions that tell the machine what to do next.
State
State register stores the state of the Turing machine, one of finitely many. There is one special start state with which the state register is initialized. So Turing machine’s actions depends not only on the symbol, which the head reads from the tape but also on the state it is in.
These states, writes Turing, replace the "state of mind" a person performing computations would ordinarily be in.
Operations
Turing machine can do only 3 operations:
Replace current symbol on the tape with the other one (same symbol is also possible)
Move right or left for one cellChange the state (it is also possible to
keep the same state)
Processing
Operation is fully determined by a finite set of elementary instructions such as "in state 42, if the symbol seen is 0, write 1; if the symbol seen is 1, shift to the right, and change into state 17; in state 17, if the symbol seen is 0, write 1 and change to state 6;" etc.
Simple example
It is a definition that the head initially points at the first element on our tape. The input in our example is number five, represented by a sequence of the digit “1”. The state is “state 1”.
Simple example In our example the Turing machine is in
“state 1” and points at an element that has the value “1”, so the value remains “1” and “state 1” is kept as well. The head now moves right and the next element is processed.
Simple example
As long as we are in “state 1” and the value on the tape does not change, the head will keep on moving right. Therefore we will skip the next couple of movements and have a look at the very end of our string.
Simple example As soon as the head reaches the blank
element at the end of our string, the previous rule does not fit anymore. Although we are still in “state 1”, the head now points at a blank element. Consequently this time the Turing machine will execute the second line of our source code:
Simple example The head writes a “1” onto the tape, but
the Turing machine remains in “state 1”. However the device now halts and the calculation is completed. Our final output will look like this:
So these two lines of pseudo-code enable the Turing machine to calculate the successor of a natural number. No matter whether our input is 4 or 4,000,000, our output will always be the next natural number (here: 5 or 4,000,001).
Church-Turing thesis
Any possible calculation can be performed by an algorithm, running on a computer that provides sufficient time and storage space.
Turing-complete
Inventions that are in accordance with the Church-Turing thesis, because they can solve every given mathematical expression, are called “Turing-complete”.
Turing-complete Although the Turing machine is rather
old, it is still present in a wide range of scientific areas, covering the sectors of information technology, mathematics, physics, biology or even chemistry (e.g. quantum computers). In most of these branches the term “Turing-complete” became very important and is for example used to classify programming languages, algorithms or technical devices today.
General idea of computations
Although most people know that “three times three” is nine, nearly none of them will think about what it actually means, namely “3 + 3 + 3”. However the Turing machine makes use of this technique and can even calculate more sophisticated terms by converting them back to our basic mathematical operations (here: addition).
Conclusion
Admittedly it is just pure theory, when we say that a Turing machine can solve every given mathematical problem. No question about that it is possible in theory, as it is a given, defined by the Church-Turing thesis, but in practice we will quickly realize that this idea is very limited.
Sources:http://en.wikipedia.org/wiki/Church–
Turing_thesishttp://en.wikipedia.org/wiki/Turing_machi
nehttp://en.wikipedia.org/wiki/Alan_Turing
by Olena Lastivka