FormalConjectures/ErdosProblems/33.lean

GitHub source file

Explanation legend Lean4 Domain Explanation Language (L4DEL)

L4DEL explanations are a separate layer. They do not change the Lean source. Intuition is explanatory prose; numbered items are a reading path; sources link the wording back to evidence.

L4DEL
Lean4 Domain Explanation Language

Credit: The upstream authors and contributors retain credit for the project and mathematics. lean4-explainer only renders their pinned source and adds the separately disclosed explanation layer.

Project sources: Pinned project documentation, Formal Conjectures paper, arXiv v1

4 declarations, 3 contain sorry, 0 declared as axioms

Erdős Problem 33

Reference: erdosproblems.com/33

Imports (1)
  1. def Erdos33.AdditiveBasisCondition Let A ⊆ ℕ be a set such that every integer can be written as n^2 + a for some a in A and n ≥ 0 line 37 source

    Source documentation

    Let A ⊆ ℕ be a set such that every integer can be written as n^2 + a for some a in A and n ≥ 0.

    standard axioms: propext what this means

    Statement uses: Set, Nat

    Proof uses: Exists, And, Membership.mem, Eq, HAdd.hAdd, HPow.hPow, OfNat.ofNat

    8 instances, coercions and auxiliary constants left out.

    def AdditiveBasisCondition (A : Set ℕ) : Prop :=
    …
  2. theorem Erdos33.erdos_33 Let A ⊆ ℕ be a set such that every integer can be written as n^2 + a for some a in A and n ≥ 0 sorry line 45 source

    Source documentation

    Let A ⊆ ℕ be a set such that every integer can be written as n^2 + a for some a in A and n ≥ 0. What is the smallest possible value of lim sup n → ∞ |A ∩ {1, …, N}| / N^(1/2)?

    depends on sorry what this means

    Statement uses: Eq, EReal, iInf, Set, Nat, Set.ofPred, Erdos33.AdditiveBasisCondition, Filter.limsup, HDiv.hDiv, Set.ncard, Inter.inter, Membership.mem, Set.Icc, OfNat.ofNat, Real.sqrt, Real, Filter.atTop, sorryAx, Lean.Name, Bool.false and 3 more

    40 instances, coercions and auxiliary constants left out.

    Tactic trace: 1 steps

    Open to load the checked before-and-after goal states.

    theorem erdos_33 : ⨅ A : {A : Set ℕ | AdditiveBasisCondition A}, Filter.atTop.limsup (fun N =>
        (A.1 ∩ Icc 1 N).ncard / (√N : EReal)) = answer(sorry) := by
    …

    Mentions: Erdos33.AdditiveBasisCondition

  3. theorem Erdos33.erdos_33.variants.one_mem_lowerBounds Erdos observed that this value is finite and > 1 sorry line 55 source

    Source documentation

    Erdos observed that this value is finite and > 1. This records the lower bound > 1, i.e. that 1 is a strict lower bound for every admissible A; the finiteness is erdos_33.variants.vanDoorn.

    depends on sorry what this means

    Statement uses: LT.lt, EReal, OfNat.ofNat, iInf, Set, Nat, Set.ofPred, Erdos33.AdditiveBasisCondition, Filter.limsup, HDiv.hDiv, Set.ncard, Inter.inter, Membership.mem, Set.Icc, Real.sqrt, Real, Filter.atTop

    Proof uses: sorryAx, Lean.Name, Bool.false, Lean.Name.num, Lean.Name.str, Lean.Name.anonymous

    50 instances, coercions and auxiliary constants left out.

    Tactic trace: 1 steps

    Open to load the checked before-and-after goal states.

    theorem erdos_33.variants.one_mem_lowerBounds :
        1 < ⨅ A : {A : Set ℕ | AdditiveBasisCondition A}, Filter.atTop.limsup (fun N =>
          (A.1 ∩ Icc 1 N).ncard / (√N : EReal)) := by
    …

    Mentions: Erdos33.AdditiveBasisCondition

  4. theorem Erdos33.erdos_33.variants.vanDoorn The smallest possible value of lim sup n → ∞ |A ∩ {1, …, N}| / N^(1/2) is at most 2φ^(5/2) ≈ 6.66, with φ equal to the golden ratio sorry line 66 source

    Source documentation

    The smallest possible value of lim sup n → ∞ |A ∩ {1, …, N}| / N^(1/2) is at most 2φ^(5/2) ≈ 6.66, with φ equal to the golden ratio. Proven by Wouter van Doorn.

    depends on sorry what this means

    Statement uses: LE.le, EReal, iInf, Set, Nat, Set.ofPred, Erdos33.AdditiveBasisCondition, Filter.limsup, HDiv.hDiv, Set.ncard, Inter.inter, Membership.mem, Set.Icc, OfNat.ofNat, Real.sqrt, Real, Filter.atTop, HMul.hMul, HPow.hPow, Real.goldenRatio

    Proof uses: sorryAx, Lean.Name, Bool.false, Lean.Name.num, Lean.Name.str, Lean.Name.anonymous

    62 instances, coercions and auxiliary constants left out.

    Tactic trace: 1 steps

    Open to load the checked before-and-after goal states.

    theorem erdos_33.variants.vanDoorn :
        ⨅ A : {A : Set ℕ | AdditiveBasisCondition A}, Filter.atTop.limsup (fun N =>
        (A.1 ∩ Icc 1 N).ncard / (√N : EReal)) ≤ ↑(2 * (φ ^ ((5 : ℝ) / 2))) := by
    …

    Mentions: Erdos33.AdditiveBasisCondition