Mₙ(R)-module structure on Mⁿ #
Main Results #
Matrix.Module.matrixModule: This instance showsι → Mis a module overMatrix ι ι R, and the action of it is a generalization ofMatrix.mulVec, this is only available in theMatrix.Modulenamespace.LinearMap.mapMatrixModule: This defines a linear map fromι → Mtoι → NoverMatrix ι ι Rinduced by a linear map fromMtoNand together withMatrix.matrixModuleit gives a functor from the category ofR-modules to the category ofMatrix ι ι R-modules.
Tags #
matrix, module
@[instance_reducible]
def Matrix.Module.matrixModule {ι : Type u_1} {R : Type u_2} {M : Type u_3} [Ring R] [Fintype ι] [DecidableEq ι] [AddCommGroup M] [Module R M] :
Mⁿ is a Mₙ(R) module, note that this creates a diamond when M is Matrix ι ι R or when
M is R.
Equations
- One or more equations did not get rendered due to their size.
Instances For
theorem Matrix.Module.smul_def {ι : Type u_1} {R : Type u_2} {M : Type u_3} [Ring R] [Fintype ι] [DecidableEq ι] [AddCommGroup M] [Module R M] (N : Matrix ι ι R) (v : ι → M) :
theorem Matrix.Module.smul_def' {ι : Type u_1} {R : Type u_2} {M : Type u_3} [Ring R] [Fintype ι] [DecidableEq ι] [AddCommGroup M] [Module R M] (N : Matrix ι ι R) (v : ι → M) :
@[simp]
theorem Matrix.Module.smul_apply {ι : Type u_1} {R : Type u_2} {M : Type u_3} [Ring R] [Fintype ι] [DecidableEq ι] [AddCommGroup M] [Module R M] (N : Matrix ι ι R) (v : ι → M) (i : ι) :
@[simp]
theorem Matrix.Module.single_smul {ι : Type u_1} {R : Type u_2} {M : Type u_3} [Ring R] [Fintype ι] [DecidableEq ι] [AddCommGroup M] [Module R M] (i j : ι) (r : R) (v : ι → M) :
@[simp]
theorem Matrix.Module.diagonal_const_smul {ι : Type u_1} {R : Type u_2} {M : Type u_3} [Ring R] [Fintype ι] [DecidableEq ι] [AddCommGroup M] [Module R M] (r : R) (v : ι → M) :
theorem Matrix.Module.scalar_smul {ι : Type u_1} {R : Type u_2} {M : Type u_3} [Ring R] [Fintype ι] [DecidableEq ι] [AddCommGroup M] [Module R M] (r : R) (v : ι → M) :
theorem Matrix.Module.instIsScalarTowerForall {ι : Type u_1} {R : Type u_2} {M : Type u_3} [Ring R] [Fintype ι] [DecidableEq ι] [AddCommGroup M] [Module R M] (S : Type u_6) [Ring S] [SMul R S] [Module S M] [IsScalarTower R S M] :
IsScalarTower R (Matrix ι ι S) (ι → M)
def LinearMap.mapMatrixModule (ι : Type u_1) {R : Type u_2} {M : Type u_3} {N : Type u_4} [Ring R] [Fintype ι] [DecidableEq ι] [AddCommGroup M] [Module R M] [AddCommGroup N] [Module R N] (f : M →ₗ[R] N) :
The induced linear map from Mⁿ to Nⁿ by a linear map f : M → N, this is the matrix linear
version of LinearMap.compLeft.
Equations
- LinearMap.mapMatrixModule ι f = { toFun := ⇑(f.compLeft ι), map_add' := ⋯, map_smul' := ⋯ }
Instances For
@[simp]
theorem LinearMap.mapMatrixModule_apply (ι : Type u_1) {R : Type u_2} {M : Type u_3} {N : Type u_4} [Ring R] [Fintype ι] [DecidableEq ι] [AddCommGroup M] [Module R M] [AddCommGroup N] [Module R N] (f : M →ₗ[R] N) (a : ι → M) (a✝ : ι) :
@[simp]
theorem LinearMap.mapMatrixModule_id {ι : Type u_1} {R : Type u_2} {M : Type u_3} [Ring R] [Fintype ι] [DecidableEq ι] [AddCommGroup M] [Module R M] :
theorem LinearMap.mapMatrixModule_id_apply {ι : Type u_1} {R : Type u_2} {M : Type u_3} [Ring R] [Fintype ι] [DecidableEq ι] [AddCommGroup M] [Module R M] (v : ι → M) :
theorem LinearMap.mapMatrixModule_comp {ι : Type u_1} {R : Type u_2} {M : Type u_3} {N : Type u_4} {P : Type u_5} [Ring R] [Fintype ι] [DecidableEq ι] [AddCommGroup M] [Module R M] [AddCommGroup N] [Module R N] [AddCommGroup P] [Module R P] (f : M →ₗ[R] N) (g : N →ₗ[R] P) :
@[simp]
theorem LinearMap.mapMatrixModule_comp_apply {ι : Type u_1} {R : Type u_2} {M : Type u_3} {N : Type u_4} {P : Type u_5} [Ring R] [Fintype ι] [DecidableEq ι] [AddCommGroup M] [Module R M] [AddCommGroup N] [Module R N] [AddCommGroup P] [Module R P] (f : M →ₗ[R] N) (g : N →ₗ[R] P) (v : ι → M) :