Class 23: Gödel’s Theorem CS150: Computer Science

Slides:



Advertisements
Similar presentations
CS344 : Introduction to Artificial Intelligence Pushpak Bhattacharyya CSE Dept., IIT Bombay Lecture 9,10,11- Logic; Deduction Theorem 23/1/09 to 30/1/09.
Advertisements

This is not the Title of our Seminar
David Evans CS200: Computer Science University of Virginia Computer Science Lecture 23: Inheritance.
HISTORY OF LOGIC BY JOHN NAGUIB. What is Logic? The science or study of how to evaluate arguments and reasoning. “Logic is new and necessary reasoning”
Math 333 – Euclidean and Non-Euclidean Geometry Dr. Hamblin.
CS1001 Lecture 22. Overview Mechanizing Reasoning Mechanizing Reasoning G ö del ’ s Incompleteness Theorem G ö del ’ s Incompleteness Theorem.
Logic and Set Theory.
First Order Logic (chapter 2 of the book) Lecture 3: Sep 14.
Describing Syntax and Semantics
Lecture 24: Gödel’s Proof CS150: Computer Science
Computability Thank you for staying close to me!! Learning and thinking More algorithms... computability.
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.
David Evans CS200: Computer Science University of Virginia Computer Science Class 24: Gödel’s Theorem.
MATH 224 – Discrete Mathematics
Logic in Computer Science - Overview Sep 1, 2011 POSTECH 박성우.
Cs3102: Theory of Computation Class 16: Uncomputable Numbers and Unrecognizable Languages Spring 2010 University of Virginia David Evans.
Institute for Experimental Physics University of Vienna Institute for Quantum Optics and Quantum Information Austrian Academy of Sciences Undecidability.
David Evans CS150: Computer Science University of Virginia Computer Science Lecture 22: Objectifying Objects.
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.
CS 345: Chapter 8 Noncomputability and Undecidability Or Sometimes You Can’t Get It Done At All.
Course Overview and Road Map Computability and Logic.
Tommy King October 14, 2014 Kurt GodeL.
Great Theoretical Ideas in Computer Science.
Automated Reasoning Early AI explored how to automated several reasoning tasks – these were solved by what we might call weak problem solving methods as.
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.
David Evans CS150: Computer Science University of Virginia Computer Science Lecture 23: Programming with Objects.
First Order Logic Lecture 3: Sep 13 (chapter 2 of the book)
David Evans Class 16: NP-Completeness / The Story so Far CS150: Computer Science University of Virginia Computer Science.
David Evans CS200: Computer Science University of Virginia Computer Science Lecture 15: Intractable Problems (Smiley.
David Evans CS200: Computer Science University of Virginia Computer Science Lecture 22: Objects I invented the term Object-
Lecture 3: Rules of Evaluation CS150: Computer Science
David Evans CS150: Computer Science University of Virginia Computer Science Lecture 22: Objectifying Objects.
David Evans CS200: Computer Science University of Virginia Computer Science Lecture 21: Inheritance.
David Evans CS200: Computer Science University of Virginia Computer Science Class 26: Halting Problem It is plain at any.
David Evans CS200: Computer Science University of Virginia Computer Science Class 19: Computability Halting Problems Hockey.
Logical Agents. Outline Knowledge-based agents Logic in general - models and entailment Propositional (Boolean) logic Equivalence, validity, satisfiability.
Chapter 1 Logic and Proof.
CIS Automata and Formal Languages – Pei Wang
Gödel's Legacy: The Limits Of Logics
Axiomatic Number Theory and Gödel’s Incompleteness Theorems
Mathematics and Certainty
Discrete Mathematics for Computer Science
Lecture 4: Evaluation Rules Recursion CS200: Computer Science
Class 22: Inheritance CS150: Computer Science University of Virginia
CS154, Lecture 11: Self Reference, Foundation of Mathematics
Great Theoretical Ideas in Computer Science
Lecture 2 Propositional Logic
Lecture 21: Inheritance CS200: Computer Science University of Virginia
Class 14: Intractable Problems CS150: Computer Science
Lecture 22: Gödel’s Theorem CS200: Computer Science
First Order Logic Rosen Lecture 3: Sept 11, 12.
Great Theoretical Ideas in Computer Science
Class 24: Computability Halting Problems Hockey Team Logo
Predicates and Quantifiers
Lecture 8 CS 1813 – Discrete Mathematics
This Lecture Substitution model
Lecture 3: Rules of Evaluation CS200: Computer Science
CS154, Lecture 11: Self Reference, Foundation of Mathematics
Philosophy of Mathematics: a sneak peek
An example of the “axiomatic approach” from geometry
CO Games Development 2 Week 21 Turing Machines & Computability
Representations & Reasoning Systems (RRS) (2.2)
Lecture 23: Computability CS200: Computer Science
CIS Automata and Formal Languages – Pei Wang
Presentation transcript:

David Evans http://www.cs.virginia.edu/evans Class 23: Gödel’s Theorem CS150: Computer Science University of Virginia Computer Science David Evans http://www.cs.virginia.edu/evans

Menu PS5 PS6 Introducing Computability Mechanized Reasoning Gödel’s Theorem

PS5 How are commercial databases different from what you implemented for PS5? UVa’s Integrated Systems Project to convert all University information systems to use an Oracle database was originally budgeted for $58.2 Million (starting in 1999). Actual cost is likely to be $100 Million. http://www.virginia.edu/isp/

Real Databases Atomic Transactions: a transaction may involve many modifications to database tables, but the changes should only happen if the whole transaction happens (e.g., don’t charge the credit card unless the order is sent to the shipping dept) Security: limit read/write access to tables, entries and fields Storage: need to efficiently store data on disk, provide backup mechanisms Scale: to support really big data tables, real databases do lots of clever things

How big are big databases? Microsoft TerraServer Claimed biggest in 1998 Aerial photos of entire US (1 meter resolution)

Rotunda Amphitheater You are here

You are here AFC? UVA 26 FSU 21 Picture from 2 Apr 1994

Big Databases Microsoft TerraServer Google Maps Wal-Mart 3.3 Terabytes (claimed biggest in 1998) 1 Terabyte = 240 Bytes ~ 1 Trillion Bytes Google Maps Not so big? (but offers programming interface!) Wal-Mart 285 Terabytes (2003) Stanford Linear Accelerator (BaBar) 500 Terabytes (30 KB per particle collision)

How much work? table-select is (n) where n is the number of entries in the table Would your table-select work for Wal-Mart? If 1M entry table takes 1s, how long would it take Wal-Mart to select from 285TB ~ 2 Trillion Entries? 2 000 000s ~ 23 days How do expensive databases perform so much faster?

PS6 Make an adventure game programming with objects Many objects in our game have similar properties and behaviors, so we use inheritance.

PS6 Classes object physical-object place mobile-object thing person make-class is the procedure for constructing objects in the class class mobile-object thing person student inherits from person which inherits from mobile-object which inherits from physical-object which inherits from object. police-officer student

PS6 Objects object physical-object place mobile-object thing person Cabal Hall Recursa (make-place name) evaluates to an object that is an instance of the class place. thing person police-officer student Alyssa P. Hacker

Are there class hierarchies like this in the “real world” or just in fictional worlds like Charlottansville?

Microsoft Foundation Classes CButton inherits from CWnd inherits from CObject “A button is a kind of window is a kind of object”

Not at all uncommon to have class hierarchies like this! RotationPathInterpolator PathInterpolator Interpolator Node Behavior Leaf Object SceneGraphObject Not at all uncommon to have class hierarchies like this! Java 3D Class Hierarchy Diagram http://java.sun.com/products/java-media/3D/collateral/j3dclass.html

Story So Far Much of the course so far: This Week: Getting comfortable with recursive definitions Learning to write a program to do (almost) anything (PS1-4) Learning more elegant ways of programming (PS5-6) This Week: Getting uncomfortable with recursive definitions Understanding why there are some things no one can write a program to do!

Problem Classes if P  NP: (From Lecture 16) Simulating Universe: O(n3) P (n) NP 3SAT Find Best: (n) NP-Complete Note the NP-Complete class is a ring – others are circles What is further out? Sorting: (n log n) Smileys

Computability All Problems Decidable

Computer Science/Mathematics Computer Science (Imperative Knowledge) Are there (well-defined) problems that cannot be solved by any procedure? Mathematics (Declarative Knowledge) Are there true conjectures that cannot be the shown using any proof?

Mechanical Reasoning Aristotle (~350BC): Organon We can explain logical deduction with rules of inference (syllogisms) Every B is A C is B  C is A Every human is mortal. Gödel is human. Gödel is mortal.

More Mechanical Reasoning Euclid (~300BC): Elements We can reduce geometry to a few axioms and derive the rest by following rules Newton (1687): Philosophiæ Naturalis Principia Mathematica We can reduce the motion of objects (including planets) to following axioms (laws) mechanically

Mechanical Reasoning Late 1800s – many mathematicians working on codifying “laws of reasoning” George Boole, Laws of Thought Augustus De Morgan Whitehead and Russell

All true statements about number theory

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.

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

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

Russell’s Paradox Some sets are not members of themselves set of all Jeffersonians Some sets are members of themselves 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 Is S a member of itself? If S is an element of S, then S is a member of itself and should not be in S. 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

Russell’s Resolution? Set ::= Setn Set0 ::= { x | x is an Object } Setn ::= { x | x is an Object or a Setn - 1 } S: Setn Is S a member of itself? No, it is a Setn so, it can’t be a member of a Setn

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 this one.

Gödel’s Solution All consistent axiomatic formulations of number theory include undecidable propositions. (GEB, p. 17) undecidable – cannot be proven either true or false inside the system.

Kurt Gödel Born 1906 in Brno (now Czech Republic, then Austria-Hungary) 1931: publishes Über formal unentscheidbare Sätze der Principia Mathematica und verwandter Systeme (On Formally Undecidable Propositions of Principia Mathematica and Related Systems)

1939: flees Vienna Institute for Advanced Study, Princeton Died in 1978 – convinced everything was poisoned and refused to eat

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 Theorem All logical systems of any complexity are incomplete: there are statements that are true that cannot be proven within the system.

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 is unprovable, but true! G: This statement of number theory does not have any proof in the system of Principia Mathematica. G is unprovable, but true!

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

Finishing The Proof Turn G into a statement in the Principia Mathematica system Is PM powerful enough to express “This statement of number theory does not have any proof in the system of PM.”?

How to express “does not have any proof in the system of PM” What does it mean to have a proof of S in PM? There is a sequence of steps that follow the inference rules that starts with the initial axioms and ends with S What does it mean to not have any proof of S in PM? There is no sequence of steps that follow the inference rules that starts with the initial axioms and ends with S

Can PM express unprovability? There is no sequence of steps that follow the inference rules that starts with the initial axioms and ends with S Yes: (using Scheme-ified Gödel notation) (unprovable? x) = (not (provable? x)) (provable? x) = (exists (y) (proves y x)) (proves x y) = (and (valid-proof-steps x) (eq? (apply-proof x initial-axioms) y)))

Can we express “This statement of number theory” Yes! That’s the point of the TNT Chapter in GEB We can write turn every statement into a number, so we can turn “This statement of number theory does not have any proof in the system of PM” into a number

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

Generalization All logical systems of any complexity are incomplete: there are statements that are true that cannot be proven within the system.

Practical Implications Mathematicians will never be completely replaced by computers There are mathematical truths that cannot be determined mechanically We can build a computer that will prove only true theorems about number theory, but if it cannot prove something we do not know that that is not a true theorem.

Charge Wednesday: Friday: Does not being able to prove things mechanically have anything to do with not being able compute things? What is the equivalent to the Gödel sentence for computation? Friday: How to prove a problem has no solving procedure