Prod instances for additive and multiplicative actions #
This file defines instances for binary product of additive and multiplicative actions and provides
scalar multiplication as a homomorphism from α × β
to β
.
Main declarations #
smulMulHom
/smulMonoidHom
: Scalar multiplication bundled as a multiplicative/monoid homomorphism.
See also #
Mathlib.GroupTheory.GroupAction.Option
Mathlib.GroupTheory.GroupAction.Pi
Mathlib.GroupTheory.GroupAction.Sigma
Mathlib.GroupTheory.GroupAction.Sum
Porting notes #
The to_additive
attribute can be used to generate both the smul
and vadd
lemmas
from the corresponding pow
lemmas, as explained on zulip here:
https://leanprover.zulipchat.com/#narrow/near/316087838
This was not done as part of the port in order to stay as close as possible to the mathlib3 code.
Equations
- ⋯ = ⋯
Equations
- ⋯ = ⋯
Equations
- ⋯ = ⋯
Equations
- ⋯ = ⋯
Equations
- ⋯ = ⋯
Equations
- ⋯ = ⋯
Equations
- ⋯ = ⋯
Equations
- ⋯ = ⋯
Equations
- ⋯ = ⋯
Equations
- ⋯ = ⋯
Equations
- ⋯ = ⋯
Equations
- ⋯ = ⋯
Equations
- ⋯ = ⋯
Equations
- Prod.smulZeroClass = SMulZeroClass.mk ⋯
Equations
- Prod.distribSMul = DistribSMul.mk ⋯
Equations
- Prod.distribMulAction = let __src := Prod.mulAction; let __src_1 := Prod.distribSMul; DistribMulAction.mk ⋯ ⋯
Equations
- Prod.mulDistribMulAction = MulDistribMulAction.mk ⋯ ⋯
Scalar multiplication as a homomorphism #
Scalar multiplication as a multiplicative homomorphism.
Instances For
Scalar multiplication as a monoid homomorphism.
Equations
- smulMonoidHom = let __src := smulMulHom; { toOneHom := { toFun := __src.toFun, map_one' := ⋯ }, map_mul' := ⋯ }
Instances For
Construct an AddAction
by a product monoid from AddAction
s by the factors.
This is not an instance to avoid diamonds for example when α := M × N
.
Equations
- AddAction.prodOfVAddCommClass M N α = AddAction.mk ⋯ ⋯
Instances For
Construct a MulAction
by a product monoid from MulAction
s by the factors.
This is not an instance to avoid diamonds for example when α := M × N
.
Equations
- MulAction.prodOfSMulCommClass M N α = MulAction.mk ⋯ ⋯
Instances For
Construct a DistribMulAction
by a product monoid from DistribMulAction
s by the factors.
Equations
- DistribMulAction.prodOfSMulCommClass M N α = let __spread.0 := MulAction.prodOfSMulCommClass M N α; DistribMulAction.mk ⋯ ⋯
Instances For
A DistribMulAction
by a product monoid is equivalent to
commuting DistribMulAction
s by the factors.
Equations
- One or more equations did not get rendered due to their size.