Cs3102: Theory of Computation Class 16: Uncomputable Numbers and Unrecognizable Languages Spring 2010 University of Virginia David Evans.

Slides:



Advertisements
Similar presentations
What Computers Can't Compute Dr Nick Benton Queens' College & Microsoft Research
Advertisements

David Evans cs302: Theory of Computation University of Virginia Computer Science Lecture 17: ProvingUndecidability.
Nathan Brunelle Department of Computer Science University of Virginia Theory of Computation CS3102 – Spring 2014 A tale.
Class 39: Universality cs1120 Fall 2009 David Evans University of Virginia.
CMPF144 FUNDAMENTALS OF COMPUTING THEORY Module 7: Beyond Classical Logic.
1 COMP 382: Reasoning about algorithms Unit 9: Undecidability [Slides adapted from Amos Israeli’s]
Week 7 - Wednesday.  What did we talk about last time?  Set proofs and disproofs  Russell’s paradox.
This is not the Title of our Seminar
Nathan Brunelle Department of Computer Science University of Virginia Theory of Computation CS3102 – Spring 2014 A tale.
Math 333 – Euclidean and Non-Euclidean Geometry Dr. Hamblin.
1 Introduction to Computability Theory Lecture12: Reductions Prof. Amos Israeli.
CS1001 Lecture 22. Overview Mechanizing Reasoning Mechanizing Reasoning G ö del ’ s Incompleteness Theorem G ö del ’ s Incompleteness Theorem.
CHAPTER 4 Decidability Contents Decidable Languages
Automata & Formal Languages, Feodor F. Dragan, Kent State University 1 CHAPTER 5 Reducibility Contents Undecidable Problems from Language Theory.
January 28, 2015CS21 Lecture 101 CS21 Decidability and Tractability Lecture 10 January 28, 2015.
David Evans cs302: Theory of Computation University of Virginia Computer Science Lecture 2: Modeling Computers.
Lecture 24: Gödel’s Proof CS150: Computer Science
Computability Thank you for staying close to me!! Learning and thinking More algorithms... computability.
Introduction to Computer Science. A Quick Puzzle Well-Formed Formula  any formula that is structurally correct  may be meaningless Axiom  A statement.
Mathematics and the Theory of Knowledge
First Order Logic. This Lecture Last time we talked about propositional logic, a logic on simple statements. This time we will talk about first order.
Class 36: Proofs about Unprovability David Evans University of Virginia cs1120.
Cs3102: Theory of Computation Class 17: Undecidable Languages Spring 2010 University of Virginia David Evans.
Workshop 2 Limits to logic and computing power 1.Are there limits to what humans can know ? Ignoramus et ignorabimus 2.Are there limits to computer knowledge?
Group 7 Nisarg Shah : Siddharth Dhakad : Chirag Sethi : Shiv Shankar : Dileep Kini : Self Referencing and.
Cs3102: Theory of Computation Class 18: Proving Undecidability Spring 2010 University of Virginia David Evans.
David Evans CS200: Computer Science University of Virginia Computer Science Class 24: Gödel’s Theorem.
Class 37: Uncomputability David Evans University of Virginia cs1120 Halting Problems Hockey Team.
Logic in Computer Science - Overview Sep 1, 2011 POSTECH 박성우.
1 CO Games Development 2 Week 21 Turing Machines & Computability Gareth Bellaby.
The Recursion Theorem Pages 217– ADVANCED TOPICS IN C O M P U T A B I L I T Y THEORY.
Institute for Experimental Physics University of Vienna Institute for Quantum Optics and Quantum Information Austrian Academy of Sciences Undecidability.
Hilbert’s Progamme Early in C20, the mathematician Hilbert led a programme to formalise maths; to reduce it to a clear set of axioms and show that all.
David Evans CS200: Computer Science University of Virginia Computer Science Class 25: Computability Halting Problems Hockey.
Lecture 18. Unsolvability Before the 1930’s, mathematics was not like today. Then people believed that “everything true must be provable”. (More formally,
Course Overview and Road Map Computability and Logic.
Tommy King October 14, 2014 Kurt GodeL.
David Evans cs302: Theory of Computation University of Virginia Computer Science Lecture 16: Universality and Undecidability.
Great Theoretical Ideas in Computer Science.
Godel’s proof Danny Brown. Outline of godel’s proof 1.Create a statement that says of itself that it is not provable 2.Show that this statement is provable.
Great Theoretical Ideas in Computer Science.
David Evans CS150: Computer Science University of Virginia Computer Science Lecture 25: Gödel and Computability Halting.
Thinking in Methodologies Class Notes. Gödel’s Theorem.
Artificial Intelligence “Introduction to Formal Logic” Jennifer J. Burg Department of Mathematics and Computer Science.
First Order Logic Lecture 3: Sep 13 (chapter 2 of the book)
Incompleteness. System Relativity Soundness and completeness are properties of particular logical systems. There’s no sense to be made of the claim that.
CS 461 – Nov. 7 Decidability concepts –Countable = can number the elements  –Uncountable = numbering scheme impossible  –A TM undecidable –Language classes.
Computation Motivating questions: What does “computation” mean? What are the similarities and differences between computation in computers and in natural.
Chapter 4 Computation Chapter 4: Computation.
CSE 311: Foundations of Computing Fall 2014 Lecture 27: Cardinality.
Week 7 - Wednesday.  What did we talk about last time?  Proving the subset relationship  Proving set equality  Set counterexamples  Laws of set algebra.
The Church-Turing Thesis Chapter Are We Done? FSM  PDA  Turing machine Is this the end of the line? There are still problems we cannot solve:
David Evans CS200: Computer Science University of Virginia Computer Science Class 26: Halting Problem It is plain at any.
CSC 3130: Automata theory and formal languages Andrej Bogdanov The Chinese University of Hong Kong Undecidable.
MA/CSSE 474 Theory of Computation Universal Turing Machine Church-Turing Thesis Delayed due dates for HWs See updated schedule page. No class meeting.
Fall 2013 Lecture 27: Turing machines and decidability CSE 311: Foundations of Computing.
CIS Automata and Formal Languages – Pei Wang
Axiomatic Number Theory and Gödel’s Incompleteness Theorems
CS154, Lecture 11: Self Reference, Foundation of Mathematics
Great Theoretical Ideas in Computer Science
Class 23: Gödel’s Theorem CS150: Computer Science
Homework: Friday Read Section 4.1. In particular, you must understand the proofs of Theorems 4.1, 4.2, 4.3, and 4.4, so you can do this homework. Exercises.
Mathematics and Knowledge
Lecture 22: Gödel’s Theorem CS200: Computer Science
Class 24: Computability Halting Problems Hockey Team Logo
Lecture 8 CS 1813 – Discrete Mathematics
CS154, Lecture 11: Self Reference, Foundation of Mathematics
CO Games Development 2 Week 21 Turing Machines & Computability
Lecture 23: Computability CS200: Computer Science
CIS Automata and Formal Languages – Pei Wang
Presentation transcript:

cs3102: Theory of Computation Class 16: Uncomputable Numbers and Unrecognizable Languages Spring 2010 University of Virginia David Evans

Menu Gödel’s Incompleteness Theorem Turing’s Proof Uncomputable Numbers Unrecognizable Languages

Bertrand Russell ( ) : Principia Mathematica (with Alfred Whitehead) 1918: Imprisoned for pacifism 1950: Nobel Prize in Literature 1955: Russell-Einstein Manifesto 1967: War Crimes in Vietnam

“Great spirits have always encountered violent opposition from mediocre minds.” Albert Einstein (talking about Bertrand Russell)

Principia Mathematica Whitehead and Russell (1910– 1913) Three Volumes, 2000 pages Attempted to axiomatize mathematical reasoning – Define mathematical entities (like numbers) using logic – Derive mathematical “truths” by following mechanical rules of inference – Claimed to be complete and consistent: All true theorems could be derived No falsehoods could be derived

All true statements about numbers

Perfect Axiomatic System Derives all true statements, and no false statements starting from a finite number of axioms and following mechanical inference rules.

Incomplete Axiomatic System Derives some, but not all true statements, and no false statements starting from a finite number of axioms and following mechanical inference rules. incomplete

Inconsistent Axiomatic System Derives all true statements, and some false statements starting from a finite number of axioms and following mechanical inference rules. some false statements

Russell’s Paradox Some sets are not members of themselves e.g., set of all Jeffersonians Some sets are members of themselves e.g., set of all things that are non-Jeffersonian S = the set of all sets that are not members of themselves Is S a member of itself?

Russell’s Paradox S = set of all sets that are not members of themselves Yes? If S is an element of S, then S is a member of itself and should not be in S. No? If S is not an element of S, then S is not a member of itself, and should be in S.

Ban Self-Reference? Principia Mathematica attempted to resolve this paragraph by banning self-reference Every set has a type – The lowest type of set can contain only “objects”, not “sets” – The next type of set can contain objects and sets of objects, but not sets of sets – Can we define S?

Epimenides Paradox Epidenides (a Cretan): “All Cretans are liars.” Equivalently: “This statement is false.” Russell’s types can help with the set paradox, but not with these.

Kurt Gödel 1931: Über formal unentscheidbare Sätze der Principia Mathematica und verwandter Systeme 1906 (Brno) – 1978 (Princeton) (On Formally Undecidable Propositions of Principia Mathematica and Related Systems)

1939: flees Vienna Institute for Advanced Study, Princeton (with Einstein, von Neumann, etc.)

When I was at Princeton in the 1940s I could see what happened to those great minds at the Institute for Advanced Study, who had been specially selected for their tremendous brains and were now given this opportunity to sit in this lovely house by the woods there, with no classes to teach, with no obligations whatsoever. These poor bastards could now sit and think clearly all by themselves, OK? So they don't get any ideas for a while: They have every opportunity to do something, and they’re not getting any ideas. I believe that in a situation like this a kind of guilt or depression worms inside of you, and you begin to worry about not getting any ideas. And nothing happens. Still no ideas come. Nothing happens because there’s not enough real activity and challenge: You’re not in contact with the experimental guys. You don’t have to think how to answer questions from the students. Nothing! Richard Feynman, Surely You're Joking, Mr. Feynman!, 1985

Gödel’s Theorem In the Principia Mathematica system, there are statements that cannot be proven either true or false.

Gödel’s Theorem In any interesting rigid system, there are statements that cannot be proven either true or false.

Gödel’s Proof – General Idea Theorem: In the Principia Mathematica system, there are statements that cannot be proven either true or false. Proof: Find such a statement.

Gödel’s Statement G: This statement does not have any proof in the system of Principia Mathematica. G is unprovable, but true!

Gödel’s Proof Idea G: This statement does not have any proof in the system of PM. If G is provable, PM would be inconsistent. If G is unprovable, PM would be incomplete. Thus, PM cannot be complete and consistent!

Gödel’s Statement G: This statement does not have any proof in the system of PM. Possibilities: 1. G is true  G has no proof System is incomplete 2. G is false  G has a proof System is inconsistent

Incomplete Axiomatic System Derives some, but not all true statements, and no false statements starting from a finite number of axioms and following mechanical inference rules. incomplete Inconsistent Axiomatic System Derives all true statements, and some false statements starting from a finite number of axioms and following mechanical inference rules. some false statements Pick one:

Inconsistent Axiomatic System Derives all true statements, and some false statements starting from a finite number of axioms and following mechanical inference rules. some false statements Once you can prove one false statement, everything can be proven! false  anything Once you can prove one false statement, everything can be proven! false  anything

Finishing The Proof Turn G into a statement in the Principia Mathematica system Is PM powerful enough to express G? Yes! If you don’t believe me read Gӧdel’s paper or Hofstadter’s Gӧdel, Escher, Bach G: “This statement does not have any proof in the PM system.”

Gödel’s Proof G: This statement does not have any proof in the system of PM. If G is provable, PM would be inconsistent. If G is unprovable, PM would be incomplete. PM can express G. Thus, PM cannot be complete and consistent!

Generalization All “powerful” logical systems are incomplete: there are statements that are true that cannot be proven within the system. “powerful” = able to express: “This statement has no proof.”

flickr cc: annieinbeziers The initial reaction was surprise and dismay, and a feeling that Gödel had pulled the rug out from under mathematics. But human beings have wonderful psychological defense mechanisms. The crisis has passed, and the mathematical community now has forgotten about incompleteness. Gregory Chatin

Does this solve the Entscheidungsproblem? Decision procedure: given a well-formed statement, determine whether it can be proven. “Truth” procedure: given a well-formed statement, determine mechanically whether it is true. Gödel (1930): this is impossible! Turing, Church (1936): this is impossible!

Estimate: $29.99 Amazon: $ Estimate: $0.00

Not Visiting UVa This Month Turing Award Ed Clarke, 2007 (with Allen Emerson, Joseph Sifakis) Barbara Liskov, 2008 Charles Thacker, 2009 Monday, March 29 3:30pm in Olsson 009 Thursday, April 1 4:00pm in Muary 209 Not Visiting UVa Next Week

Defining Computable Numbers A number is computable if its decimal can be written down by a machine. All green text: taken directly from A. M. Turing, On Computable Numbers, with an application to the Entscheidungsproblem, (The low budget version.) I give some arguments showing that the computable numbers include all numbers which could naturally be regarded as computable. In particular, I show that certain large classes of numbers are computable. They include, for instance, the real parts of all algebraic numbers, …, the numbers , e, etc. Computable convergence: (Defined carefully by Turing, but not by us.)

How many computable numbers are there? “Je le vois, mais je ne le crois pas.” Georg Cantor

How many computable numbers are there? How many strings in  * are there?

How many computable numbers are there? How many Turing Machines are there? Countable: Natural Numbers Any set that has 1-to-1 mapping to whole numbers Not Countable: Real Numbers Set of strings in  *

How many computable numbers are there? Countable: Natural Numbers Any set that has 1-to-1 mapping to whole numbers Set of strings in  * Not Countable: Real Numbers Set of all Turing Machines Computable Numbers Each TM produces at most one new number!

s Languages that can be recognized by any mechanical computing machine All Languages Do we know this picture is right now?

How many languages in  * are there? Countable: Natural Numbers Any set that has 1-to-1 mapping to whole numbers Set of strings in  * Set of all Turing Machines Computable Numbers Not Countable: Real Numbers

All strings in {0, 1}*: ε … All languages in {0, 1}?

How many languages in  * are there? Countable: Natural Numbers Any set that has 1-to-1 mapping to whole numbers Set of of strings in  * Set of all Turing Machines Computable Numbers Not Countable: Real Numbers Set of all languages in  *

s Languages that can be recognized by any mechanical computing machine All Languages So, what is a language that is not Turing-recognizable?

Remember Gödel All “powerful” logical systems are incomplete: there are statements that are true that cannot be proven within the system. Systems break when they have to answer deep questions about themselves!

Turing Machine Questions The set of all Turing Machines is countable: Can we describe all TM’s using an encoding in {0, 1}*? Are all strings in  * valid descriptions of TMs?

The Language of TMs q reject

Self-Rejecting Language Suppose there is a TM M SR that recognizes S ELF -R EJECTING :

Yes? Contradiction! No? Contradiction! The assumption leads to a contradiction: thus, M SR must not exist!

s Languages that can be recognized by any mechanical computing machine All Languages S ELF -R EJECTING

Charge Thursday morning office hours are now 8:45- 10am Reading this week: Chapter 4 PS5 will be posted soon (due April 6, postponed 1 week from original due date) Next class: – Diagonal argument for Self-Rejecting – A language that is Turing-recognizable but not Turing-decidable