Presented by Melvin Zhang
melvinzhang@gmail.com
@melvinzhangzy
Build a Turing Machine emulator
to explore Turing’s great ideas
Lego Turing Machine
A precise definition of
computation
Alonzo Church
Computation = λ Calculus
Church Thesis (Apr 1936)
Kurt G¨odel
“Thoroughly unsatisfactory”
Alan Turing
http://www.kurzweilai.net/passing-of-the-typewriter
Computation = Turing Machine
Turing’s Thesis (Nov 1936)
Kurt G¨odel
“That this really is the correct
definition of mechanical
computability was established
beyond any doubt by Turing.”
A universal machine
“It is possible to invent a
single machine which can be
used to compute any
computable sequence.”
“If it should turn out that the basic logics of a machine
designed for the numerical solution of differential equations
coincide with the logics of a machine intended to make bills for
a department store, I would regard this as the most amazing
coincidence that I have ever encountered.” –
Howard Aiken in 1956
http://www.rdrop.com/ half/General/UTM/UTMStateTable.html
Program = Data
Automatic Computing Engine,
proposed in 1946 and built in 1950
Turing’s Great Ideas:
• Turing machines as a model for computation
• A single machine can emulate all others
• Programs as data for other programs
Turing’s Great Ideas:
• Turing machines as a model for computation
• A single machine can emulate all others
• Programs as data for other programs
Further readings:

Building a Turing Machine emulator to explore Turing's great ideas