Evaluating the decomposition of a group into cosets and a subgroup #
For a subgroup s of a group α, Mathlib's Subgroup.groupEquivQuotientProdSubgroup identifies
α with (α ⧸ s) × s, using the chosen representatives Quotient.out of the left cosets. It is
built as a composite of equivalences through a Sigma type, one step of which is a cast along the
equality of a coset with the fibre of the quotient map, so its values are not available by
unfolding. This file records them:
Subgroup.groupEquivQuotientProdSubgroup_symm_apply: the pair(q, x)goes toq.out * x;Subgroup.groupEquivQuotientProdSubgroup_apply: an elementggoes to its coset⟦g⟧and the element⟦g⟧.out⁻¹ * gofs, with the projectionsgroupEquivQuotientProdSubgroup_apply_fstandgroupEquivQuotientProdSubgroup_apply_snd_coe.
The additive versions are generated for AddSubgroup.addGroupEquivQuotientProdAddSubgroup.
The file also records how the chosen representatives behave along a tower of subgroups, along an isomorphism of groups, and under translation:
Subgroup.mk_out_mul_out_bijective: forK ≤ H, the productsp.out * k.outof chosen representatives ofG ⧸ Hand ofH ⧸ K.subgroupOf Hform a transversal ofKinG;Subgroup.mk_mulEquiv_out_bijective: an isomorphisme : G ≃* G'carryingHontoH'carries the chosen representatives ofG ⧸ Hto a transversal ofH'inG';QuotientGroup.mk_out_smulandQuotientGroup.mk_mul_out_smul: the representative of a translated cosetg • qlies in the coset ofg * q.out.
All of these have additive versions. Finally, Subgroup.sum_out_smul_eq_relIndex_nsmul sums an
orbit map along a tower: for K ≤ H and an element m of an additive G-module fixed by H, the
sum of q.out • m over the cosets of K is [H : K] times the sum over the cosets of H.
The decomposition of a group into cosets and a subgroup, read backwards: the pair of a
left coset q and an element x of the subgroup is the element q.out * x.
The decomposition of a group into cosets and a subgroup: an element g goes to its left
coset ⟦g⟧ and the element ⟦g⟧.out⁻¹ * g of the subgroup.
The coset component of the decomposition of g is the coset of g.
The subgroup component of the decomposition of g is ⟦g⟧.out⁻¹ * g.
Transversals multiply along a tower. For subgroups K ≤ H of G, the products
p.out * k.out of the chosen representatives of the cosets p ∈ G ⧸ H and
k ∈ H ⧸ K.subgroupOf H represent each coset of K in G exactly once.
Summing an H-invariant orbit map along a tower. For subgroups K ≤ H of finite index in
G and an element m of an additive commutative monoid with distributive G-action that is fixed
by H, the sum of q.out • m over the cosets of K is [H : K] times the sum over the cosets of
H: each coset of H is the union of [H : K] cosets of K, and q.out • m depends only on the
coset of H containing q.out.
An isomorphism carries a transversal to a transversal. If e : G ≃* G' carries H
onto H', then the images under e of the chosen representatives of the cosets of H represent
each coset of H' exactly once. Neither subgroup need be normal.
The chosen representative of the translate g • q of a left coset q lies in the same coset
as g times the chosen representative of q.
For h ∈ H and a coset k ∈ H ⧸ K.subgroupOf H, the elements a * (h • k).out and
a * h * k.out of G lie in the same left coset of K, for every a ∈ G. No inclusion K ≤ H
is needed.