FormalConjectures/ErdosProblems/375.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

6 declarations, 3 contain sorry, 0 declared as axioms

Erdős Problem 375

References:

Imports (2)
  1. def Erdos375.Erdos375Prop This is a proposition saying that for any n ≥ 1 and any k, if n + 1, ..., n + k are all composite, then there are distinct primes `p₁, line 42 source

    Source documentation

    This is a proposition saying that for any n ≥ 1 and any k, if n + 1, ..., n + k are all composite, then there are distinct primes p₁, ... pₖ such that pᵢ ∣ n + i for all 1 ≤ i ≤ k.

    standard axioms: propext what this means

    Proof uses: Nat, GE.ge, OfNat.ofNat, LT.lt, Not, Nat.Prime, HAdd.hAdd, Exists, Fin, And, Function.Injective, Dvd.dvd

    7 instances, coercions and auxiliary constants left out.

    def Erdos375Prop : Prop := ∀ n ≥ 1, ∀ k, (∀ i < k, ¬ (n + i + 1).Prime) →
    …
  2. theorem Erdos375.erdos_375 Is Erdos375Prop true? sorry line 47 source

    Source documentation

    Is Erdos375Prop true?

    depends on sorry what this means

    Statement uses: Iff, True, Erdos375.Erdos375Prop

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

    1 instances, coercions and auxiliary constants left out.

    Tactic trace: 1 steps

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

    theorem erdos_375 : answer(sorry) ↔ Erdos375Prop := by
    …

    Mentions: Erdos375.Erdos375Prop

  3. theorem Erdos375.erdos_375.variants.bounded_gap If Erdos375Prop is true, then (n + 1).nth Prime - n.nth Prime < (n.nth Prime) ^ (1 / 2 - c) for some c > 0 sorry line 53 source

    Source documentation

    If Erdos375Prop is true, then (n + 1).nth Prime - n.nth Prime < (n.nth Prime) ^ (1 / 2 - c) for some c > 0.

    depends on sorry what this means

    Statement uses: Erdos375.Erdos375Prop, Exists, Real, And, GT.gt, OfNat.ofNat, Filter.Eventually, Nat, LT.lt, HSub.hSub, Nat.nth, Nat.Prime, HAdd.hAdd, HPow.hPow, HDiv.hDiv, Filter.atTop

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

    42 instances, coercions and auxiliary constants left out.

    Tactic trace: 1 steps

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

    theorem erdos_375.variants.bounded_gap : Erdos375Prop →
        ∃ c > 0, ∀ᶠ n in atTop, (n + 1).nth Nat.Prime - n.nth Nat.Prime
        < (n.nth Nat.Prime : ℝ) ^ (1 / (2 : ℝ) - c) := by
    …

    Mentions: Erdos375.Erdos375Prop, c

  4. theorem Erdos375.erdos_375.variants.legendre In particular, if Erdos375Prop is true, then Legendre's conjecture is asymptotically true line 60 source

    Source documentation

    In particular, if Erdos375Prop is true, then Legendre's conjecture is asymptotically true.

    depends on sorry what this means

    Statement uses: Erdos375.Erdos375Prop, Filter.Eventually, Nat, Exists, And, Membership.mem, Set, Set.Ioo, HPow.hPow, OfNat.ofNat, HAdd.hAdd, Nat.Prime, Filter.atTop

    Proof uses: LegendreConjecture.bounded_gap_legendre, Erdos375.erdos_375.variants.bounded_gap

    9 instances, coercions and auxiliary constants left out.

    theorem erdos_375.variants.legendre : Erdos375Prop →
        (∀ᶠ n in atTop, ∃ p ∈ Set.Ioo (n ^ 2) ((n + 1) ^ 2), Nat.Prime p) :=
    …

    Mentions: Erdos375.Erdos375Prop

  5. theorem Erdos375.erdos_375.variants.le_two It is easy to see that for any n ≥ 1 and k ≤ 2, if n + 1, ..., n + k are all composite, then there are distinct primes `p₁, line 67 source

    Source documentation

    It is easy to see that for any n ≥ 1 and k ≤ 2, if n + 1, ..., n + k are all composite, then there are distinct primes p₁, ... pₖ such that pᵢ ∣ n + i for all 1 ≤ i ≤ k.

    standard axioms: Classical.choice, Quot.sound, propext what this means

    Statement uses: Nat, GE.ge, OfNat.ofNat, LE.le, LT.lt, Not, Nat.Prime, HAdd.hAdd, Exists, Fin, And, Function.Injective, Dvd.dvd

    Proof uses: dite, Exists.intro, And.intro, Eq, Decidable.byContradiction, Or, False, Classical.em, Ne, List, List.Mem, List.finRange, HEq, Membership.mem, Finset, Fintype.elems, Fintype.complete, List.cons, List.Mem.head, Fin.mk and 95 more

    132 instances, coercions and auxiliary constants left out.

    Tactic trace: 30 steps

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

    theorem erdos_375.variants.le_two : ∀ n ≥ 1, ∀ k ≤ 2, (∀ i < k, ¬ (n + i + 1).Prime) →
        ∃ p : Fin k → ℕ, p.Injective ∧ ∀ i, (p i).Prime ∧ p i ∣ n + i + 1 := by
    …
  6. theorem Erdos375.erdos_375.variants.log There exists a constant c > 0 such that for all n, if k < c * (log n / (log (log n))) ^ 3 → (∀ i < k, ¬ (n + i + 1).Prime), then there are distinct primes `p₁, sorry line 91 source

    Source documentation

    There exists a constant c > 0 such that for all n, if k < c * (log n / (log (log n))) ^ 3 → (∀ i < k, ¬ (n + i + 1).Prime), then there are distinct primes p₁, ... pₖ such that pᵢ ∣ n + i for all 1 ≤ i ≤ k. This is proved in [RST75]. There is no need to only consider sufficiently large n because one can always take c small enough so that k < c * (log n / (log (log n))) ^ 3 implies that k = 0 until n is large.

    depends on sorry what this means

    Statement uses: Exists, Real, And, GT.gt, OfNat.ofNat, Nat, LT.lt, HMul.hMul, HPow.hPow, HDiv.hDiv, Real.log, Not, Nat.Prime, HAdd.hAdd, Fin, Function.Injective, Dvd.dvd

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

    40 instances, coercions and auxiliary constants left out.

    Tactic trace: 1 steps

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

    theorem erdos_375.variants.log : ∃ c > 0, ∀ n k : ℕ,
        k < c * (Real.log n / (Real.log (Real.log n))) ^ 3 → (∀ i < k, ¬ (n + i + 1).Prime) →
        ∃ p : Fin k → ℕ, p.Injective ∧ ∀ i, (p i).Prime ∧ p i ∣ n + i + 1 := by
    …

    Mentions: c