Documentation

Mathlib.RingTheory.Coalgebra.Convolution

Convolution product on linear maps from a coalgebra to an algebra #

This file constructs the ring and algebra structure on linear maps C → A where C is a coalgebra and A an algebra, where multiplication is given by (f * g)(x) = ∑ f x₍₁₎ * g x₍₂₎ in Sweedler notation or

         |
         μ
|   |   / \
f * g = f g
|   |   \ /
         δ
         |

diagrammatically, where μ stands for multiplication and δ for comultiplication.

Implementation notes #

Because there is a global multiplication instance on Module.End R A (defined as composition), which is mathematically distinct from this product, we provide this instance on WithConv (C →ₗ[R] A).

@[instance_reducible]
noncomputable instance LinearMap.convMul {R : Type u_1} {A : Type u_3} {C : Type u_5} [CommSemiring R] [NonUnitalNonAssocSemiring A] [Module R A] [SMulCommClass R A A] [IsScalarTower R A A] [AddCommMonoid C] [Module R C] [CoalgebraStruct R C] :

Convolution product on linear maps from a coalgebra to an algebra.

Equations
@[simp]
theorem LinearMap.convMul_apply {R : Type u_1} {A : Type u_3} {C : Type u_5} [CommSemiring R] [NonUnitalNonAssocSemiring A] [Module R A] [SMulCommClass R A A] [IsScalarTower R A A] [AddCommMonoid C] [Module R C] [CoalgebraStruct R C] (f g : WithConv (C →ₗ[R] A)) (c : C) :
theorem Coalgebra.Repr.convMul_apply {R : Type u_1} {A : Type u_3} {C : Type u_5} {ι : Type u_6} [CommSemiring R] [NonUnitalNonAssocSemiring A] [Module R A] [SMulCommClass R A A] [IsScalarTower R A A] [AddCommMonoid C] [Module R C] [CoalgebraStruct R C] {a : C} (𝓡 : Repr R a ι) (f g : WithConv (C →ₗ[R] A)) :
(f * g).ofConv a = ∑ i ∈ 𝓡.index, f.ofConv (𝓡.left i) * g.ofConv (𝓡.right i)
@[instance_reducible]

Non-unital and non-associative convolution semiring structure on linear maps from a coalgebra to a non-unital non-associative algebra.

Equations
@[instance_reducible]
noncomputable instance LinearMap.convNonUnitalNonAssocRing {R : Type u_1} {A : Type u_3} {C : Type u_5} [CommSemiring R] [NonUnitalNonAssocRing A] [Module R A] [SMulCommClass R A A] [IsScalarTower R A A] [AddCommMonoid C] [Module R C] [CoalgebraStruct R C] :

Non-unital and non-associative convolution ring structure on linear maps from a coalgebra to a non-unital and non-associative algebra.

Equations
  • One or more equations did not get rendered due to their size.
@[instance_reducible]
noncomputable instance LinearMap.convNonUnitalSemiring {R : Type u_1} {A : Type u_3} {C : Type u_5} [CommSemiring R] [NonUnitalSemiring A] [Module R A] [SMulCommClass R A A] [IsScalarTower R A A] [AddCommMonoid C] [Module R C] [Coalgebra R C] :

Non-unital convolution semiring structure on linear maps from a coalgebra to a non-unital algebra.

Equations
@[instance_reducible]
noncomputable instance LinearMap.convNonUnitalRing {R : Type u_1} {A : Type u_3} {C : Type u_5} [CommSemiring R] [NonUnitalRing A] [AddCommMonoid C] [Module R A] [SMulCommClass R A A] [IsScalarTower R A A] [Module R C] [Coalgebra R C] :

Non-unital convolution ring structure on linear maps from a coalgebra to a non-unital algebra.

Equations
@[instance_reducible]
noncomputable instance LinearMap.instOneWithConvId {R : Type u_1} {A : Type u_3} {C : Type u_5} [CommSemiring R] [Semiring A] [Algebra R A] [AddCommMonoid C] [Module R C] [CoalgebraStruct R C] :

Convolution unit on linear maps from a coalgebra to an algebra.

