The Turing Machine What Is Turing Machine? • It is a conceptual machine put forward by Allan Turing in 1938. • It is composed of – A unlimitedly long tape with 0/1; – A device with a read/write head which moves one step at a time; – A process box with pre-stored rules. What A Turing Machine Can Do? • A Turing Machine can carry out a particular task, such as “adding one to a number”, “multiply two numbers”, “find the highest common factor between two numbers”, “pick the larger from two numbers”. Church-Turing’s Thesis • Any problem that has an algorithmic solution can be solved on a Turing Machine. Algorithm • An algorithm is a step-by-step procedure, by following which we can get a problem solved. • The results of an algorithm is independent of executor and times of executions. That is, no matter who is execute the algorithm, and how many time it is executed, the results will be, if input data are same, either identical or undistinguishable. Any Algorithmic Solution Can Be Realized on a Computer • If a problem can be solved by an algorithm, then a computer program can be generated to solve the problem. Therefore … • Any task that is accomplished on a computer can be accomplished on a Turing Machine. Universal Turing Machine • If the pre-stored rules in the process box are put on the tape, then individual Truing Machines with particular tasks can be combined into one Turing Machine – Universal Turing Machine. • It has been proved that those pre-stored rules in process box can be coded onto the tape. Therefore … • The computer as we have now can be conceptually reduced to an equivalent universal Turing Machine. Implications • We can predict some features of what computers can do in the future, even we do not know what specifically computers can do and how complicated it is. • For example, what the computer does in the future must be copiable. Turing Machine May Set a Limit for How Far Computer Can Go • Since we can foresee some features of future computers through Turing Machine, we may figure out something that can never be done by a computer. • A rigorous proof may be there right at the corner to show computers are not omnipotent, or at least cannot as intelligent / conscious as humans. Theorem of Incompleteness • The enthusiasm and fanaticism of developing a computing machine able to develop all theorems in a math system came to a sudden stop after Godel published his Incompleteness Theorem in 1936 • Godel showed it’s not possible to exhaust all theorems of a math system if staying in the system. Be Humble • Godel’s Theorem of Incompleteness served a sharp warning against the blind arrogance of humans. • Can we humans understand ourselves so well that we can make machines more intelligent than us?