FormalConjectures/OEIS/105210.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

12 declarations, 2 contain sorry, 0 declared as axioms

Conjectures associated with A105210

$a(1) = 393$; for $n > 1$, $a(n) = a(n-1)$ + 1 + sum of distinct prime factors of $a(n-1)$ that are $< a(n-1)$.

References:

Imports (1)
  1. def OeisA105210.sumRelevantPrimeFactors The sum of distinct prime factors of $n$ that are strictly less than $n$ line 37 source

    Source documentation

    The sum of distinct prime factors of $n$ that are strictly less than $n$.

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

    Statement uses: Nat

    Proof uses: Finset.sum, Nat.primeFactors, ite, LT.lt, OfNat.ofNat

    4 instances, coercions and auxiliary constants left out.

    def sumRelevantPrimeFactors (n : ℕ) : ℕ :=
    …
  2. def OeisA105210.a The primary defining sequence a line 43 source

    Source documentation

    The primary defining sequence a. $a(1) = 393$; for $n > 1$, $a(n)$ = $a(n-1)$ + 1 + sum of distinct prime factors of $a(n-1)$ that are < $a(n-1)$.

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

    Statement uses: Nat

    Proof uses: WellFounded.Nat.fix, InvImage, LT.lt, OeisA105210.a.match_1, Unit, OfNat.ofNat, Nat.succ, HAdd.hAdd, OeisA105210.sumRelevantPrimeFactors

    5 instances, coercions and auxiliary constants left out.

    def a : ℕ → ℕ
    | 0 => 0
    | 1 => 393
    | n + 2 =>
      let aPrev := a (n + 1)
    …
  3. theorem OeisA105210.a_1 Term theorems verifying the first few values of the sequence against the official OEIS b-file line 53 source

    Source documentation

    Term theorems verifying the first few values of the sequence against the official OEIS b-file

    extra axioms: _private.0.OeisA105210.a_1._native.native_decide.ax_1 what this means

    Statement uses: Eq, Nat, OeisA105210.a, OfNat.ofNat

    Proof uses: of_decide_eq_true

    4 instances, coercions and auxiliary constants left out.

    Tactic trace: 1 steps

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

    theorem a_1 : a 1 = 393 := by native_decide
    …

    Mentions: OeisA105210.a

  4. theorem OeisA105210.a_2 line 56 source

    extra axioms: _private.0.OeisA105210.a_2._native.native_decide.ax_1 what this means

    Statement uses: Eq, Nat, OeisA105210.a, OfNat.ofNat

    Proof uses: of_decide_eq_true

    4 instances, coercions and auxiliary constants left out.

    Tactic trace: 1 steps

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

  5. theorem OeisA105210.a_3 line 59 source

    extra axioms: _private.0.OeisA105210.a_3._native.native_decide.ax_1 what this means

    Statement uses: Eq, Nat, OeisA105210.a, OfNat.ofNat

    Proof uses: of_decide_eq_true

    4 instances, coercions and auxiliary constants left out.

    Tactic trace: 1 steps

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

  6. theorem OeisA105210.a_4 line 62 source

    extra axioms: _private.0.OeisA105210.a_4._native.native_decide.ax_1 what this means

    Statement uses: Eq, Nat, OeisA105210.a, OfNat.ofNat

    Proof uses: of_decide_eq_true

    4 instances, coercions and auxiliary constants left out.

    Tactic trace: 1 steps

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

  7. theorem OeisA105210.a_5 line 65 source

    extra axioms: _private.0.OeisA105210.a_5._native.native_decide.ax_1 what this means

    Statement uses: Eq, Nat, OeisA105210.a, OfNat.ofNat

    Proof uses: of_decide_eq_true

    4 instances, coercions and auxiliary constants left out.

    Tactic trace: 1 steps

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

  8. def OeisA105210.nextTermFn The transition function for these sequences: $f(n) = n + 1 + S(n)$ line 68 source

    Source documentation

    The transition function for these sequences: $f(n) = n + 1 + S(n)$.

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

    Statement uses: Nat

    Proof uses: HAdd.hAdd, OfNat.ofNat, OeisA105210.sumRelevantPrimeFactors

    3 instances, coercions and auxiliary constants left out.

    def nextTermFn (n : ℕ) : ℕ :=
    …
  9. def OeisA105210.sequenceStartingAt The sequence starting at positive integer $k$, where seq $k$ $n$ is the $n$-th term (1-indexed) line 73 source

    Source documentation

    The sequence starting at positive integer $k$, where seq $k$ $n$ is the $n$-th term (1-indexed). This is the general form of the sequence A105210 for a starting value $k$.

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

    Statement uses: Nat

    Proof uses: WellFounded.Nat.fix, InvImage, LT.lt, OeisA105210.sequenceStartingAt.match_1, Unit, OfNat.ofNat, Nat.succ, OeisA105210.nextTermFn

    3 instances, coercions and auxiliary constants left out.

    def sequenceStartingAt (k : ℕ) : ℕ → ℕ
    | 0 => 0
    | 1 => k
    | n + 1 => nextTermFn (sequenceStartingAt k n)
    termination_by n => n
    
    /-- The set of all terms generated by the sequence starting at $k$. -/

    Mentions: OeisA105210.nextTermFn

  10. def OeisA105210.sequenceSet The set of all terms generated by the sequence starting at $k$ line 80 source

    Source documentation

    The set of all terms generated by the sequence starting at $k$.

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

    Statement uses: Nat, Set

    Proof uses: Set.ofPred, Exists, And, LE.le, OfNat.ofNat, Eq, OeisA105210.sequenceStartingAt

    2 instances, coercions and auxiliary constants left out.

    def sequenceSet (k : ℕ) : Set ℕ :=
    …
  11. theorem OeisA105210.conjecture_disjoint_starting_values Cormier and Selfridge found 5 starting values for which the sequences appear to not merge sorry line 88 source

    Source documentation

    Cormier and Selfridge found 5 starting values for which the sequences appear to not merge. The sequences were checked up to 10^8.

    depends on sorry what this means

    Statement uses: Nat, Membership.mem, Set, Insert.insert, OfNat.ofNat, Singleton.singleton, Ne, Eq, Inter.inter, OeisA105210.sequenceSet, EmptyCollection.emptyCollection

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

    12 instances, coercions and auxiliary constants left out.

    Tactic trace: 1 steps

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

    theorem conjecture_disjoint_starting_values :
        ∀ j k : ℕ,
          j ∈ ({1, 393, 412, 668, 932} : Set ℕ) →
          k ∈ ({1, 393, 412, 668, 932} : Set ℕ) →
          j ≠ k →
          sequenceSet j ∩ sequenceSet k = ∅ := by
    …

    Mentions: OeisA105210.sequenceSet

  12. theorem OeisA105210.conjecture This suggests that there may be infinitely many different (non-merging) sequences obtained by choosing different starting values sorry line 101 source

    Source documentation

    This suggests that there may be infinitely many different (non-merging) sequences obtained by choosing different starting values.

    depends on sorry what this means

    Statement uses: Exists, Set, Nat, And, Set.Infinite, Membership.mem, LE.le, OfNat.ofNat, Ne, Eq, Inter.inter, OeisA105210.sequenceSet, EmptyCollection.emptyCollection

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

    10 instances, coercions and auxiliary constants left out.

    Tactic trace: 1 steps

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

    theorem conjecture :
      ∃ K : Set ℕ,
        Set.Infinite K ∧
        (∀ k ∈ K, 1 ≤ k) ∧
        (∀ j k : ℕ,
          j ∈ K → k ∈ K → j ≠ k →
          sequenceSet j ∩ sequenceSet k = ∅) := by
    …

    Mentions: OeisA105210.sequenceSet