Equations
@[simp]
theorem LinearMap.convOne_apply {R : Type u_1} {A : Type u_3} {C : Type u_5} [CommSemiring R] [Semiring A] [Algebra R A] [AddCommMonoid C] [Module R C] [CoalgebraStruct R C] (c : C) :
@[simp]
theorem LinearMap.convOne_comp_coalgHom {R : Type u_1} {A : Type u_3} {B : Type u_4} {C : Type u_5} [CommSemiring R] [Semiring A] [Algebra R A] [AddCommMonoid C] [Module R C] [CoalgebraStruct R C] [AddCommMonoid B] [Module R B] [CoalgebraStruct R B] (h : B →ₗc[R] C) :
@[simp]
theorem LinearMap.algHom_comp_convOne {R : Type u_1} {A : Type u_3} {B : Type u_4} {C : Type u_5} [CommSemiring R] [Semiring A] [Algebra R A] [AddCommMonoid C] [Module R C] [CoalgebraStruct R C] [Semiring B] [Algebra R B] (h : A →ₐ[R] B) :
@[instance_reducible]
noncomputable instance LinearMap.convSemiring {R : Type u_1} {A : Type u_3} {C : Type u_5} [CommSemiring R] [Semiring A] [Algebra R A] [AddCommMonoid C] [Module R C] [Coalgebra R C] :

Convolution semiring structure on linear maps from a coalgebra to an algebra.

Equations
  • One or more equations did not get rendered due to their size.
@[instance_reducible]
noncomputable instance LinearMap.convAlgebra {R : Type u_1} {S : Type u_2} {A : Type u_3} {C : Type u_5} [CommSemiring R] [Semiring A] [Algebra R A] [AddCommMonoid C] [Module R C] [Coalgebra R C] [CommSemiring S] [Algebra S A] [SMulCommClass R S A] :

Convolution algebra structure on linear maps from a coalgebra to an algebra.

Equations
@[simp]
theorem LinearMap.convAlgebraMap_apply {R : Type u_1} {S : Type u_2} {A : Type u_3} {C : Type u_5} [CommSemiring R] [Semiring A] [Algebra R A] [AddCommMonoid C] [Module R C] [Coalgebra R C] [CommSemiring S] [Algebra S A] [SMulCommClass R S A] (s : S) (c : C) :
@[instance_reducible]
noncomputable instance LinearMap.convCommSemiring {R : Type u_1} {A : Type u_3} {C : Type u_5} [CommSemiring R] [CommSemiring A] [AddCommMonoid C] [Algebra R A] [Module R C] [Coalgebra R C] [Coalgebra.IsCocomm R C] :

Commutative convolution semiring structure on linear maps from a cocommutative coalgebra to an algebra.

Equations
@[instance_reducible]
noncomputable instance LinearMap.convRing {R : Type u_1} {A : Type u_3} {C : Type u_5} [CommSemiring R] [Ring A] [AddCommMonoid C] [Algebra R A] [Module R C] [Coalgebra R C] :

Convolution ring structure on linear maps from a coalgebra to an algebra.

Equations
  • One or more equations did not get rendered due to their size.
@[instance_reducible]
noncomputable instance LinearMap.convCommRing {R : Type u_1} {A : Type u_3} {C : Type u_5} [CommSemiring R] [CommRing A] [AddCommMonoid C] [Algebra R A] [Module R C] [Coalgebra R C] [Coalgebra.IsCocomm R C] :

Commutative convolution ring structure on linear maps from a cocommutative coalgebra to an algebra.

Equations
noncomputable def AlgHom.convPostcomp {R : Type u_1} {A : Type u_3} {B : Type u_4} {C : Type u_5} [CommSemiring R] [Semiring A] [Algebra R A] [AddCommMonoid C] [Module R C] [Coalgebra R C] [Semiring B] [Algebra R B] (h : A →ₐ[R] B) :

Post-composition by an algebra homomorphism, as a homomorphism of convolution algebras.

