All proofs
Project-declaredLean 4.32.1 · mathlib@520045ab

Incomplete

LO.FirstOrder.Arithmetic.incomplete

Project documentation

Gödel's first incompleteness theorem

Exact Lean statement

theorem incomplete (T : ArithmeticTheory) [T.Δ₁] [𝗥₀ ⪯ T] [T.SoundOnHierarchy 𝚺 1] :
    Incomplete T

Formal artifact

Lean source

Canonical source
Full Lean sourceLean 4
theorem incomplete (T : ArithmeticTheory) [T.Δ₁] [𝗥₀ ⪯ T] [T.SoundOnHierarchy 𝚺 1] :    Incomplete T := by  have con : Consistent T := inferInstance  let D :   Prop := fun φ :      IsSemiformula ℒₒᵣ 1 φ  Provable T (neg ℒₒᵣ <| subst ℒₒᵣ ?[numeral φ] φ)  have D_re : REPred D := by    have : 𝚺₁-Predicate fun φ :          IsSemiformula ℒₒᵣ 1 φ  Provable T (neg ℒₒᵣ <| subst ℒₒᵣ ?[numeral φ] φ) := by      definability    exact rePred_iff_sigma1.mpr this  have D_spec (φ : ArithmeticSemisentence 1) : D ⌜φ⌝  T  ∼φ/[⌜φ⌝] := by    simp [D, provable_iff_provable, Sentence.quote_def,      Rewriting.emb_subst_eq_subst_coe₁, Semiformula.quote_def]  let δ : ArithmeticSemisentence 1 := codeOfREPred D  have (n : ) : D n  T  δ/[↑n] := by    simpa [Semiformula.coe_subst_eq_subst_coe₁] using rePred_weak_representation D_re  let π : ArithmeticSentence := δ/[⌜δ⌝]  have : T  π  T  ∼π := calc    T  π  T  δ/[⌜δ⌝]  := by rfl    _      D ⌜δ⌝        := by simpa using (this ⌜δ⌝).symm    _      T  ∼δ/[⌜δ⌝] := D_spec δ    _      T  ∼π       := by rfl  refine incomplete_def.mpr π, ?_, ?_  · intro h    exact not_consistent_iff_inconsistent.mpr      (inconsistent_of_provable_of_unprovable h (this.mp h)) inferInstance  · intro h    exact not_consistent_iff_inconsistent.mpr      (inconsistent_of_provable_of_unprovable (this.mpr h) h) inferInstance
Project
Foundation
License
Apache-2.0
Commit
8dcdb3196454
Source
Foundation/FirstOrder/Incompleteness/First.lean:16-44

Reuse this declaration

Bring the exact result into your workflow

The import identifies the source module. Your project still needs the pinned package dependency shown on this page.

What this badge means

This completion status comes from the project or community source. It has not yet been represented here as an independent rebuild and axiom audit.

Continue in this project

Related declarations

Project-declaredLean 4.32.1

Computable Pred iff decoded pred

ComputablePred.iff_decoded_pred

Plain-language statement

Computability of a predicate on a Primcodable type is equivalent to the computability of the corresponding predicate on obtained by decoding.

formal logicmetatheoryproof theory

Source project: Foundation

Person-level attribution pending.

View proof record
Project-declaredLean 4.32.1

Bv quote fixitr

LO.FirstOrder.Arithmetic.Bootstrapping.bv_quote_fixitr

Plain-language statement

bv-pin bridge (over ℕ): bv ⌜fixitr 0 (fvSup χ) ▹ χ⌝ = fvSup χ. - is immediate from quote_univCl_eq + bv_qqAlls (closing fvSup quantifiers reaches a sentence, whose bv is 0). - is by level-factoring: were the body an IsSemiformula j for some j < fvSup, IsSemiformula.sound + castLE-invariance would re-express χ as `γ ⇜ ![...

formal logicmetatheoryproof theory

Source project: Foundation

Person-level attribution pending.

View proof record
Project-declaredLean 4.32.1

Conj

LO.FirstOrder.Arithmetic.Bootstrapping.Derivable.conj

Plain-language statement

Crucial inducion for formalized Σ1\Sigma_1-completeness.

formal logicmetatheoryproof theory

Source project: Foundation

Person-level attribution pending.

View proof record