feat: presented monoids
Define presented monoids and their universal property. This requires some additions to free monoids, and GroupTheory/Congruence
- [ ] depends on: #17180
PR summary 4217a11a85
Import changes for modified files
No significant changes to the import graph
Import changes for all files
| Files | Import difference |
|---|---|
Mathlib.Algebra.PresentedMonoid.Basic |
428 |
Declarations diff
+ PresentedMonoid
+ closure_range_of
+ ext
+ inductionOn
+ inductionOn₂
+ inductionOn₃
+ instance {rels : FreeMonoid α → FreeMonoid α → Prop} : Monoid (PresentedMonoid rels)
+ lift
+ lift_of
+ mk
+ of
+ surjective_mk
+ toMonoid.unique
You can run this locally as follows
## summary with just the declaration names:
./scripts/declarations_diff.sh <optional_commit>
## more verbose report:
./scripts/declarations_diff.sh long <optional_commit>
The doc-module for script/declarations_diff.sh contains some details about this script.
Also please merge master in case of merge conflicts. Thanks!
I think people who are not interested in presented monoids might be interested in the parts I'm asking you to split off.
Hey sorry for abandoning this for so long. I agree with Yael that the more useful part are the monoid API and I might not be the best person to review those. But I could review the rest of this PR once that lands.
This PR/issue depends on:
- ~~leanprover-community/mathlib4#17180~~ By Dependent Issues (🤖). Happy coding!
LGTM Thanks! maintainer merge
🚀 Pull request has been placed on the maintainer queue by erdOne.
This PR was included in a batch that was canceled, it will be automatically retried
Already running a review
Oops, I could swear I reloaded this page before borsing. Anyway, I'll give this a
bors d+
in case the build ends up failing.
:v: hannahfechtner can now approve this pull request. To approve and merge a pull request, simply reply with bors r+. More detailed instructions are available here.