1 / 21

The Church-Turing Thesis

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. The Church-Turing Thesis. Algorithms  Turing Machines. Sounds Unbelievable.

althea
Download Presentation

The Church-Turing Thesis

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


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

  2. 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

  3. The Church-Turing Thesis Algorithms  Turing Machines

  4. Sounds Unbelievable • We are so used to programming scripting languages • Things like (in tolua, a variant of Lua that allows C++ constructs):

  5. But Actually it is not so “unbelievable”

  6. But Actually it is not so “unbelievable” Can be translated into C++ (not an actual translation of the code above)

  7. But Actually it is not so “unbelievable” Can be translated into C (not an actual translation of the code above)

  8. But Actually it is not so “unbelievable” can be translated into C kernel (not an actual translation of the code above)

  9. But Actually it is not so “unbelievable” can be translated into Assembler (not an actual translation of the code above)

  10. But Actually it is not so “unbelievable” Can be ran by the Von Neumann machine

  11. 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!

  12. 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”

  13. 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)

  14. Three Equivalent Formalisms • -calculus • Recursive functions • Turing machines

  15. LISP (defun palindrome( L ) (cond ((null L) T ) ((equal (car L) (car (last L))) (palindrome (cdr (reverse (cdr L))))))) (inspired by -calculus)

  16. 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)

  17. Turing Machine

  18. C Program

  19. 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

  20. What Comes Next • Study some difficult problems that are in fact decidable • Study some harder problems that are: • Not decidable but recognizable • Problems that are not even recognizable • By the Church-Turing thesis, no algorithm exists that solves problems in (1) and (2)

  21. (any non-decidable problem)

More Related