Documentation

TauCeti.Algebra.Coalgebra.Comodule.Basic

Comodules over a coalgebra #

This file defines right comodules over an R-coalgebra C and their morphisms. A right comodule is an R-module M equipped with a coaction ρ : M →ₗ[R] M ⊗[R] C satisfying the usual coassociativity and counit identities.

This is a first Layer 1 prerequisite for the reductive-groups roadmap: representations of an affine group scheme represented by a Hopf algebra are comodules over its coordinate Hopf algebra, and the roadmap explicitly calls for comodules, comodule morphisms, tensor products, duals, and the regular representation. The file starts with the core definition, the regular right comodule of a coalgebra over itself, and the basic morphism API.

Main definitions #

References #

This follows the standard definition of a right comodule over a coalgebra; see for example Sweedler, Hopf Algebras, Chapter 2. It is added for the "Comodules over a coalgebra/Hopf algebra" target in Layer 1 of the Tau Ceti reductive-groups roadmap.

class TauCeti.Comodule (R : Type u) (C : Type v) (M : Type w) [CommSemiring R] [AddCommMonoid C] [Module R C] [Coalgebra R C] [AddCommMonoid M] [Module R M] :
Type (max v w)

A right comodule over an R-coalgebra C.

The coaction is written as a linear map coact : M →ₗ[R] M ⊗[R] C. The coassociativity law says that coacting twice on the M component agrees with coacting once and then comultiplying the C component. The counit law says that applying the coalgebra counit to the C component recovers the original vector, under the canonical M ⊗ R presentation.

