The Church-Turing Thesis Jos Baeten Centrum Wiskunde & - - PowerPoint PPT Presentation
The Church-Turing Thesis Jos Baeten Centrum Wiskunde & - - PowerPoint PPT Presentation
The Church-Turing Thesis Jos Baeten Centrum Wiskunde & Informatica, Amsterdam, and LoCo, ILLC Midsummernight Colloquium, Amsterdam June 17, 2015 Alonzo Church and Alan Turing 1903 - 1995 1912 - 1954 Informatics = Information +
Alonzo Church and Alan Turing
1903 - 1995 1912 - 1954
Informatics = Information + Computation
Computation: Church-Turing computation theory (1936)
Church defines computable function by means of
λ-calculus; non-computability
Turing defines computable function by means of
machine model; non-computability of halting problem
Computation Theory
A Turing machine is an adequate abstract model of a
computer
Church-Turing thesis (strong): anything that can be
done with a computer, now or in the future, can also be done with a Turing machine, given enough time and memory.
Turing Machine
Automaton Input Output Tape
Turing machine for unary addition
[+/| ]R [|/| ]R [|/| ]R [/]L [|/]L || + ||
Turing machine for unary addition
[+/| ]R [|/| ]R [|/| ]R [/]L [|/]L || + || || + ||
Turing machine for unary addition
[+/| ]R [|/| ]R [|/| ]R [/]L [|/]L || + || || + || ||+||
Turing machine for unary addition
[+/| ]R [|/| ]R [|/| ]R [/]L [|/]L || + || || + || ||+|| |||||
Turing machine for unary addition
[+/| ]R [|/| ]R [|/| ]R [/]L [|/]L || + || || + || ||+|| ||||| ||||| |||||
Turing machine for unary addition
[+/| ]R [|/| ]R [|/| ]R [/]L [|/]L || + || || + || ||+|| ||||| ||||| ||||| |||||
Turing machine for unary addition
[+/| ]R [|/| ]R [|/| ]R [/]L [|/]L || + || || + || ||+|| ||||| ||||| ||||| ||||| ||||
What is a computation?
Turing machine gives a function transforming input
string on tape to output string
Models a computer of the ’70s (program, CPU, RAM) Criticism possible on suitability as a theoretical model
- f a modern-day computer
Reactive Systems
“A Turing machine cannot drive a car, but a real computer can!”
Controversy 20 years ago
Peter Wegner: Church-Turing thesis is wrong! Turing machine can be fixed in several ways. Most elegantly: it denotes function on streams
Interaction
User interaction: not just initial, final word on the tape. Make interaction between control and memory explicit. . . . a theory of concurrency and interaction requires a new conceptual framework, not just a refinement of what we find natural for sequential computing.
Robin Milner, Turing Award Lecture, 1993
Concurrency
Transition systems Bisimulation (Park, Van Benthem) Structural operational semantics (Plotkin) Process algebra (Milner, Hoare, Bergstra, Klop) Comparative concurrency semantics (Van Glabbeek)
Executability Theory
Computability + Concurrency Real integration, aim is not to increase the computational power of the traditional model nor to investigate the extra expressivity of interaction
Reactive Turing Machine
τ[/]L τ[/]R i[/1]R
- [1/]L
i i i τ τ τ
- τ
i τ
The stack
i?0[/]R i?0[n/n]R
- !∅[/]L
- !n[n/]L
i?1[/]R i?1[n/n]R τ[/0]R τ[/]L τ[/1]R τ[/]L
Behavior of the stack
i?0
- !0
i?1
- !1
- !∅
i?0
- !0
i?1
- !1
i?0
- !0
i?1
- !1
Executable process
An executable process is a branching bisimilarity class
- f transition systems containing one of an RTM
Results
Transition system defined by an RTM is computable Every finitely branching computable transition system
is executable
The parallel composition of two executable transition
systems is executable
There is a universal RTM There is a good grammar for executable processes,
that makes interaction between control and memory explicit
Robustness
Bas Luttik, Fei Yang: Executability characterized by a simple variant of the π-calculus (with replication) up to branching bisimulation.
Conclusion
Executability = Computability + Concurrency Unified framework for computation and interaction Upcoming course in Master of Logic: