Zulip Chat Archive
Stream: mathlib4
Topic: Preferred spelling of cancellative semigroups
Eric Wieser (Nov 15 2023 at 16:39):
We currently have docs#LeftCancelSemigroup and docs#RightCancelSemigroup, which extend docs#Semigroup.
We do not have a CancelSemigroup
that extends both.
We do however have docs#IsCancelMul, docs#IsLeftCancelMul,and docs#IsRightCancelMul, which are mixins (and so also work for magmas and for semirings)
Eric Wieser (Nov 15 2023 at 16:40):
/poll Which of the following is preferable?
- Write
[CancelSemigroup S]
, after defining a newCancelSemigroup
class and all the boilerplate - Write
[Semigroup S] [IsCancelMul S]
- Write
[Semigroup S] [IsCancelMul S]
and delete the existing (Left|Right)Cancel versions in favor of[Semigroup S] [IsLeftCancelMul S]
etc
Eric Wieser (Nov 15 2023 at 16:41):
cc @Yaël Dillies, who has already written all the boilerplate for the first option
Eric Wieser (Nov 15 2023 at 17:03):
I created #8428, which generalizes the existing lemmas about LeftCancelSemigroup
to IsLeftCancelMul
Yaël Dillies (Nov 15 2023 at 17:04):
#8429 contains the result where I have to use a hack to juggle between the two spellings.
Jireh Loreaux (Nov 16 2023 at 01:29):
I voted for the last option. I don't think it will matter much, but we should benchmark any PR implementing that option.
Eric Wieser (Nov 23 2023 at 11:15):
It would be great if someone could take a look at #8428 which is a prerequisite for the last option, and for Yael's work
Eric Wieser (Nov 30 2023 at 16:14):
#8748 is one step closer towards the last poll option
Last updated: Dec 20 2023 at 11:08 UTC