Welcome! How to state and prove Gödel’s 1st Incompleteness Theorem – a glance at a new textbook on mathematical logic and computability theory. Lars Kristiansen Department of Mathematics, University of Oslo Department of Informatics, University of Oslo A new textbook The book is written by Christopher Leary (Department of Mathematics, SUNY Geneseo) and myself. A new textbook The book is written by Christopher Leary (Department of Mathematics, SUNY Geneseo) and myself. The book is an extended version of Leary, C.: A Friendly Introduction to Mathematical Logic. A new textbook The book is written by Christopher Leary (Department of Mathematics, SUNY Geneseo) and myself. The book is an extended version of Leary, C.: A Friendly Introduction to Mathematical Logic. the new book ≈ the old book + a chapter on computability theory + exercises with detailed solutions What is in the book? Chapter I: Structures and Languages. we introduce first-order languages and structures for first-order languages What is in the book? Chapter I: Structures and Languages. we introduce first-order languages and structures for first-order languages we define . . . truth in a structure . . . A |= φ . . . logical implication . . . Σ |= Γ . . . and so on What is in the book? Chapter I: Structures and Languages. we introduce first-order languages and structures for first-order languages we define . . . truth in a structure . . . A |= φ . . . logical implication . . . Σ |= Γ . . . and so on standard stuff . . . no proof calculus appears in this chapter . . . What is in the book? Chapter II: Deductions. we introduce a Hilbert-Frege calculus What is in the book? Chapter II: Deductions. we introduce a Hilbert-Frege calculus we define . . . deductions . . . Σ ` φ . . . What is in the book? Chapter II: Deductions. we introduce a Hilbert-Frege calculus we define . . . deductions . . . Σ ` φ . . . we prove the Soundness Theorem: Σ ` φ ⇒ Σ |= φ What is in the book? Chapter II: Deductions. we introduce a Hilbert-Frege calculus we define . . . deductions . . . Σ ` φ . . . we prove the Soundness Theorem: Σ ` φ ⇒ Σ |= φ we prove our deductive system has certain properties, e.g., we prove Deduction Theorem: Σ, η ` φ ⇔ Σ ` η → φ What is in the book? Chapter III: Completeness and Compactness. we prove the Completeness Theorem: Σ |= φ ⇒ Σ ` φ What is in the book? Chapter III: Completeness and Compactness. we prove the Completeness Theorem: Σ |= φ ⇒ Σ ` φ our proof is a standard Henkin-proof (so we prove: if Σ is a consistent set of sentences, then there is a model of Σ) What is in the book? we prove Compactness Theorem: Let Σ be a set of sentences. There is a model of Σ if and only if every finite subset Σ has a model. It is easy to prove the Compactness Theorem when we have the Completeness Theorem. What is in the book? we prove Compactness Theorem: Let Σ be a set of sentences. There is a model of Σ if and only if every finite subset Σ has a model. It is easy to prove the Compactness Theorem when we have the Completeness Theorem. some model theory: applications of the Compactness Theorem, nonstandard models of arithmetic, nonstandard analysis (just a little bit), Skolem-Löwenheim Theorems, . . . (about 20 pages all together) Gödel’s Incompleteness Theorem We are nearly halfway through the book. Gödel’s Incompleteness Theorem We are nearly halfway through the book. Now we are ready to address Gödel’s Incompleteness Theorem(s). Gödel’s Incompleteness Theorem We are nearly halfway through the book. Now we are ready to address Gödel’s Incompleteness Theorem(s). The next chapter is called Incompleteness From Two Points of View. Gödel’s Incompleteness Theorem Gödel’s Incompleteness Theorem After this chapter the reader can choose two between two paths to Incompleteness: (1) the traditional path (Chapter V and VI) (2) the computability-theoretic path (Chapter VII). Gödel’s Incompleteness Theorem After this chapter the reader can choose two between two paths to Incompleteness: (1) the traditional path (Chapter V and VI) (2) the computability-theoretic path (Chapter VII). In the chapter we present the stuff on Incompleteness that will be needed in both paths. Gödel’s Incompleteness Theorem We introduce bounded quantifiers, Σ1 -sentences and Π1 -sentences. Gödel’s Incompleteness Theorem We introduce bounded quantifiers, Σ1 -sentences and Π1 -sentences. We discuss the first-order theory N (eleven axioms for arithmetic, N is more or less Robinson arithmetic). Gödel’s Incompleteness Theorem We introduce bounded quantifiers, Σ1 -sentences and Π1 -sentences. We discuss the first-order theory N (eleven axioms for arithmetic, N is more or less Robinson arithmetic). The theory N is Σ1 -complete, that is, let φ be a Σ1 -sentence, Then N ` φ ⇔ N |= φ . Gödel’s Incompleteness Theorem We introduce bounded quantifiers, Σ1 -sentences and Π1 -sentences. We discuss the first-order theory N (eleven axioms for arithmetic, N is more or less Robinson arithmetic). The theory N is Σ1 -complete, that is, let φ be a Σ1 -sentence, Then N ` φ ⇔ N |= φ . We discuss how to code sequences of natural numbers as one natural number. We set up coding conventions (based on prime factorization). Gödel’s Incompleteness Theorem Now the reader has a choice, there are two alternative routes to Incompleteness: Gödel’s Incompleteness Theorem The traditional route. The reader will learn how we from a recursively enumerable set of axioms A, can construct a formula ψA (x) such that N |= ψA (pφq) ⇔ A ` φ . Then, by using Gödel’s Self-Reference Lemma, we can find φ such that N |= φ ⇔ A 6` φ . Then, if A is a consistent set of axioms, we have N |= φ and A 6` φ . Gödel’s Incompleteness Theorem The alternative route. theory. The reader will learn computability Gödel’s Incompleteness Theorem The alternative route. theory. The reader will learn computability So let us see how we can state and prove Gödel’s Incompleteness Theorem in the computability-theoretic setting. Gödel’s Incompleteness Theorem Gödel proved the theorem a few years before computability theory saw the light of day. [. . . ] Indeed, before he became familiar with Turing’s work, Gödel believed that it was impossible to capture our informal notion of an algorithm by a formal definition. Still, the First Incompleteness Theorem is in some sense a computability-theoretic result. Gödel’s proof of the theorem describes an algorithm for constructing a true mathematical statement that is not derivable in a given formal system. Computability theory is very well suited for stating and proving Gödel’s theorem as it is an excellent tool for explicating the computational content of the theorem. How much computability theory do we need? How much computability theory do we need? How much computability theory do we need? How much computability theory do we need? We need to introduce the computable functions (we use Kleene recursion). How much computability theory do we need? How much computability theory do we need? We need to introduce the computable functions (we use Kleene recursion). We need to introduce indices for computable functions. How much computability theory do we need? How much computability theory do we need? We need to introduce the computable functions (we use Kleene recursion). We need to introduce indices for computable functions. We need Kleene’s Normal Form Theorem: How much computability theory do we need? Theorem (Kleene’s Normal Form Theorem) Let n ∈ N. There exist a primitive recursive predicate Tn and a primitive recursive function U such that if e is an index for the n-ary function f , then f (x1 , . . . xn ) is defined ⇔ there exists t such that Tn (e, x1 , . . . xn , t) holds whenever f (x1 , . . . xn ) is defined f (x1 , . . . xn ) = U((µt)[Tn (e, x1 , . . . xn , t)]) . How much computability theory do we need? How much computability theory do we need? We need to introduce the computable functions (we use Kleene recursion). We need to introduce indices for the computable functions. We need Kleene’s Normal Form Theorem. How much computability theory do we need? How much computability theory do we need? We need to introduce the computable functions (we use Kleene recursion). We need to introduce indices for the computable functions. We need Kleene’s Normal Form Theorem. To introduce the indices and prove KNFT (properly) requires a fair amount of tedious technical work. (But the students should learn how to do such technical work, and the idea behind the proof is pretty easy to catch.) How much computability theory do we need? How much computability theory do we need? We need to introduce the computable functions (we use Kleene recursion). We need to introduce indices for the computable functions. We need Kleene’s Normal Form Theorem. To introduce the indices and prove KNFT (properly) requires a fair amount of tedious technical work. (But the students should learn how to do such technical work, and the idea behind the proof is pretty easy to catch.) Once KNFT is available, it is straightforward to introduce the remaining ingredients we need in a computability-theoretic proof of Gödel’s theorem. How much computability theory do we need? We need the Enumeration Theorem. How much computability theory do we need? We need the Enumeration Theorem. Definition For each e ∈ N, we define the e-th computable function of arity n, written {e}n , by {e}n (x1 , . . . , xn ) = U((µt)[Tn (e, x1 , . . . xn , t)]) where the function U and predicate Tn are given by Kleene’s Normal Form Theorem. How much computability theory do we need? We need the Enumeration Theorem. Theorem (Enumeration Theorem) The sequence {0}n , {1}n , {2}n , . . . is an enumeration of the computable functions of arity n in the sense that (1) for each e ∈ N, the function {e}n is computable (2) for each computable function f of arity n, there exists e such that f (x1 , . . . , xn ) = {e}n (x1 , . . . , xn ) . How much computability theory do we need? We need the Enumeration Theorem. (The proof is easy.) How much computability theory do we need? We need the Enumeration Theorem. (The proof is easy.) We need the to introduce the semi-decidable sets. How much computability theory do we need? We need the Enumeration Theorem. (The proof is easy.) We need the to introduce the semi-decidable sets. Definition We define the e th semi-computable set, written We , by We = dom({e}). How much computability theory do we need? We need the Enumeration Theorem. (The proof is easy.) We need the to introduce the semi-decidable sets. Definition We define the e th semi-computable set, written We , by We = dom({e}). We need the to introduce the diagonal set K. How much computability theory do we need? We need the Enumeration Theorem. (The proof is easy.) We need the to introduce the semi-decidable sets. Definition We define the e th semi-computable set, written We , by We = dom({e}). We need the to introduce the diagonal set K. Definition We define the set K by K = {x | x ∈ Wx }. How much computability theory do we need? . . . and we need to prove that Theorem The set K is not semi-computable. (an easy diagonalization proof) How much computability theory do we need? . . . and we need to prove that Theorem The set K is not semi-computable. (an easy diagonalization proof) . . . and we need to prove that Theorem The set K is semi-computable (but not computable). (also an easy proof). How much computability theory do we need? Now we have all the computability theory we need to prove Gödel’s 1st Incompleteness Theorem (to prove a strong version, we will also need the S-m-n Theorem). How much computability theory do we need? Furthermore, we will need one (or two) lemmas to bridge the gap between computability theory and first-order arithmetic. How much computability theory do we need? Furthermore, we will need one (or two) lemmas to bridge the gap between computability theory and first-order arithmetic. To prove a weak version of Gödel’s theorem, we need . . . Lemma There exists a Σ1 -formula φ(x) such that N |= φ(a) ⇔ a ∈ K How much computability theory do we need? Furthermore, we will need one (or two) lemmas to bridge the gap between computability theory and first-order arithmetic. To prove a weak version of Gödel’s theorem, we need . . . Lemma There exists a Σ1 -formula φ(x) such that N |= φ(a) ⇔ a ∈ K . . . and thus, there exists a Π1 -formula ψ(x), logically equivalent to ¬φ(x), such that N |= ψ(a) ⇔ a ∈ K . How much computability theory do we need? To prove a stronger version, we will also need . . . Lemma The theory N is Σ1 -complete, that is, for any Σ1 -sentence φ, we have N ` φ ⇔ N |= φ . The theory N is more or less Robinson arithmetic. How much computability theory do we need? Let us discuss the proof of the first lemma. (I don’t want to make a computability-theoretic proof of Gödel’s 1st Incompleteness Theorem seem easier than it really is.) The second lemma will also be needed in a traditional proof of Gödel’s 1st Incompleteness Theorem. How much computability theory do we need? To prove the first lemma, we will need . . . (Claim) For any computable function f (x1 , . . . , xn ), there exists a Σ1 -formula φ(x1 , . . . , xn , y ) such that f (a1 , . . . , an ) = b ⇔ N |= φ(a1 , . . . , an , b) . How much computability theory do we need? To prove the first lemma, we will need . . . (Claim) For any computable function f (x1 , . . . , xn ), there exists a Σ1 -formula φ(x1 , . . . , xn , y ) such that f (a1 , . . . , an ) = b ⇔ N |= φ(a1 , . . . , an , b) . The lemma follows straightforwardly from the claim. How much computability theory do we need? To prove the first lemma, we will need . . . (Claim) For any computable function f (x1 , . . . , xn ), there exists a Σ1 -formula φ(x1 , . . . , xn , y ) such that f (a1 , . . . , an ) = b ⇔ N |= φ(a1 , . . . , an , b) . The lemma follows straightforwardly from the claim. We use Kleene recursion. The claim is proved by induction on the structure of f : Case: f the successor function. Case: f the zero function. Case: f a projection function. Case: f is defined by composition. Case: f is defined by primitive recursion. Case: f is defined by minimalization. How much computability theory do we need? All the cases are easy except for the case where f is defined by primitive recursion. How much computability theory do we need? All the cases are easy except for the case where f is defined by primitive recursion. When f is defined by primitive recursion, we need a ∆0 -formula η(x, i, t) which states that t encodes a sequence where the i th element is x How much computability theory do we need? All the cases are easy except for the case where f is defined by primitive recursion. When f is defined by primitive recursion, we need a ∆0 -formula η(x, i, t) which states that t encodes a sequence where the i th element is x The hardest part of the proof is to construct that formula. Incompleteness, Weak Version Now we are ready to state (a weak version) of Gödel’s Theorem. Incompleteness, Weak Version Gödel proved that any consistent formal system that aims to capture a reasonable portion of mathematics will be incomplete. But he could not really provide an informative and natural definition of a formal system! To complete his proofs, he had to specify certain criteria a system must satisfy to be counted as a formal system. These criteria became very technical and made the essence of his marvelous results hard to grasp. Incompleteness, Weak Version In the setting of computability theory, we can formulate the insights buried in the Gödel’s work on incompleteness more naturally and adequately: There is no need to talk about [. . . ] anymore. Instead we can talk about computable sets of formulas – and semi-computable sets of formulas. These are intuitively clear notions. A set of formulas is computable when there is an algorithm for deciding if a formula is in the set. A set of formulas is semi-computable when there is an algorithm for confirming that a formula is in the set. Incompleteness, Weak Version Theorem (Incompleteness, Weak Version) Let A be a set of LNT -axioms such that (1) the set {pηq | A ` η} is semi-computable (2) N |= A. Then, there is a Π1 -sentence θ such that N |= θ and A 6` θ . Proof, Incompleteness, Weak Version We have a Π-formula ψ(x) such that a ∈ K iff N |= ψ(a) Proof, Incompleteness, Weak Version We have a Π-formula ψ(x) such that a ∈ K iff N |= ψ(a) By the Soundness Theorem, we have {a | A ` ψ(a)} ⊆ {a | N |= ψ(a)} = K . (*) Proof, Incompleteness, Weak Version We have a Π-formula ψ(x) such that a ∈ K iff N |= ψ(a) By the Soundness Theorem, we have {a | A ` ψ(a)} ⊆ {a | N |= ψ(a)} = K . The set {a | A ` ψ(a)} is semi-computable (easy to prove). (*) Proof, Incompleteness, Weak Version We have a Π-formula ψ(x) such that a ∈ K iff N |= ψ(a) By the Soundness Theorem, we have {a | A ` ψ(a)} ⊆ {a | N |= ψ(a)} = K . The set {a | A ` ψ(a)} is semi-computable (easy to prove). The set K is not semi-computable. (*) Proof, Incompleteness, Weak Version We have a Π-formula ψ(x) such that a ∈ K iff N |= ψ(a) By the Soundness Theorem, we have {a | A ` ψ(a)} ⊆ {a | N |= ψ(a)} = K . The set {a | A ` ψ(a)} is semi-computable (easy to prove). The set K is not semi-computable. Hence, the inclusion in (*) is strict. (*) Proof, Incompleteness, Weak Version We have a Π-formula ψ(x) such that a ∈ K iff N |= ψ(a) By the Soundness Theorem, we have {a | A ` ψ(a)} ⊆ {a | N |= ψ(a)} = K . (*) The set {a | A ` ψ(a)} is semi-computable (easy to prove). The set K is not semi-computable. Hence, the inclusion in (*) is strict. Hence, for at least one a ∈ N, we have N |= ψ(a) and A 6` ψ(a). QED. Incompleteness, Weak Version Theorem (Incompleteness) Let A be a set of LNT -axioms such that (1) the set {pηq | A ` η} is semi-computable (2) N |= A. Then, there is a Π1 -sentence θ such that N |= θ and A 6` θ . Incompleteness, Medium Version Theorem (Incompleteness) Let A be a set of LNT -axioms such that (1) the set {pηq | A ` η} is semi-computable (2’) A is consistent. Then, there is a Π1 -sentence θ such that N |= θ and A 6` θ . Proof, Incompleteness, Medium Version To prove the medium version, we need the theory N. Proof, Incompleteness, Medium Version To prove the medium version, we need the theory N. This theory is Σ1 -complete, that is, for any Σ1 -sentence φ, we have N ` φ ⇔ N |= φ . Proof, Incompleteness, Medium Version To prove the medium version, we need the theory N. This theory is Σ1 -complete, that is, for any Σ1 -sentence φ, we have N ` φ ⇔ N |= φ . The proofs splits into two cases: A extends N, that is, N ` φ ⇒ A ` φ A does not extend N. Proof, Incompleteness, Medium Version Assume that A does not extend N. Proof, Incompleteness, Medium Version Assume that A does not extend N. The theory N consists of eleven axioms. They are all Π1 -sentences. They are all true in the standard model N. Proof, Incompleteness, Medium Version Assume that A does not extend N. The theory N consists of eleven axioms. They are all Π1 -sentences. They are all true in the standard model N. Among these axioms we find at least one θ such that A 6` θ (otherwise A would extend N). Proof, Incompleteness, Medium Version Assume that A extends N. Proof, Incompleteness, Medium Version Assume that A extends N. Now, A proves all Σ1 -sentences that are true in N. Proof, Incompleteness, Medium Version Assume that A extends N. Now, A proves all Σ1 -sentences that are true in N. Moreover, A is consistent. Proof, Incompleteness, Medium Version Assume that A extends N. Now, A proves all Σ1 -sentences that are true in N. Moreover, A is consistent. It follows (by the Completeness Theorem) that A cannot prove a Π1 -sentences that is false in N. Proof, Incompleteness, Medium Version Assume that A extends N. Now, A proves all Σ1 -sentences that are true in N. Moreover, A is consistent. It follows (by the Completeness Theorem) that A cannot prove a Π1 -sentences that is false in N. Hence, we have the inclusion {a | A ` ψ(a)} ⊆ {a | N |= ψ(a)} = K . (*) Proof, Incompleteness, Medium Version Assume that A extends N. Now, A proves all Σ1 -sentences that are true in N. Moreover, A is consistent. It follows (by the Completeness Theorem) that A cannot prove a Π1 -sentences that is false in N. Hence, we have the inclusion {a | A ` ψ(a)} ⊆ {a | N |= ψ(a)} = K . (*) Now, we can proceed as we did in the proof of the weak version. QED. Incompleteness, Medium Version Theorem (Incompleteness) Let A be a set of LNT -axioms such that (1) the set {pηq | A ` η} is semi-computable (2) A is consistent. Then, there is a Π1 -sentence θ such that N |= θ and A 6` θ . Incompleteness, Medium Version Theorem (Incompleteness) Let A be a set of LNT -axioms such that (1) We = {pηq | A ` η} (2) A is consistent. Then, there is a Π1 -sentence θ such that N |= θ and A 6` θ . Incompleteness, Strong Version Theorem (Incompleteness) Let A be a set of LNT -axioms such that (1) We = {pηq | A ` η} (2) A is consistent. Then, there is a Π1 -sentence θ such that N |= θ and A 6` θ and f (e) = pθq . Incompleteness, Strong Version Theorem (Incompleteness) There exists a primitive recursive function f with the following property: Let A be a set of LNT -axioms such that (1) We = {pηq | A ` η} (2) A is consistent. Then, there is a Π1 -sentence θ such that N |= θ and A 6` θ and f (e) = pθq . Proof, Incompleteness, Strong Version The proof of the strong version is of course an extension of the proof of the medium version. We need the S-m-n Theorem. I will not discuss the details here. Intuition From an intuitive computability-theoretic point of view, Gödel’s First Incompleteness Theorem is an inevitable consequence of the fact that we can define an undecidable set in the LNT -structure N: There is a formula φ(x) such that N |= φ(a) ⇔ a∈K. Intuition From an intuitive computability-theoretic point of view, Gödel’s First Incompleteness Theorem is an inevitable consequence of the fact that we can define an undecidable set in the LNT -structure N: There is a formula φ(x) such that N |= φ(a) ⇔ a∈K. . . . and we can define an undecidable set in any structure where we can represent natural numbers and state that t encodes a sequence where the i th element is x. Intuition Since we can define an undecidable set in N, no semi-decidable set of LNT -axioms will be complete for N. If there were such a set of axioms, we could decide membership in an undecidable set. (We could decide if a is a member of K by enumerating deductions until we encountered a deduction of φ(a) or a deduction of ¬φ(a).) Intuition Since we can define an undecidable set in N, no semi-decidable set of LNT -axioms will be complete for N. If there were such a set of axioms, we could decide membership in an undecidable set. (We could decide if a is a member of K by enumerating deductions until we encountered a deduction of φ(a) or a deduction of ¬φ(a).) . . . and we will have an Incompleteness theorem for any structure where we can represent natural numbers and state that t encodes a sequence where the i th element is x. Intuition Since we can define an undecidable set in N, no semi-decidable set of LNT -axioms will be complete for N. If there were such a set of axioms, we could decide membership in an undecidable set. Intuition Since we can define an undecidable set in N, no semi-decidable set of LNT -axioms will be complete for N. If there were such a set of axioms, we could decide membership in an undecidable set. We could decide if a is a member of K by enumerating deductions until we encountered a deduction of φ(a) or a deduction of ¬φ(a). Intuition Indeed, we will have an Incompleteness theorem for any structure where we can represent natural numbers and state that t encodes a sequence over N where the i th element is x. Example Let ◦ be a binary function symbol, and let 0, 1 and e be constant symbols. Example Let ◦ be a binary function symbol, and let 0, 1 and e be constant symbols. Let LBT be the first-order language {1, 0, e, ◦}. Example Let ◦ be a binary function symbol, and let 0, 1 and e be constant symbols. Let LBT be the first-order language {1, 0, e, ◦}. Let B be the LBT -structure where the universe is is set of all bit strings, that is, the set {0, 1}∗ 0B = 0 1B = 1 e B is the empty string ◦B is the function that concatenate two strings. Example We can represent natural numbers in this structure. Example We can represent natural numbers in this structure. It is possible to encode sequences of natural numbers in the the structure B. (Indeed, this is easier than encoding sequences of natural numbers in the structure N.) Example We can represent natural numbers in this structure. It is possible to encode sequences of natural numbers in the the structure B. (Indeed, this is easier than encoding sequences of natural numbers in the structure N.) Hence, . . . Example Theorem (Incompleteness, Weak Version) Let A be a set of LBT -axioms such that (1) the set {pηq | A ` η} is semi-computable (2) B |= A. Then, there is a LBT -sentence θ such that B |= θ and A 6` θ . Thanks for you attention! Thanks for you attention!