Module docstring
{"# Cosets
This file develops the basic theory of left and right cosets.
When G is a group and a : G, s : Set G, with  open scoped Pointwise we can write:
* the left coset of s by a as a • s
* the right coset of s by a as MulOpposite.op a • s (or op a • s with open MulOpposite)
If instead G is an additive group, we can write (with  open scoped Pointwise still)
* the left coset of s by a as a +ᵥ s
* the right coset of s by a as AddOpposite.op a +ᵥ s (or op a • s with open AddOpposite)
Main definitions
QuotientGroup.quotient s: the quotient type representing the left cosets with respect to a subgroups, for anAddGroupthis isQuotientAddGroup.quotient s.QuotientGroup.mk: the canonical map fromαtoα/sfor a subgroupsofα, for anAddGroupthis isQuotientAddGroup.mk.
Notation
G ⧸ His the quotient of the (additive) groupGby the (additive) subgroupH
TODO
Properly merge with pointwise actions on sets, by renaming and deduplicating lemmas as appropriate. "}