Zulip Chat Archive

Stream: mathlib4

Topic: (Has)InvolutiveInv


Kevin Buzzard (Dec 03 2022 at 20:16):

In Mathlib4 Algebra.Group.Defs we have

/-- Auxiliary typeclass for types with an involutive `Neg`. -/
class HasInvolutiveNeg (A : Type _) extends Neg A where
  neg_neg :  x : A, - -x = x

/-- Auxiliary typeclass for types with an involutive `Inv`. -/
@[to_additive]
class HasInvolutiveInv (G : Type _) extends Inv G where
  inv_inv :  x : G, x⁻¹⁻¹ = x

Should those be InvolutiveNeg and InvolutiveInv?

Ruben Van de Velde (Dec 03 2022 at 20:19):

I suspect yes

Jireh Loreaux (Dec 03 2022 at 20:41):

Yes, definitely. Just haven't gotten around to changing them yet.

Kevin Buzzard (Dec 03 2022 at 20:44):

I can just do them now; I'm doing groupy stuff.

Ruben Van de Velde (Dec 03 2022 at 21:05):

Looks like mathlib4#832 is attempting the rename as well

Kevin Buzzard (Dec 03 2022 at 21:16):

oh good catch -- thanks!

Wojciech Nawrocki (Dec 04 2022 at 00:37):

I looked around and also found other uses of Has but didn't go for a more global refactor because for some it is not very clear what the new name should be - e.g. HasQuotient would conflict with Quotient.

Scott Morrison (Dec 04 2022 at 01:35):

I think HasQuotient is okay.

Scott Morrison (Dec 04 2022 at 01:35):

It's a slightly stronger sense of 'has' here. :-)


Last updated: Dec 20 2023 at 11:08 UTC