Equations
Instances For
    @[simp]
    theorem AlgHom.convPostcomp_apply_ofConv {R : Type u_1} {A : Type u_3} {B : Type u_4} {C : Type u_5} [CommSemiring R] [Semiring A] [Algebra R A] [AddCommMonoid C] [Module R C] [Coalgebra R C] [Semiring B] [Algebra R B] (h : A →ₐ[R] B) (f : WithConv (C →ₗ[R] A)) :
    theorem AlgHom.convPostcomp_injective {R : Type u_1} {A : Type u_3} {B : Type u_4} {C : Type u_5} [CommSemiring R] [Semiring A] [Algebra R A] [AddCommMonoid C] [Module R C] [Coalgebra R C] [Semiring B] [Algebra R B] {h : A →ₐ[R] B} (hh : Function.Injective ⇑h) :
    @[simp]
    theorem AlgHom.convPostcomp_id {R : Type u_1} {A : Type u_3} {C : Type u_5} [CommSemiring R] [Semiring A] [Algebra R A] [AddCommMonoid C] [Module R C] [Coalgebra R C] :
    theorem AlgHom.convPostcomp_comp {R : Type u_1} {A : Type u_3} {B : Type u_4} {C : Type u_5} [CommSemiring R] [Semiring A] [Algebra R A] [AddCommMonoid C] [Module R C] [Coalgebra R C] [Semiring B] [Algebra R B] {D : Type u_7} [Semiring D] [Algebra R D] (h₁ : B →ₐ[R] D) (h₂ : A →ₐ[R] B) :
    noncomputable def CoalgHom.convPrecomp {R : Type u_1} {A : Type u_3} {B : Type u_4} {C : Type u_5} [CommSemiring R] [Semiring A] [Algebra R A] [AddCommMonoid C] [Module R C] [Coalgebra R C] [AddCommMonoid B] [Module R B] [Coalgebra R B] (h : B →ₗc[R] C) :

    Pre-composition by a coalgebra homomorphism, as a homomorphism of convolution algebras.

    Equations
    Instances For
      @[simp]
      theorem CoalgHom.convPrecomp_apply_ofConv {R : Type u_1} {A : Type u_3} {B : Type u_4} {C : Type u_5} [CommSemiring R] [Semiring A] [Algebra R A] [AddCommMonoid C] [Module R C] [Coalgebra R C] [AddCommMonoid B] [Module R B] [Coalgebra R B] (h : B →ₗc[R] C) (f : WithConv (C →ₗ[R] A)) :
      theorem CoalgHom.convPrecomp_injective {R : Type u_1} {A : Type u_3} {B : Type u_4} {C : Type u_5} [CommSemiring R] [Semiring A] [Algebra R A] [AddCommMonoid C] [Module R C] [Coalgebra R C] [AddCommMonoid B] [Module R B] [Coalgebra R B] {h : B →ₗc[R] C} (hh : Function.Surjective ⇑h) :
      @[simp]
      theorem CoalgHom.convPrecomp_id {R : Type u_1} {A : Type u_3} {C : Type u_5} [CommSemiring R] [Semiring A] [Algebra R A] [AddCommMonoid C] [Module R C] [Coalgebra R C] :
      theorem CoalgHom.convPrecomp_comp {R : Type u_1} {A : Type u_3} {B : Type u_4} {C : Type u_5} [CommSemiring R] [Semiring A] [Algebra R A] [AddCommMonoid C] [Module R C] [Coalgebra R C] [AddCommMonoid B] [Module R B] [Coalgebra R B] {D : Type u_7} [AddCommMonoid D] [Module R D] [Coalgebra R D] (h₁ : B →ₗc[R] C) (h₂ : D →ₗc[R] B) :
      theorem CoalgHom.convPrecomp_comp_convPostcomp {R : Type u_1} {A : Type u_3} {B : Type u_4} {C : Type u_5} [CommSemiring R] [Semiring A] [Algebra R A] [AddCommMonoid C] [Module R C] [Coalgebra R C] [AddCommMonoid B] [Module R B] [Coalgebra R B] {D : Type u_7} [Semiring D] [Algebra R D] (h : B →ₗc[R] C) (φ : A →ₐ[R] D) :