the church-turing thesis lecture by h. munoz-avila

21
The Church-Turing Thesis Lecture by H. Munoz-Avil

Upload: eustace-stanley

Post on 12-Jan-2016

228 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: The Church-Turing Thesis Lecture by H. Munoz-Avila

The Church-Turing Thesis

Lecture by H. Munoz-Avila

Page 2: The Church-Turing Thesis Lecture by H. Munoz-Avila

We have the Notion of Turing Machines

• Transitions: ((p,),(q,R))

• Here is a Turing machine “in action”• http://www.youtube.com/watch?v=FTSAiF9AHN4

Page 3: The Church-Turing Thesis Lecture by H. Munoz-Avila

The Church-Turing Thesis

Algorithms Turing Machines

Page 4: The Church-Turing Thesis Lecture by H. Munoz-Avila

Sounds Unbelievable

• We are so used to programming scripting languages• Things like (in tolua, a variant of Lua that allows C++

constructs):

Page 5: The Church-Turing Thesis Lecture by H. Munoz-Avila

But Actually it is not so “unbelievable”

Page 6: The Church-Turing Thesis Lecture by H. Munoz-Avila

But Actually it is not so “unbelievable”

Can be translated into C++

(not an actual translation of the code above)

Page 7: The Church-Turing Thesis Lecture by H. Munoz-Avila

But Actually it is not so “unbelievable”

Can be translated into C

(not an actual translation of the code above)

Page 8: The Church-Turing Thesis Lecture by H. Munoz-Avila

But Actually it is not so “unbelievable”

can be translated into C kernel

(not an actual translation of the code above)

Page 9: The Church-Turing Thesis Lecture by H. Munoz-Avila

But Actually it is not so “unbelievable”

can be translated into Assembler

(not an actual translation of the code above)

Page 10: The Church-Turing Thesis Lecture by H. Munoz-Avila

But Actually it is not so “unbelievable”

Can be ran by the Von Neumann machine

Page 11: The Church-Turing Thesis Lecture by H. Munoz-Avila

But Actually it is not so “unbelievable”

We have the same basic elements in Turing Machines:

• We can do arithmetic• Control• And a lot of memory!

Page 12: The Church-Turing Thesis Lecture by H. Munoz-Avila

So Why is it Called a “Thesis”

• There is no precise notion for “algorithm”

• Of course there is a precise notion for a C++ program

• But how does programs will look like 40 years from now?– Think how programs looked like 40 years ago

• So we have a “moving target”

Page 13: The Church-Turing Thesis Lecture by H. Munoz-Avila

A Bit of History

• Das Entscheidungsproblem (Hilbert, 1928)– Is there a decider for First-order logic?

• Vollständigkeit des Logikkalküls (Gödel, 1929)

• Church developed -calculus and proved that the Entscheidungsproblem cannot be solved (1936)– impossible to prove that two -calculus

are equivalent• Turing proved that the Halting problem can

be reduced to the Entscheidungsproblem – And hence it cannot be solved (1936)

Page 14: The Church-Turing Thesis Lecture by H. Munoz-Avila

Three Equivalent Formalisms

• -calculus

• Recursive functions

• Turing machines

Page 15: The Church-Turing Thesis Lecture by H. Munoz-Avila

LISP

(defun palindrome( L )

(cond

((null L) T )

((equal (car L) (car (last L)))

(palindrome (cdr (reverse (cdr L)))))))

(inspired by -calculus)

Page 16: The Church-Turing Thesis Lecture by H. Munoz-Avila

Prolog

palCheck(List) :- reverse(List,List).

reverse(L1,L2) :- rev(L1,[],L2).

rev([],L,L).

rev([H|L],L2,L3) :- rev(L,[H|L2],L3).

(inspired by recursive functions)

Page 17: The Church-Turing Thesis Lecture by H. Munoz-Avila

Turing Machine

Page 18: The Church-Turing Thesis Lecture by H. Munoz-Avila

C Program

Page 19: The Church-Turing Thesis Lecture by H. Munoz-Avila

Not an Accident

• Any algorithm written in any one of these languages can be written in any of the other ones

• Researchers sometime refer to programming languages having this property as Turing-complete

• Examples of Turing-complete languages: C, C++, java, LISP, Prolog, …

• Examples that are not: Context-free languages, “STRIPS” planning, LOOP

Page 20: The Church-Turing Thesis Lecture by H. Munoz-Avila

What Comes Next

• Study some difficult problems that are in fact decidable

• Study some harder problems that are:

1. Not decidable but recognizable

2. Problems that are not even recognizable

3. By the Church-Turing thesis, no algorithm exists that solves problems in (1) and (2)

Page 21: The Church-Turing Thesis Lecture by H. Munoz-Avila

(any non-decidable problem)