A machine of Turing is an abstract model of the operation of the mechanical apparatuses of calculation, a such Ordinateur and its memory, created by Alan Turing in order to give a precise definition to the concept of algorithm or “mechanical procedure”. This model is always largely used in theoretical Informatique, to solve the problems of algorithmic Complexité in particular and of Calculabilité, one associates to him for that a oracle.
The thesis Church-Turing postulates that any problem of calculation based on an algorithmic procedure can be solved by a machine of Turing. This thesis is not a mathematical statement, since it does not suppose a precise definition of algorithmic procedure. On the other hand, it is possible to define a concept of “acceptable system of programming” and to show that the capacity of such systems is equivalent to that of the machines of Turing (Turing-complete).
In the beginning, the concept of machine of Turing, invented before the computer, was supposed to represent a virtual person carrying out a well defined procedure, by changing the contents of the boxes of an infinite table, by choosing these contents among a finished whole of Symbole S. In addition, the person must memorize a particular state among a finished whole of states. The procedure is formulated in very simple terms of stages, of the type: “if you are in state 42 and that the symbol contained on the box which you look at is “0”, then to replace this symbol by one “1”, to pass in state 17, and to look at an adjacent box (right or left)”.
Implementation the concrete of a machine of Turing is carried out with the following elements:
The machine of Turing which follows has an alphabet {`0', `1'}, `0' being the “ blanc ”. It is supposed that the ribbon contains a series of `1', and that the read/write head is initially above the `1' on the left. This machine causes to double the number of `1', by intercalating a `0' between the two series. For example, “ 111 ” becomes “ 1110111 ”.
The whole of possible states of the machine is {e1, e2, e3, e4, e5} and the initial state is e1.
The table of actions is the suivante :
The execution of this machine could be for example (the position of the read/write head on the ribbon is registered in bold characters and red) :
|
|
|
|}
The behavior of this machine can be described like a boucle :
Any machine of Turing calculates the result of a function partial on character strings made up of the characters of its alphabet. In this direction, a machine of Turing behaves like a computer with a program déterminé.
But, as Alan Turing described it, one can encoder the table of actions of a machine of Turing in the shape of a character string. One can thus try to build a machine of Turing which supposes the existence on its ribbon of a character string encodant a table of actions, followed by a character string constituting the effective data of the ribbon, and calculates the contents of the ribbon that the machine of Turing encodée would have calculé.
As Alan Turing showed it, it is possible to create such a machine of Turing and since it can simulate the behavior of any other machine of Turing, it is called “universal machine of Turing”.
Thanks to this encoding of the tables of actions in the form of character strings, it becomes in theory possible that the machines of Turing answer questions in connection with the behavior of other machines of Turing. However, the majority of these questions are indécidables, i.e. the function in question cannot be calculated by a machine of Turing.
For example, the question of knowing if a machine of Turing reaches at a time given never does not reach a stopped state or it for a particular entry, or for all the possible entries, known under the name of Problème of the stop, was shown as being indécidable by Turing.
The Théorème of Rice watch that any noncommonplace property on the language accepted by a machine of Turing is indécidable.
If one widens the definition to include there the machines of Turing which simulate models of Turing-complete calculation S, and either only the machines of Turing which directly simulate other machines of Turing, a universal machine of Turing can be relatively simple, and use only some states and symbols. For example, there exists a universal machine of Turing of size 2×18 (i.e. 2 states, and 18 symbols).
The smallest known universal machines of Turing have the following sizes: 2×18, 3×10, 4×6, 5×5, 7×4, 10×3, 22×2. These last simulate a model called Tag system .
A machine of Turing of size 2×3 proposed by Stephen Wolfram, was announced like the smallest universal machine of Turing. The proof is due to Alex Smith. However the concept of universality used in this proof is not the same one as that described informellement above. In particular, it requires to initially write an infinity of symbols on the ribbon to prepare calculation.
A universal machine of Turing is Turing-complete. It can calculate all recursive Fonction, analyze all recursive Langage, and accept all partially Langage décidable. According to the theorem of Church-Turing, the solvent problems by a universal machine of Turing are exactly the solvent problems by a algorithm or a concrete method of calculation , by supposing a reasonable definition of these terms.
It is rather easy to simulate a machine of Turing on a modern computer… Until the moment when the memory of the computer becomes possibly full (if the machine of Turing uses most of the ribbon)!
It is also possible to build a purely mechanical machine of Turing. The mathematician Karl Scherer built one in 1986 of them by using building sets out of metal and plastic, and wood. Its machine, high of one meter and half uses strings for reading, moving and to write the data (represented using rolls of the dice).
The machine is currently exposed in the hall of the department of data processing of the Université of Heidelberg in Germany.
In the same way, by using approximately 200 mirrors, it is possible to create an optical machine of Turing universal by using the method known as of the horseshoe conceived by Stephen Smale.
| Random links: | Regional natural park of the Loops of the Seine Norman | School unhooking | Friuli Aquileia Tocai Friulano superiore | Nicole DeHuff | Albina of Boisrouvray |