FormalConjectures/OEIS/108081.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, 1 contain sorry, 0 declared as axioms

$a(n) = \sum_{i=0}^n \binom{2n-i}{n+i}$

Alternatively the sequence a can be defined as $a(n) = \sum_{k=0}^n \binom{n+k-1}{k} F(n-k+1)$, where $F(m)$ is the $m$-th Fibonacci number. We formalize a conjecture about the number of words of length $n$ in a set $X$ being related to this sequence.

References:

Imports (1)
  1. def OeisA108081.a The primary defining sequence a line 40 source

    Source documentation

    The primary defining sequence a. $a(n) = \sum_{k=0}^n \binom{n+k-1}{k} F(n-k+1)$, where $F(m)$ is the $m$-th Fibonacci number.

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

    Statement uses: Nat

    Proof uses: Finset.sum, Finset.range, HAdd.hAdd, OfNat.ofNat, HMul.hMul, Nat.choose, HSub.hSub, Nat.fib

    8 instances, coercions and auxiliary constants left out.

    def a (n : ℕ) : ℕ :=
    …
  2. theorem OeisA108081.a_0 Term theorems verifying the first few values of the sequence against the official OEIS b-file line 45 source

    Source documentation

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

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

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

    Proof uses: of_decide_eq_true, id, Bool, Decidable.decide, Bool.true, Eq.refl

    3 instances, coercions and auxiliary constants left out.

    Tactic trace: 1 steps

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

    theorem a_0 : a 0 = 1 := by decide
    …

    Mentions: OeisA108081.a

  3. theorem OeisA108081.a_1 line 48 source

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

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

    Proof uses: of_decide_eq_true, id, Bool, Decidable.decide, Bool.true, Eq.refl

    3 instances, coercions and auxiliary constants left out.

    Tactic trace: 1 steps

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

  4. theorem OeisA108081.a_2 line 51 source

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

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

    Proof uses: of_decide_eq_true, id, Bool, Decidable.decide, Bool.true, Eq.refl

    3 instances, coercions and auxiliary constants left out.

    Tactic trace: 1 steps

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

  5. theorem OeisA108081.a_3 line 54 source

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

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

    Proof uses: of_decide_eq_true, id, Bool, Decidable.decide, Bool.true, Eq.refl

    3 instances, coercions and auxiliary constants left out.

    Tactic trace: 1 steps

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

  6. theorem OeisA108081.a_4 line 57 source

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

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

    Proof uses: of_decide_eq_true, id, Bool, Decidable.decide, Bool.true, Eq.refl

    3 instances, coercions and auxiliary constants left out.

    Tactic trace: 1 steps

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

  7. abbrev OeisA108081.Word Words are finite sequences of integers line 60 source

    Source documentation

    Words are finite sequences of integers.

    no axioms what this means

    Proof uses: List, Int

    abbrev Word := List ℤ
  8. def OeisA108081.l l w is the word obtained by reversing w and subtracting 1 from every term line 63 source

    Source documentation

    l w is the word obtained by reversing w and subtracting 1 from every term.

    no axioms what this means

    Statement uses: OeisA108081.Word

    Proof uses: List.map, Int, HSub.hSub, OfNat.ofNat, List.reverse

    3 instances, coercions and auxiliary constants left out.

    def l (w : Word) : Word :=
    …

    Mentions: OeisA108081.Word

  9. def OeisA108081.r r w is the word obtained by reversing w and adding 1 to every term line 67 source

    Source documentation

    r w is the word obtained by reversing w and adding 1 to every term.

    no axioms what this means

    Statement uses: OeisA108081.Word

    Proof uses: List.map, Int, HAdd.hAdd, OfNat.ofNat, List.reverse

    3 instances, coercions and auxiliary constants left out.

    def r (w : Word) : Word :=
    …

    Mentions: OeisA108081.Word

  10. inductive OeisA108081.XWord XWord is the smallest set of words satisfying the inductive properties described in A108081 line 73 source

    Source documentation

    XWord is the smallest set of words satisfying the inductive properties described in A108081.

    no axioms what this means

    Statement uses: OeisA108081.Word

    inductive XWord : Word → Prop
      | base : XWord [0]
      | step_left {u v : Word} (hu : XWord u) (hv : XWord v) : XWord (l u ++ v)
      | step_right {u v : Word} (hu : XWord u) (hv : XWord v) : XWord (u ++ r v)
    
    /-- `xN n` is the set of words in `XWord` of length `n`. -/

    Mentions: OeisA108081.Word, OeisA108081.l, OeisA108081.r, OeisA108081.xN

  11. def OeisA108081.xN xN n is the set of words in XWord of length n line 79 source

    Source documentation

    xN n is the set of words in XWord of length n.

    no axioms what this means

    Statement uses: Nat, Set, OeisA108081.Word

    Proof uses: Set.ofPred, And, OeisA108081.XWord, Eq, List.length, Int

    def xN (n : ℕ) : Set Word :=
    …

    Mentions: OeisA108081.Word

  12. theorem OeisA108081.count_words_in_x_is_a_shifted sorry line 95 source

    depends on sorry what this means

    Statement uses: Nat, GE.ge, OfNat.ofNat, Eq, Set.ncard, OeisA108081.Word, OeisA108081.xN, OeisA108081.a, HSub.hSub

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

    8 instances, coercions and auxiliary constants left out.

    Tactic trace: 1 steps

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