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).
A sum of a function f : Fin 0 โ M is 0 because Fin 0 is empty
A product of a function f : Fin (n + 1) โ M over all Fin (n + 1)
is the product of f (Fin.last n) times the remaining product
A sum of a function f : Fin (n + 1) โ M over all Fin (n + 1) is the sum of
f (Fin.last n) plus the remaining sum
Products over intervals: Fin.castLE #
Products over intervals: Fin.castAdd #
Products over intervals: Fin.castSucc #
The product of g i j over i j : Fin (n + 1), i โ j,
is equal to the product of g i j * g j i over i < j.
The additive version of this lemma is useful for some proofs about differential forms.
In this application, the function has the signature f : Fin (n + 1) โ Fin n โ M,
where f i j means g i (Fin.succAbove i j) in the informal statements.
Similarly, the product of g i j * g j i over i < j
is written as f (Fin.castSucc i) j * f (Fin.succ j) i over i j : Fin n, j โฅ i.
The sum of g i j over i j : Fin (n + 1), i โ j,
is equal to the sum of g i j + g j i over i < j.
This lemma is useful for some proofs about differential forms.
In this application, the function has the signature f : Fin (n + 1) โ Fin n โ M,
where f i j means g i (Fin.succAbove i j) in the informal statements.
Similarly, the sum of g i j + g j i over i < j
is written as f (Fin.castSucc i) j + f (Fin.succ j) i over i j : Fin n, j โฅ i.
For f = (aโ, ..., aโ) in ฮฑโฟ, partialProd f is (1, aโ, aโaโ, ..., aโ...aโ) in ฮฑโฟโบยน.
Equations
Instances For
For f = (aโ, ..., aโ) in ฮฑโฟ, partialSum f is
(0, aโ, aโ + aโ, ..., aโ + ... + aโ) in ฮฑโฟโบยน.
Equations
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