Big operators and Fin #
Some results about products and sums over the type Fin.
The most important results are the induction formulas Fin.prod_univ_castSucc
and Fin.prod_univ_succ, and the formula Fin.prod_const for the product of a
constant function. These results have variants for sums instead of products.
Main declarations #
finFunctionFinEquiv: An explicit equivalence betweenFin n → Fin mandFin (m ^ n).
Alias of Fin.sum_univ_getElem.
Alias of Fin.prod_univ_getElem.
Alias of Fin.sum_univ_fun_getElem.
Alias of Fin.prod_univ_fun_getElem.
Products over intervals: Fin.castLE #
Products over intervals: Fin.castAdd #
Products over intervals: Fin.castSucc #
For f = (a₁, ..., aₙ) in αⁿ, partialProd f is (1, a₁, a₁a₂, ..., a₁...aₙ) in αⁿ⁺¹.
Equations
- Fin.partialProd f i = (List.take (↑i) (List.ofFn f)).prod
Instances For
For f = (a₁, ..., aₙ) in αⁿ, partialSum f is
(0, a₁, a₁ + a₂, ..., a₁ + ... + aₙ) in αⁿ⁺¹.
Equations
- Fin.partialSum f i = (List.take (↑i) (List.ofFn f)).sum
Instances For
Let (g₀, g₁, ..., gₙ) be a tuple of elements in Gⁿ⁺¹.
Then if k < j, this says (g₀g₁...gₖ₋₁)⁻¹ * g₀g₁...gₖ = gₖ.
If k = j, it says (g₀g₁...gₖ₋₁)⁻¹ * g₀g₁...gₖ₊₁ = gₖgₖ₊₁.
If k > j, it says (g₀g₁...gₖ)⁻¹ * g₀g₁...gₖ₊₁ = gₖ₊₁.
Useful for defining group cohomology.
Let (g₀, g₁, ..., gₙ) be a tuple of elements in Gⁿ⁺¹.
Then if k < j, this says -(g₀ + g₁ + ... + gₖ₋₁) + (g₀ + g₁ + ... + gₖ) = gₖ.
If k = j, it says -(g₀ + g₁ + ... + gₖ₋₁) + (g₀ + g₁ + ... + gₖ₊₁) = gₖ + gₖ₊₁.
If k > j, it says -(g₀ + g₁ + ... + gₖ) + (g₀ + g₁ + ... + gₖ₊₁) = gₖ₊₁.
Useful for defining group cohomology.
finSigmaFinEquiv on Fin 1 × f is just f