[Add] Consequences of associativity for Semigroups#2688
[Add] Consequences of associativity for Semigroups#2688JacquesCarette merged 34 commits intoagda:masterfrom
Semigroups#2688Conversation
|
For others: the names are taken from the combinators in |
With an explicit callback/reference to #2288 ? This PR alone doesn't 'fix' that issue, but contributes a piece of the jigsaw to such a 'fix'. |
There was a problem hiding this comment.
Lots of comments, I'm requesting changes based on a single one, but can be summarised as:
- please give lemmas names that can be remembered without needing a lookup table or other instruction manual to explain what they are/how they behave!
- no need for a new module, we already have the
Algebra.Properties.*sub-hierarchy...
Co-authored-by: jamesmckinna <31931406+jamesmckinna@users.noreply.github.com>
|
OK... thanks for the recent commits, but I'm going to carry on nitpicking:
|
|
Also:
As with previous comments, we don't need a new module (even if it's moved location), these could all go in |
|
As I've indicated, I'm not a big fan of push/pull because they are not very mnemomic; the superscripts don't help either. Indeed, if one looks at module Pulls (x∙y≈z : x ∙ y ≈ z) where
x∙y≈z⇒[w∙x]∙y≈w∙z : (w ∙ x) ∙ y ≈ w ∙ zwhat it really does is
So that's what I'd like the naming to reflect. Now, I quite like the 'synonym'
Note that these are meant to have the 3 variables be implicit, on purpose: if they cannot be figured out by Agda, then it's probably better to use the 'long form' of the reasoning (i.e. explicit calls to |
OK, I guess it is/was good to see how far apart the various contributors are on how to think about these naming issues, and their intended semantic underpinnings. But I have to say that I find the gap between the symbolic names you propose ((NB in my Firefox font for GitHub, your symbol In the face of this, I am going to suggest
Barn-burning. |
|
My firefox displays them all just fine! I would be fine with a name that involves Your mixfix suggestion might have legs. In fact, by eliding the common prefix entirely, using it as a purely prefix operation might result in a name that's close to readable. If my mnemonic symbology is not acceptable, I would think a text-based name based around 'refocus' is probably better than other unicode soup. |
|
Conclusion: accept but note that there should be better solution |
The changes have actually been made, but James is away and so this is blocking.
|
Sorry for not having rescinded the old review! Thanks for merging! |
Introduce a new module for equational reasoning in semigroups, providing utilities for associativity reasoning and operations.