Zulip Chat Archive

Stream: general

Topic: Heterogeneous multiplication


Eric Wieser (Dec 03 2021 at 00:00):

We currently use has_scalar which lets us spell things like r • ![x, y] = ![r • x, r • y]. But what about if I want something like (X : polynomial R) • ![x, y] = ![polynomial.X * C x, polynomial.X * C y]? Do we want instances for this type of thing in lean4 when we have HMul? Does it still make sense to talk about these as "actions" in the same way?

Eric Wieser (Dec 03 2021 at 00:02):

I guess we would have to be careful of ambiguity like ![x, y] • ![a, b], which could mean ![![x•a, x•b], ![y•a, y•b]] or ![![x•a, y•a], ![x•b, y•b]], neither of which are what docs#pi.has_scalar' actually does today

Reid Barton (Dec 03 2021 at 00:46):

There is the tensor product which encompasses these two examples. Probably other random bilinear maps should not be a type class.


Last updated: Dec 20 2023 at 11:08 UTC