Documentation

Mathlib.Algebra.Module.End

Module structure and endomorphisms #

In this file, we define Module.toAddMonoidEnd, which is (•) as a monoid homomorphism. We use this to prove some results on scalar multiplication by integers.

def Module.toAddMonoidEnd (R : Type u_1) (M : Type u_3) [Semiring R] [AddCommMonoid M] [Module R M] :

(•) as an AddMonoidHom.

This is a stronger version of DistribMulAction.toAddMonoidEnd

Equations
Instances For
    @[simp]
    theorem Module.toAddMonoidEnd_apply_apply (R : Type u_1) (M : Type u_3) [Semiring R] [AddCommMonoid M] [Module R M] (x : R) (x✝ : M) :
    ((toAddMonoidEnd R M) x) x✝ = x x✝
    def smulAddHom (R : Type u_1) (M : Type u_3) [Semiring R] [AddCommMonoid M] [Module R M] :
    R →+ M →+ M

    A convenience alias for Module.toAddMonoidEnd as an AddMonoidHom, usually to allow the use of AddMonoidHom.flip.

    Equations
    Instances For
      @[simp]
      theorem smulAddHom_apply {R : Type u_1} {M : Type u_3} [Semiring R] [AddCommMonoid M] [Module R M] (r : R) (x : M) :
      ((smulAddHom R M) r) x = r x
      theorem IsAddUnit.smul_left {S : Type u_2} {M : Type u_3} [AddCommMonoid M] {x : M} [Monoid S] [DistribMulAction S M] (hx : IsAddUnit x) (s : S) :
      theorem IsAddUnit.smul_right {R : Type u_1} {M : Type u_3} [Semiring R] [AddCommMonoid M] [Module R M] {r : R} (x : M) (hr : IsAddUnit r) :