Instances
    theorem TauCeti.Comodule.ext {R : Type u} {C : Type v} {M : Type w} [CommSemiring R] [AddCommMonoid C] [Module R C] [Coalgebra R C] [AddCommMonoid M] [Module R M] {rho sigma : Comodule R C M} (h : coact = coact) :
    rho = sigma

    Two right-comodule structures are equal when their coactions are equal.

    theorem TauCeti.Comodule.ext_iff {R : Type u} {C : Type v} {M : Type w} [CommSemiring R] [AddCommMonoid C] [Module R C] [Coalgebra R C] [AddCommMonoid M] [Module R M] {rho sigma : Comodule R C M} :
    rho = sigma coact = coact
    @[simp]

    Coassociativity of the coaction, as an equality of linear maps.

    @[simp]

    Coassociativity of the coaction, evaluated at a vector.

    @[simp]

    The counit law of the coaction, evaluated at a vector.

    Components selected by linear functionals #

    noncomputable def TauCeti.Comodule.pairCoeff {R : Type u} {C : Type v} [CommSemiring R] [AddCommMonoid C] [Module R C] (phi psi : C →ₗ[R] R) :

    Pair two linear functionals on the factors of a tensor square.

    Equations
    Instances For
      @[simp]
      theorem TauCeti.Comodule.pairCoeff_tmul {R : Type u} {C : Type v} [CommSemiring R] [AddCommMonoid C] [Module R C] (phi psi : C →ₗ[R] R) (c d : C) :
      (pairCoeff phi psi) (c ⊗ₜ[R] d) = phi c * psi d
      noncomputable def TauCeti.Comodule.tensorPairComponent {R : Type u} {C : Type v} {M : Type w} [CommSemiring R] [AddCommMonoid C] [Module R C] [AddCommMonoid M] [Module R M] (phi psi : C →ₗ[R] R) :

      Apply a pair of linear functionals to the two coalgebra factors of a threefold tensor.

      Equations
      Instances For
        @[simp]
        theorem TauCeti.Comodule.tensorPairComponent_tmul {R : Type u} {C : Type v} {M : Type w} [CommSemiring R] [AddCommMonoid C] [Module R C] [AddCommMonoid M] [Module R M] (phi psi : C →ₗ[R] R) (m : M) (t : TensorProduct R C C) :
        (tensorPairComponent phi psi) (m ⊗ₜ[R] t) = (pairCoeff phi psi) t m

        Applying two tensor components successively is applying their pair after reassociation.

        Taking a tensor component commutes with a coaction on the other factor.

        noncomputable def TauCeti.Comodule.coactComponent {R : Type u} {C : Type v} {M : Type w} [CommSemiring R] [AddCommMonoid C] [Module R C] [Coalgebra R C] [AddCommMonoid M] [Module R M] [Comodule R C M] (phi : C →ₗ[R] R) :

        The component of a coaction selected by a linear functional on the coalgebra.

        Equations
        Instances For
          theorem TauCeti.Comodule.coactComponent_apply {R : Type u} {C : Type v} {M : Type w} [CommSemiring R] [AddCommMonoid C] [Module R C] [Coalgebra R C] [AddCommMonoid M] [Module R M] [Comodule R C M] (phi : C →ₗ[R] R) (m : M) :
          theorem TauCeti.Comodule.coactComponent_coactComponent {R : Type u} {C : Type v} {M : Type w} [CommSemiring R] [AddCommMonoid C] [Module R C] [Coalgebra R C] [AddCommMonoid M] [Module R M] [Comodule R C M] (phi psi : C →ₗ[R] R) (m : M) :

          Coassociativity read off by two linear functionals on the coalgebra.

          Contracting a pair component after comultiplication uses the corresponding contraction of the two coefficient functionals.

          @[instance_reducible]
          instance TauCeti.Comodule.instSelf (R : Type u) (C : Type v) [CommSemiring R] [AddCommMonoid C] [Module R C] [Coalgebra R C] :
          Comodule R C C

          The regular right comodule of a coalgebra over itself, with coaction given by the coalgebra comultiplication.

          Equations
          @[simp]

          The coaction of the regular right comodule is the coalgebra comultiplication.

          structure TauCeti.Comodule.Hom (R : Type u) (C : Type v) (M : Type w) (N : Type x) [CommSemiring R] [AddCommMonoid C] [Module R C] [Coalgebra R C] [AddCommMonoid M] [Module R M] [Comodule R C M] [AddCommMonoid N] [Module R N] [Comodule R C N] extends M →ₗ[R] N :
          Type (max w x)

          A morphism of right comodules over a fixed coalgebra.

          Instances For
            @[instance_reducible]
            instance TauCeti.Comodule.Hom.funLike {R : Type u} {C : Type v} {M : Type w} {N : Type x} [CommSemiring R] [AddCommMonoid C] [Module R C] [Coalgebra R C] [AddCommMonoid M] [Module R M] [Comodule R C M] [AddCommMonoid N] [Module R N] [Comodule R C N] :
            FunLike (Hom R C M N) M N
            Equations
            def TauCeti.Comodule.Hom.Simps.apply {R : Type u} {C : Type v} {M : Type w} {N : Type x} [CommSemiring R] [AddCommMonoid C] [Module R C] [Coalgebra R C] [AddCommMonoid M] [Module R M] [Comodule R C M] [AddCommMonoid N] [Module R N] [Comodule R C N] (f : Hom R C M N) :
            MN

            See Note [custom simps projection].

            Equations
            Instances For
              @[simp]
              theorem TauCeti.Comodule.Hom.coe_mk {R : Type u} {C : Type v} {M : Type w} {N : Type x} [CommSemiring R] [AddCommMonoid C] [Module R C] [Coalgebra R C] [AddCommMonoid M] [Module R M] [Comodule R C M] [AddCommMonoid N] [Module R N] [Comodule R C N] {f : M →ₗ[R] N} (h : TensorProduct.map f LinearMap.id ∘ₗ coact = coact ∘ₗ f) :
              { toLinearMap := f, map_coact := h } = f
              @[simp]
              theorem TauCeti.Comodule.Hom.coe_toLinearMap {R : Type u} {C : Type v} {M : Type w} {N : Type x} [CommSemiring R] [AddCommMonoid C] [Module R C] [Coalgebra R C] [AddCommMonoid M] [Module R M] [Comodule R C M] [AddCommMonoid N] [Module R N] [Comodule R C N] (f : Hom R C M N) :
              f.toLinearMap = f

              A comodule morphism is determined by its underlying linear map.

              theorem TauCeti.Comodule.Hom.ext {R : Type u} {C : Type v} {M : Type w} {N : Type x} [CommSemiring R] [AddCommMonoid C] [Module R C] [Coalgebra R C] [AddCommMonoid M] [Module R M] [Comodule R C M] [AddCommMonoid N] [Module R N] [Comodule R C N] {f g : Hom R C M N} (h : ∀ (m : M), f m = g m) :
              f = g

              Two comodule morphisms are equal when their underlying functions are equal.

              theorem TauCeti.Comodule.Hom.ext_iff {R : Type u} {C : Type v} {M : Type w} {N : Type x} [CommSemiring R] [AddCommMonoid C] [Module R C] [Coalgebra R C] [AddCommMonoid M] [Module R M] [Comodule R C M] [AddCommMonoid N] [Module R N] [Comodule R C N] {f g : Hom R C M N} :
              f = g ∀ (m : M), f m = g m
              @[simp]

              A comodule morphism commutes with coactions, as an equality of linear maps.

              @[simp]
              theorem TauCeti.Comodule.Hom.map_coact_apply {R : Type u} {C : Type v} {M : Type w} {N : Type x} [CommSemiring R] [AddCommMonoid C] [Module R C] [Coalgebra R C] [AddCommMonoid M] [Module R M] [Comodule R C M] [AddCommMonoid N] [Module R N] [Comodule R C N] (f : Hom R C M N) (m : M) :

              A comodule morphism commutes with coactions, evaluated at a vector.

              def TauCeti.Comodule.Hom.id (R : Type u) (C : Type v) (M : Type w) [CommSemiring R] [AddCommMonoid C] [Module R C] [Coalgebra R C] [AddCommMonoid M] [Module R M] [Comodule R C M] :
              Hom R C M M

              The identity morphism of a right comodule.

              Equations
              Instances For
                @[simp]
                theorem TauCeti.Comodule.Hom.id_apply (R : Type u) (C : Type v) (M : Type w) [CommSemiring R] [AddCommMonoid C] [Module R C] [Coalgebra R C] [AddCommMonoid M] [Module R M] [Comodule R C M] (x : M) :
                (id R C M) x = x
                def TauCeti.Comodule.Hom.comp {R : Type u} {C : Type v} {M : Type w} {N : Type x} [CommSemiring R] [AddCommMonoid C] [Module R C] [Coalgebra R C] [AddCommMonoid M] [Module R M] [Comodule R C M] [AddCommMonoid N] [Module R N] [Comodule R C N] {P : Type u_1} [AddCommMonoid P] [Module R P] [Comodule R C P] (g : Hom R C N P) (f : Hom R C M N) :
                Hom R C M P

                Composition of right-comodule morphisms.

                Equations
                Instances For
                  @[simp]
                  theorem TauCeti.Comodule.Hom.comp_apply {R : Type u} {C : Type v} {M : Type w} {N : Type x} [CommSemiring R] [AddCommMonoid C] [Module R C] [Coalgebra R C] [AddCommMonoid M] [Module R M] [Comodule R C M] [AddCommMonoid N] [Module R N] [Comodule R C N] {P : Type u_1} [AddCommMonoid P] [Module R P] [Comodule R C P] (g : Hom R C N P) (f : Hom R C M N) (x : M) :
                  (g.comp f) x = g (f x)
                  @[simp]

                  The underlying linear map of the identity morphism is the identity linear map.

                  @[simp]
                  theorem TauCeti.Comodule.Hom.comp_toLinearMap {R : Type u} {C : Type v} {M : Type w} {N : Type x} [CommSemiring R] [AddCommMonoid C] [Module R C] [Coalgebra R C] [AddCommMonoid M] [Module R M] [Comodule R C M] [AddCommMonoid N] [Module R N] [Comodule R C N] {P : Type u_1} [AddCommMonoid P] [Module R P] [Comodule R C P] (g : Hom R C N P) (f : Hom R C M N) :

                  The underlying linear map of a composition is the composition of the underlying linear maps.

                  @[simp]
                  theorem TauCeti.Comodule.Hom.id_comp {R : Type u} {C : Type v} {M : Type w} {N : Type x} [CommSemiring R] [AddCommMonoid C] [Module R C] [Coalgebra R C] [AddCommMonoid M] [Module R M] [Comodule R C M] [AddCommMonoid N] [Module R N] [Comodule R C N] (f : Hom R C M N) :
                  (id R C N).comp f = f
                  @[simp]
                  theorem TauCeti.Comodule.Hom.comp_id {R : Type u} {C : Type v} {M : Type w} {N : Type x} [CommSemiring R] [AddCommMonoid C] [Module R C] [Coalgebra R C] [AddCommMonoid M] [Module R M] [Comodule R C M] [AddCommMonoid N] [Module R N] [Comodule R C N] (f : Hom R C M N) :
                  f.comp (id R C M) = f
                  @[simp]
                  theorem TauCeti.Comodule.Hom.comp_assoc {R : Type u} {C : Type v} {M : Type w} {N : Type x} [CommSemiring R] [AddCommMonoid C] [Module R C] [Coalgebra R C] [AddCommMonoid M] [Module R M] [Comodule R C M] [AddCommMonoid N] [Module R N] [Comodule R C N] {P : Type u_1} {Q : Type u_2} [AddCommMonoid P] [Module R P] [Comodule R C P] [AddCommMonoid Q] [Module R Q] [Comodule R C Q] (h : Hom R C P Q) (g : Hom R C N P) (f : Hom R C M N) :
                  (h.comp g).comp f = h.comp (g.comp f)