feat(GroupExtension/Abelian): define OfMulDistribMulAction.equivH2#19582
feat(GroupExtension/Abelian): define OfMulDistribMulAction.equivH2#19582
OfMulDistribMulAction.equivH2#19582Conversation
PR summary 18d4bf634fImport changes for modified filesNo significant changes to the import graph Import changes for all files
|
|
Thanks for the contribution! Feel free to ping me on the split off PRs. |
…#20802) This PR: - defines `structure (Add)?GroupExtension.Section` as a right inverse to `rightHom` - redefines `structure (Add)?GroupExtension.Splitting` using `Section` - rewrites the definition of `structure (Add)?GroupExtension.Equiv` with `extends` As the first part of #19582, this PR contains only the changes to the `Defs` file. Moves: - GroupExtension.Splitting.sectionHom -> GroupExtension.Splitting.toMonoidHom - GroupExtension.Splitting.rightHom_comp_sectionHom -> GroupExtension.Splitting.rightInverse_rightHom
…ian) groups (#20998) As the second part of #19582, this PR mostly contains the changes to the `Basic` file. It mainly: - redefines `GroupExtension.Equiv` with `MulEquiv` rather than `MonoidHom`; - adds lemmas that do not require a commutative group, as a preparation for the main PR; - defines `GroupExtension.Splitting.semidirectProductMulEquiv`, an isomorphism between the group associated to a split extension and a semidirect product; and - defines `GroupExtension.ConjClasses`, the conjugacy classes of splittings. It also contains some definitions and lemmas unused in the main PR, such as: - `GroupExtension.quotientRangeInlEquivRight`, provided as a shorthand for end-users; and - `GroupExtension.Section.section_inv_mul_mem_range`, provided as a symmetric counterpart of a required lemma. They may be dropped if this PR would introduce a too large diff. Moves: - GroupExtension.Equiv.mk -> GroupExtension.Equiv.ofMonoidHom
ofMulDistribMulAction.equivH2OfMulDistribMulAction.equivH2
The former code no longer compiles after updating to v4.16.0-rc1.
style: use `where` and `__` instead of braces and `with` … besides one-line definitions chore: move variables to the top of each namespace
style: move braces to the same lines as fields
chore: drop `conjActSurjInvRightHom`
457ed67 to
11a3622
Compare
|
I've rebased. Sadly a lot of things broke because |
|
This pull request has conflicts, please merge |
Mainly defines:
structure GroupExtension.OfMulDistribMulAction N G [MulDistribMulAction G N]: group extensions ofGbyNwhere the multiplicative action ofGonNis the conjugationstructure GroupExtension.OfMulDistribMulActionWithSection N G [MulDistribMulAction G N]: group extensions with specific choices of sectionsdef GroupExtension.OfMulDistribMulAction.equivH2: a bijection between the equivalence classes of group extensions andSectionand redefineSplitting#20802 (split PR: contains changes to theDefsfile)Basicfile)conjClassesEquivH1#26670 (split PR: adds the first part of theAbelianfile)Here is a relevant TODO in Mathlib:
mathlib4/Mathlib/RepresentationTheory/GroupCohomology/LowDegree.lean
Lines 46 to 48 in 4e9fa40
I would appreciate your comments.