Scalar multiplication by (additive) monoid rings on formal functions. #
Given sets G and P, with a left-cancellative scalar-multiplication (or vector-addition) of G
on P, together with a module V over a semiring R, we define a convolution action of the monoid
algebra R[G] on the set of functions P → V.
@[instance_reducible]
noncomputable def MonoidAlgebra.instSMulForallOfIsLeftCancelSMulOfSMulWithZero {G : Type u_1} {P : Type u_2} {R : Type u_3} {V : Type u_4} [SMul G P] [IsLeftCancelSMul G P] [Semiring R] [AddCommMonoid V] [SMulWithZero R V] :
SMul (MonoidAlgebra R G) (P → V)
A convolution-type scalar multiplication of the monoid algebra on the set of formal functions.
Equations
- MonoidAlgebra.instSMulForallOfIsLeftCancelSMulOfSMulWithZero = { smul := fun (f : MonoidAlgebra R G) (x : P → V) (p : P) => ∑ gh ∈ Finset.SMulAntidiagonal p ⋯, f.coeff gh.1 • x gh.2 }
Instances For
@[instance_reducible]
noncomputable def AddMonoidAlgebra.instVAddForallOfIsLeftCancelVAddOfVAddWithZero {G : Type u_1} {P : Type u_2} {R : Type u_3} {V : Type u_4} [VAdd G P] [IsLeftCancelVAdd G P] [Semiring R] [AddCommMonoid V] [SMulWithZero R V] :
SMul (AddMonoidAlgebra R G) (P → V)
A convolution-type scalar multiplication of the additive monoid algebra on the set of formal functions.
Equations
- One or more equations did not get rendered due to their size.
Instances For
theorem MonoidAlgebra.smul_eq {G : Type u_1} {P : Type u_2} {R : Type u_3} {V : Type u_4} [SMul G P] [IsLeftCancelSMul G P] [Semiring R] [AddCommMonoid V] [SMulWithZero R V] (f : MonoidAlgebra R G) (x : P → V) (p : P) (hp : ((↑f.coeff.support).smulAntidiagonal (Function.support x) p).Finite := ⋯) :
theorem AddMonoidAlgebra.smul_eq {G : Type u_1} {P : Type u_2} {R : Type u_3} {V : Type u_4} [VAdd G P] [IsLeftCancelVAdd G P] [Semiring R] [AddCommMonoid V] [SMulWithZero R V] (f : AddMonoidAlgebra R G) (x : P → V) (p : P) (hp : ((↑f.coeff.support).vaddAntidiagonal (Function.support x) p).Finite := ⋯) :
theorem MonoidAlgebra.smul_apply_mulAction {G : Type u_1} {P : Type u_2} {R : Type u_3} {V : Type u_4} [Group G] [MulAction G P] [Semiring R] [AddCommMonoid V] [SMulWithZero R V] (f : MonoidAlgebra R G) (x : P → V) (p : P) :
theorem AddMonoidAlgebra.smul_apply_addAction {G : Type u_1} {P : Type u_2} {R : Type u_3} {V : Type u_4} [AddGroup G] [AddAction G P] [Semiring R] [AddCommMonoid V] [SMulWithZero R V] (f : AddMonoidAlgebra R G) (x : P → V) (p : P) :