Zulip Chat Archive

Stream: mathlib4

Topic: Renaming `Basis.smul`


Eric Wieser (Jul 20 2024 at 10:24):

In #14945, I define a smul action by a group on a basis characterized by (g • b) i = g • b i, and want to write lemmas about it like Basis.smul_apply.

Unfortunately, docs#Basis.smul_apply already exists, and is about docs#Basis.smul (b1 : Basis ι R S) (b2 : Basis ι' S A) : Basis (ι × ι') R A) characterized by (b1.smul b2) i = b1 i • b2 i.
I'd like to rename this definition to make room for my one.

Some name suggestions I have are:

  1. Basis.smul', which matches docs#Pi.smul' in terms of the jointly-elementwise action
  2. Basis.smulTower, since this is a module over a tower of algebras
  3. Basis.comp / Basis.trans, as suggested by @Yaël Dillies

Edward van de Meent (Jul 20 2024 at 11:10):

is the thing you're describing Pi.MulAction?

Edward van de Meent (Jul 20 2024 at 11:11):

docs#Pi.smul_apply ?

Edward van de Meent (Jul 20 2024 at 11:13):

ah wait, this doesn't give the action on the type you want, only on coersions of basis elements

Eric Wieser (Jul 20 2024 at 11:25):

docs#Pi.smul_apply is analogous to the lemma / instance I want to add, while docs#Pi.smul_apply' is analogous to the existing docs#Basis.smul_apply

Eric Wieser (Jul 20 2024 at 11:26):

/poll What name should the instance satisfying (b1 • b2) i = b1 i • b2 i have

  • Basis.smul (the status quo)
  • Basis.smul'
  • Basis.smulTower
  • Basis.comp
  • Basis.trans

Edward van de Meent (Jul 20 2024 at 11:32):

i think that calling this smul is very bad at describing that this isn't some kind of elementwise manipulation (which i expected at first), but rather a composition.

Edward van de Meent (Jul 20 2024 at 11:32):

and i'd like to point out that Basis.smul currently satisfies (b1 • b2) i = b1 i.1 • b2 i.2, rather

Edward van de Meent (Jul 20 2024 at 11:43):

given the choice between comp and trans, i'd say trans is preferable, as Basis represents an equivalence, and the order of arguments/types also matches. (typically trans a b = comp b a holds)

Eric Wieser (Jul 20 2024 at 11:44):

Edward van de Meent said:

and i'd like to point out that Basis.smul currently satisfies (b1 • b2) i = b1 i.1 • b2 i.2, rather

I don't know how I managed to repeatedly misread this, thanks!

Edward van de Meent (Jul 20 2024 at 11:45):

i know, it's subtle! hence why simply smul or smul' isn't descriptive enough, imo

Eric Wieser (Jul 22 2024 at 13:24):

@Riccardo Brasca, since you reviewed the PR that spawned this, perhaps you could tie-break the naming vote?

Eric Wieser (Jul 22 2024 at 13:24):

(or perhaps @Johan Commelin, who might also have opinions here)

Riccardo Brasca (Jul 22 2024 at 13:26):

I have a little preference for smulTower. Voted.

Johan Commelin (Jul 22 2024 at 14:10):

I don't have an opinion this time :smiley: But Basis.smulTower sounds fine to me.

Eric Wieser (Jul 22 2024 at 21:19):

#15036


Last updated: May 02 2025 at 03:31 UTC