The pointwise product on Finsupp
. #
For the convolution product on Finsupp
when the domain has a binary operation,
see the type synonyms AddMonoidAlgebra
(which is in turn used to define Polynomial
and MvPolynomial
)
and MonoidAlgebra
.
The product of f g : α →₀ β
is the finitely supported function
whose value at a
is f a * g a
.
Equations
- Finsupp.instMul = { mul := Finsupp.zipWith (fun (x1 x2 : β) => x1 * x2) ⋯ }
@[simp]
theorem
Finsupp.mul_apply
{α : Type u₁}
{β : Type u₂}
[MulZeroClass β]
{g₁ : α →₀ β}
{g₂ : α →₀ β}
{a : α}
:
@[simp]
theorem
Finsupp.single_mul
{α : Type u₁}
{β : Type u₂}
[MulZeroClass β]
(a : α)
(b₁ : β)
(b₂ : β)
:
Finsupp.single a (b₁ * b₂) = Finsupp.single a b₁ * Finsupp.single a b₂
theorem
Finsupp.support_mul
{α : Type u₁}
{β : Type u₂}
[MulZeroClass β]
[DecidableEq α]
{g₁ : α →₀ β}
{g₂ : α →₀ β}
:
instance
Finsupp.instMulZeroClass
{α : Type u₁}
{β : Type u₂}
[MulZeroClass β]
:
MulZeroClass (α →₀ β)
Equations
- Finsupp.instMulZeroClass = Function.Injective.mulZeroClass (fun (f : α →₀ β) => ⇑f) ⋯ ⋯ ⋯
instance
Finsupp.instSemigroupWithZero
{α : Type u₁}
{β : Type u₂}
[SemigroupWithZero β]
:
SemigroupWithZero (α →₀ β)
Equations
- Finsupp.instSemigroupWithZero = Function.Injective.semigroupWithZero (fun (f : α →₀ β) => ⇑f) ⋯ ⋯ ⋯
instance
Finsupp.instNonUnitalNonAssocSemiring
{α : Type u₁}
{β : Type u₂}
[NonUnitalNonAssocSemiring β]
:
NonUnitalNonAssocSemiring (α →₀ β)
Equations
- Finsupp.instNonUnitalNonAssocSemiring = Function.Injective.nonUnitalNonAssocSemiring (fun (f : α →₀ β) => ⇑f) ⋯ ⋯ ⋯ ⋯ ⋯
instance
Finsupp.instNonUnitalSemiring
{α : Type u₁}
{β : Type u₂}
[NonUnitalSemiring β]
:
NonUnitalSemiring (α →₀ β)
Equations
- Finsupp.instNonUnitalSemiring = Function.Injective.nonUnitalSemiring (fun (f : α →₀ β) => ⇑f) ⋯ ⋯ ⋯ ⋯ ⋯
instance
Finsupp.instNonUnitalCommSemiring
{α : Type u₁}
{β : Type u₂}
[NonUnitalCommSemiring β]
:
NonUnitalCommSemiring (α →₀ β)
Equations
- Finsupp.instNonUnitalCommSemiring = Function.Injective.nonUnitalCommSemiring (fun (f : α →₀ β) => ⇑f) ⋯ ⋯ ⋯ ⋯ ⋯
instance
Finsupp.instNonUnitalNonAssocRing
{α : Type u₁}
{β : Type u₂}
[NonUnitalNonAssocRing β]
:
NonUnitalNonAssocRing (α →₀ β)
Equations
- Finsupp.instNonUnitalNonAssocRing = Function.Injective.nonUnitalNonAssocRing (fun (f : α →₀ β) => ⇑f) ⋯ ⋯ ⋯ ⋯ ⋯ ⋯ ⋯ ⋯
instance
Finsupp.instNonUnitalRing
{α : Type u₁}
{β : Type u₂}
[NonUnitalRing β]
:
NonUnitalRing (α →₀ β)
Equations
- Finsupp.instNonUnitalRing = Function.Injective.nonUnitalRing (fun (f : α →₀ β) => ⇑f) ⋯ ⋯ ⋯ ⋯ ⋯ ⋯ ⋯ ⋯
instance
Finsupp.instNonUnitalCommRing
{α : Type u₁}
{β : Type u₂}
[NonUnitalCommRing β]
:
NonUnitalCommRing (α →₀ β)
Equations
- Finsupp.instNonUnitalCommRing = Function.Injective.nonUnitalCommRing (fun (f : α →₀ β) => ⇑f) ⋯ ⋯ ⋯ ⋯ ⋯ ⋯ ⋯ ⋯
The pointwise multiplicative action of functions on finitely supported functions
Equations
- Finsupp.pointwiseModule = Function.Injective.module (α → β) Finsupp.coeFnAddHom ⋯ ⋯