Multiple-zeta indices
DefinitionMultiple-zeta index#✓fully proved
An index is a finite sequence \((k_1, \ldots, k_r)\) of positive integers with \(r \ge 0\), so the empty sequence is allowed. It is represented as a natural number \(n\) together with a composition of \(n\), that is, a sequence of positive integers with sum \(n\).
def Index : Type :=
Σ _n : Nat, Composition _n
Sources
- clause D1 (
2608.10675:D01,2307.09867:D01).
Used by 39
DefinitionEntries of an index#✓fully proved
The entries of an index \((k_1, \ldots, k_r)\) form the list \([k_1, \ldots, k_r]\) of its terms, in order.
def Index.entries : Index → List Nat
| ⟨_, c⟩ => c.blocks
def Index : Type :=
Σ _n : Nat, Composition _n
MathlibExt/NumberTheory/MultipleZeta/Index.lean:45
Sources
- clause D2 (
2608.10675:D01,2307.09867:D01).
Uses 1 · Used by 9
DefinitionWeight of an index#✓fully proved
The weight of an index \((k_1, \ldots, k_r)\) is the sum \(k_1 + \cdots + k_r\) of its entries.
def Index.weight : Index → Nat
| ⟨n, _⟩ => n
def Index : Type :=
Σ _n : Nat, Composition _n
MathlibExt/NumberTheory/MultipleZeta/Index.lean:45
Sources
- clause D3 (
2307.09867:D01).
Uses 1
DefinitionDepth of an index#✓fully proved
The depth of an index \((k_1, \ldots, k_r)\) is its number of entries \(r\).
def Index.depth : Index → Nat
| ⟨_, c⟩ => Composition.length c
def Index : Type :=
Σ _n : Nat, Composition _n
MathlibExt/NumberTheory/MultipleZeta/Index.lean:45
Sources
- clause D4 (
2608.10675:D01,2307.09867:D01).
Uses 1 · Used by 21
DefinitionHeight of an index#✓fully proved
The height of an index \((k_1, \ldots, k_r)\) is the number of positions \(i\) with \(1 \le i \le r\) and \(k_i \ge 2\).
def Index.height : Index → Nat
| ⟨_, c⟩ => (c.blocks.filter (· ≥ 2)).length
def Index : Type :=
Σ _n : Nat, Composition _n
MathlibExt/NumberTheory/MultipleZeta/Index.lean:45
Sources
- clause D5 (
2307.09867:D01).
Uses 1
DefinitionAdmissible index#✓fully proved
An index \((k_1, \ldots, k_r)\) is admissible when it is nonempty (\(r \ge 1\)) and its first entry satisfies \(k_1 \ge 2\).
def Index.IsAdmissible : Index → Prop
| ⟨_, c⟩ =>
match c.blocks with
| [] => False
| h :: _ => 2 ≤ h
def Index : Type :=
Σ _n : Nat, Composition _n
MathlibExt/NumberTheory/MultipleZeta/Index.lean:45
Sources
- clause D6 (
2307.09867:D01).
Uses 1 · Used by 11
DefinitionAdmissible list#✓fully proved
A list \([k_1, \ldots, k_r]\) of natural numbers is admissible when it is nonempty (\(r \ge 1\)), \(k_1 \ge 2\), and \(k_i > 0\) for every \(i\) with \(2 \le i \le r\).
This is the admissibility condition for multiple-zeta indices in decreasing summation order.
Sources
2307.09867:D01.
Used by 6
TheoremAdmissibility of an index via its entries#✓fully proved
An index is admissible if and only if the list of its entries is an admissible list.
theorem Index.isAdmissible_iff (index : Index) :
index.IsAdmissible ↔ MetaMathlibExt.MultipleZeta.IsAdmissible index.entries
def Index : Type :=
Σ _n : Nat, Composition _n
MathlibExt/NumberTheory/MultipleZeta/Index.lean:45
def IsAdmissible : List ℕ → Prop
| [] => False
| h :: t => 2 ≤ h ∧ ∀ x ∈ t, 0 < x
MathlibExt/NumberTheory/MultipleZeta/Index.lean:79
Uses 4 · Used by 4
DefinitionHoffman block#✓fully proved
For a positive integer \(k\), the Hoffman block \(z_k = x^{k-1} y\) is the word in the free monoid on two letters \(x\) and \(y\) consisting of \(k - 1\) copies of \(x\) followed by one \(y\).
The free monoid is taken on the booleans, with false standing for \(x\) and true for \(y\).
def hoffmanBlock (k : PNat) : FreeMonoid Bool :=
FreeMonoid.ofList (List.replicate (k.val - 1) false ++ [true])
Sources
2307.09867:D05.
TheoremHoffman block as a list#✓fully proved
For every positive integer \(k\), the list of letters of the Hoffman block \(z_k\) consists of \(k - 1\) copies of \(x\) (false) followed by one \(y\) (true).
@[simp]
theorem toList_hoffmanBlock (k : PNat) :
FreeMonoid.toList (hoffmanBlock k) =
List.replicate (k.val - 1) false ++ [true]
def hoffmanBlock (k : PNat) : FreeMonoid Bool :=
FreeMonoid.ofList (List.replicate (k.val - 1) false ++ [true])
MathlibExt/NumberTheory/MultipleZeta/Index.lean:109
Uses 1 · Used by 2
Loading dependency explorer…
The dependency explorer needs JavaScript and its graph data.