Documentation

Mathlib.LinearAlgebra.TensorProduct.Quotient

Interaction between Quotients and Tensor Products #

This file contains constructions that relate quotients and tensor products. Let M, N be R-modules, m ≤ M and n ≤ N be an R-submodules and I ≤ R an ideal. We prove the following isomorphisms:

Main results #

Tags #

Quotient, Tensor Product

noncomputable def TensorProduct.quotientTensorQuotientEquiv {R : Type u_1} {M : Type u_2} {N : Type u_3} [CommRing R] [AddCommGroup M] [Module R M] [AddCommGroup N] [Module R N] (m : Submodule R M) (n : Submodule R N) :
TensorProduct R (M m) (N n) ≃ₗ[R] TensorProduct R M N LinearMap.range (TensorProduct.map m.subtype LinearMap.id) LinearMap.range (TensorProduct.map LinearMap.id n.subtype)

Let M, N be R-modules, m ≤ M and n ≤ N be an R-submodules. Then we have a linear isomorphism between tensor products of the quotients and the quotient of the tensor product: (M ⧸ m) ⊗[R] (N ⧸ n) ≃ₗ[R] (M ⊗[R] N) ⧸ (m ⊗ N ⊔ M ⊗ n).

Equations
  • One or more equations did not get rendered due to their size.
Instances For
    noncomputable def TensorProduct.quotientTensorEquiv {R : Type u_1} {M : Type u_2} (N : Type u_3) [CommRing R] [AddCommGroup M] [Module R M] [AddCommGroup N] [Module R N] (m : Submodule R M) :
    TensorProduct R (M m) N ≃ₗ[R] TensorProduct R M N LinearMap.range (TensorProduct.map m.subtype LinearMap.id)

    Let M, N be R-modules, m ≤ M be an R-submodule. Then we have a linear isomorphism between tensor products of the quotient and the quotient of the tensor product: (M ⧸ m) ⊗[R] N ≃ₗ[R] (M ⊗[R] N) ⧸ (m ⊗ N).

    Equations
    • One or more equations did not get rendered due to their size.
    Instances For
      noncomputable def TensorProduct.tensorQuotientEquiv {R : Type u_1} (M : Type u_2) {N : Type u_3} [CommRing R] [AddCommGroup M] [Module R M] [AddCommGroup N] [Module R N] (n : Submodule R N) :
      TensorProduct R M (N n) ≃ₗ[R] TensorProduct R M N LinearMap.range (TensorProduct.map LinearMap.id n.subtype)

      Let M, N be R-modules, n ≤ N be an R-submodule. Then we have a linear isomorphism between tensor products of the quotient and the quotient of the tensor product: M ⊗[R] (N ⧸ n) ≃ₗ[R] (M ⊗[R] N) ⧸ (M ⊗ n).

      Equations
      • One or more equations did not get rendered due to their size.
      Instances For
        noncomputable def TensorProduct.quotTensorEquivQuotSMul {R : Type u_1} (M : Type u_2) [CommRing R] [AddCommGroup M] [Module R M] (I : Ideal R) :

        Left tensoring a module with a quotient of the ring is the same as quotienting that module by the corresponding submodule.

        Equations
        • One or more equations did not get rendered due to their size.
        Instances For
          noncomputable def TensorProduct.tensorQuotEquivQuotSMul {R : Type u_1} (M : Type u_2) [CommRing R] [AddCommGroup M] [Module R M] (I : Ideal R) :

          Right tensoring a module with a quotient of the ring is the same as quotienting that module by the corresponding submodule.

          Equations
          Instances For
            theorem TensorProduct.quotTensorEquivQuotSMul_symm_comp_mkQ {R : Type u_1} {M : Type u_2} [CommRing R] [AddCommGroup M] [Module R M] (I : Ideal R) :
            (TensorProduct.quotTensorEquivQuotSMul M I).symm ∘ₗ (I ).mkQ = (TensorProduct.mk R (R I) M) 1
            theorem TensorProduct.tensorQuotEquivQuotSMul_symm_comp_mkQ {R : Type u_1} {M : Type u_2} [CommRing R] [AddCommGroup M] [Module R M] (I : Ideal R) :
            (TensorProduct.tensorQuotEquivQuotSMul M I).symm ∘ₗ (I ).mkQ = (TensorProduct.mk R M (R I)).flip 1
            theorem TensorProduct.tensorQuotEquivQuotSMul_comp_mk {R : Type u_1} {M : Type u_2} [CommRing R] [AddCommGroup M] [Module R M] (I : Ideal R) :
            (TensorProduct.tensorQuotEquivQuotSMul M I) ∘ₗ (TensorProduct.mk R M (R I)).flip 1 = (I ).mkQ