Presented by Melvin Zhang
melvinzhang@gmail.com
@melvinzhangzy
Turing and the Typewriter
How Alan Turing accidentally invented Software
http://tiny.cc/turing-typewriter
https://oztypewriter.blogspot.com
Turing in 1923
http://www.kurzweilai.net/passing-of-the-typewriter
A precise definition of computation
http://aturingmachine.com/
An example of Turing’s automatic machine
Demo: Running Turing’s a-machine
Computation = Turing Machine
Turing’s Thesis
Kurt G¨odel
“That this really is the correct
definition of mechanical
computability was established
beyond any doubt by Turing.”
A problem which cannot be solved by
Turing machines
“It is possible to invent a
single machine which can be
used to compute any
computable sequence.
If this machine U is supplied
with a tape on the beginning
of which is written the S.D.
of some machine M, then U
will compute the same
sequence as M.”
Alan Turing in 1936
Software = description of machine M
Software = description of machine M
U(description of M) = M()
Demo: Running U on a description of M
“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
Building a physical Turing machine
Automatic Computing Engine,
proposed in 1946 and built in 1950
Turing’s accidental invention of software
• machines can be described on the tape
• and executed on the universal machine U
• software = description of some machine M
Turing’s accidental invention of software
• machines can be described on the tape
• and executed on the universal machine U
• software = description of some machine M
References
http://tiny.cc/turing-typewriter
How Alan Turing accidentally invented Software

How Alan Turing accidentally invented Software