Documentation

Mathlib.Algebra.Module.Hom

Bundled Hom instances for module and multiplicative actions #

This file defines instances for Module on bundled Hom types.

These are analogous to the instances in Algebra.Module.Pi, but for bundled instead of unbundled functions.

We also define a bundled versions of (ยท โ€ข ยท) as AddMonoidHom.smul.

instance ZeroHom.instModule {R : Type u_1} {A : Type u_4} {B : Type u_5} [Semiring R] [AddMonoid A] [AddCommMonoid B] [Module R B] :
Module R (ZeroHom A B)
Equations

    Instances for AddMonoidHom #

    instance AddMonoidHom.instModule {R : Type u_1} {A : Type u_4} {B : Type u_5} [Semiring R] [AddMonoid A] [AddCommMonoid B] [Module R B] :
    Equations
      instance AddMonoidHom.instDomMulActModule {S : Type u_6} {M : Type u_7} {Mโ‚‚ : Type u_8} [Semiring S] [AddCommMonoid M] [AddCommMonoid Mโ‚‚] [Module S M] :
      Equations

        Instances for AddMonoid.End #

        These are direct copies of the instances above.

        @[simp]
        theorem AddMonoid.End.coe_smul {R : Type u_1} {A : Type u_4} [Monoid R] [AddCommMonoid A] [DistribMulAction R A] (r : R) (f : AddMonoid.End A) :
        โ‡‘(r โ€ข f) = r โ€ข โ‡‘f
        theorem AddMonoid.End.smul_apply {R : Type u_1} {A : Type u_4} [Monoid R] [AddCommMonoid A] [DistribMulAction R A] (r : R) (f : AddMonoid.End A) (x : A) :
        (r โ€ข f) x = r โ€ข f x

        The tautological action by AddMonoid.End ฮฑ on ฮฑ.

        This generalizes AddMonoid.End.applyDistribMulAction.

        Equations

          Miscellaneous morphisms #

          @[deprecated DistribSMul.toAddMonoidHom (since := "2026-01-07")]
          def AddMonoidHom.smulLeft {M : Type u_3} {A : Type u_4} [AddMonoid A] [DistribSMul M A] (c : M) :

          Scalar multiplication on the left as an additive monoid homomorphism.

          See also the linear map version of this Module.End.smulLeft.

          Equations
            Instances For
              @[simp]
              theorem AddMonoidHom.smulLeft_apply {M : Type u_3} {A : Type u_4} [AddMonoid A] [DistribSMul M A] (c : M) :
              โ‡‘(AddMonoidHom.smulLeft c) = fun (x : A) => c โ€ข x
              def AddMonoidHom.smul {R : Type u_1} {M : Type u_3} [Semiring R] [AddCommMonoid M] [Module R M] :

              Scalar multiplication as a biadditive monoid homomorphism. We need M to be commutative to have addition on M โ†’+ M.

              Equations
                Instances For