Hi Three Two issues arising around (Is)Ring (and friends):
; inverse to -‿inverse
; inverseˡ to -‿inverseˡ
; inverseʳ to -‿inverseʳ
in the +-IsAbelianGroup instance of IsRing. Why not more simply +-inverse etc.?
Originally posted by @jamesmckinna in #2195 (comment)
UPDATED: so far, the use of these things is almost completely confined to 'internal' definitions in Algebra.{Module.}Structures and Algebra.{Module.}Construct, so I'll leave well alone for now...
- should we enrich the manifest signature of
IsAbelianGroup with an explicit subtraction operator?
UPDATED: this already happens in IsGroup, though I might have expected the Group operation to admit two forms, and only collapse to 'subtraction' in the IsAbelianGroup case... (?):
infixl 6 _-_
_-_ : Op₂ A
x - y = x ∙ (y ⁻¹)
UPDATED though if I were to, I'd define, in IsGroup see #2251 (and UPDATED to reflect the discussion there):
infixl 6 _//_
infixr 6 _\\_
_//_ : Op₂ A
x // y = x ∙ (y ⁻¹)
_\\_ : Op₂ A
x \\ y = (x ⁻¹) ∙ y
and rename the first into _-_ in IsAbelianGroup and prove the two operations extensionally equal in Algebra.Properties.AbelianGroup (or somewhere else?)). Not sure about the infix/associativity declarations, though!
Tempting instead, perhaps though, to define the Mal'cev operation and specialise it appropriately...
Hi Three
Twoissues arising around(Is)Ring(and friends):zeroinIsRing#2195 do we really want the names; inverse to -‿inverse ; inverseˡ to -‿inverseˡ ; inverseʳ to -‿inverseʳin the
+-IsAbelianGroupinstance ofIsRing. Why not more simply+-inverseetc.?Originally posted by @jamesmckinna in #2195 (comment)
UPDATED: so far, the use of these things is almost completely confined to 'internal' definitions in
Algebra.{Module.}StructuresandAlgebra.{Module.}Construct, so I'll leave well alone for now...IsAbelianGroupwith an explicit subtraction operator?UPDATED: this already happens in
IsGroup, though I might have expected theGroupoperation to admit two forms, and only collapse to 'subtraction' in theIsAbelianGroupcase... (?):UPDATED though if I were to, I'd define, in
IsGroupsee #2251 (and UPDATED to reflect the discussion there):and rename the first into
_-_inIsAbelianGroupand prove the two operations extensionally equal inAlgebra.Properties.AbelianGroup(or somewhere else?)). Not sure about theinfix/associativity declarations, though!Tempting instead, perhaps though, to define the Mal'cev operation and specialise it appropriately...
trans (sym ...) ...analogous operation (not defined anywhere, AFAIK?) for theIsEquivalence(Is)Groupoidoperations (with(Is)Groupoidnot defined anywhere, either AFAIK?) cf. Add derived (pre-)groupoid operations toRelation.Binary.Is(Partial)Equivalence#2249