Upcoming SlideShare
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×
Saving this for later? Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime – even offline.
Standard text messaging rates apply

# Incompleteness without Godel Numberings

245

Published on

Published in: Technology, Education
0 Likes
Statistics
Notes
• Full Name
Comment goes here.

Are you sure you want to Yes No
• Be the first to comment

• Be the first to like this

Views
Total Views
245
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
7
0
Likes
0
Embeds 0
No embeds

No notes for slide

### Transcript

• 1. Incompleteness for People
• 2. Goal • Write a program that can take any Mathematical statement like “does 2 + 2 = 4?” or “is every even number the sum or two primes?” and (correctly) prove the statement is true or false
• 3. What can computers do? • Anything that can be expressed by an algorithm-a set of instructions so detailed there’s no ambiguity • Example: “check all possible configurations of chess boards and see if this one is valid.” • for each item in the list (Length(L)≥1), do if the item > largest, then largest ← the item return largest
• 4. Turing Machines • Formalization of the concept of an algorithm • Strong evidence that TMs can represent all algorithms. No proof is possible since “algorithm” is an informal concept
• 5. Turing Machines 2 • Input -> Calculation -> Output • Not all programs finish in finite time. Consider the following: while x > 0 x = x + 1 • If the input x is less than 0, this program will never finish, or halt.
• 6. What can’t computers do? • Computability: the study of what’s theoretically possible using algorithms (Turing Machines), disregarding resource/time constraints. “All finite numbers are approximately equal.”
• 7. The Halting Problem • Can you write a program P that can examine another program Q and figure out whether Q halts?
• 8. Proof
• 9. Implications • Statements about Turing Machines halting are formal mathematical constructs. So no single program can prove or disprove all Mathematical statements • Is there a subset of statements we can evaluate?
• 10. Formal Languages • A language contains rules for what kind of statements we can construct • For example, if we limit ourselves to statements about chess, a program can answer any question about whether a certain chess position is possible (though it might take a very long time!)
• 11. First Order Logic
• 12. Baby Incompleteness Theorem • Let h(e,k,j) be the halting characteristic function equal to 1 if the Turing Machine e with input k halts after j steps and 0 otherwise • If a language L is expressive enough to express the halting characteristic function then no program can prove or disprove every statement of L
• 13. Primitive Recursive Functions • Intended to represent functions that are guaranteed to finish within j steps, where j is one of the inputs to the function • Functions that can be written with a for loop • The halting characteristic function is primitive recursive
• 14. Primitive Recursive Functions – Formal Definition
• 15. First Incompleteness Theorem • Any language L strong enough to express 0, the successor function S, <, * (multiplication), and + can express all primitive recursive functions, and thus no program can prove or disprove all statements written in L. • In particular the language of the Natural Numbers, Peano arithmetic, can’t have all its statements proved or disproved by any program