Lifting linear maps from base-changed modules #
This file defines the lift of an R-linear map from M to an A-module N to an A-linear
map from A ⊗[R] M to N.
def
LinearMap.liftBaseChangeEquiv
{R : Type u_1}
{M : Type u_2}
{N : Type u_3}
(A : Type u_4)
[CommSemiring R]
[CommSemiring A]
[Algebra R A]
[AddCommMonoid M]
[AddCommMonoid N]
[Module R M]
[Module R N]
[Module A N]
[IsScalarTower R A N]
:
If M is an R-module and N is an A-module, then A-linear maps
A ⊗[R] M →ₗ[A] N correspond to R-linear maps M →ₗ[R] N by composing with
M → A ⊗[R] M, x ↦ 1 ⊗ₜ x.
Equations
- LinearMap.liftBaseChangeEquiv A = (LinearMap.ringLmapEquivSelf A A (M →ₗ[R] N)).symm.trans (TensorProduct.AlgebraTensorModule.lift.equiv R A A A M N)
Instances For
@[reducible, inline]
abbrev
LinearMap.liftBaseChange
{R : Type u_1}
{M : Type u_2}
{N : Type u_3}
(A : Type u_4)
[CommSemiring R]
[CommSemiring A]
[Algebra R A]
[AddCommMonoid M]
[AddCommMonoid N]
[Module R M]
[Module R N]
[Module A N]
[IsScalarTower R A N]
(l : M →ₗ[R] N)
:
If N is an A-module, lift a linear map M →ₗ[R] N to A ⊗[R] M →ₗ[A] N.
Equations
Instances For
@[simp]
theorem
LinearMap.liftBaseChange_tmul
{R : Type u_1}
{M : Type u_2}
{N : Type u_3}
(A : Type u_4)
[CommSemiring R]
[CommSemiring A]
[Algebra R A]
[AddCommMonoid M]
[AddCommMonoid N]
[Module R M]
[Module R N]
[Module A N]
[IsScalarTower R A N]
(l : M →ₗ[R] N)
(x : A)
(y : M)
:
theorem
LinearMap.liftBaseChange_one_tmul
{R : Type u_1}
{M : Type u_2}
{N : Type u_3}
(A : Type u_4)
[CommSemiring R]
[CommSemiring A]
[Algebra R A]
[AddCommMonoid M]
[AddCommMonoid N]
[Module R M]
[Module R N]
[Module A N]
[IsScalarTower R A N]
(l : M →ₗ[R] N)
(y : M)
:
@[simp]
theorem
LinearMap.liftBaseChangeEquiv_symm_apply
{R : Type u_4}
{M : Type u_2}
{N : Type u_3}
(A : Type u_1)
[CommSemiring R]
[CommSemiring A]
[Algebra R A]
[AddCommMonoid M]
[AddCommMonoid N]
[Module R M]
[Module R N]
[Module A N]
[IsScalarTower R A N]
(l : TensorProduct R A M →ₗ[A] N)
(x : M)
:
theorem
LinearMap.liftBaseChange_comp
{R : Type u_3}
{M : Type u_4}
{N : Type u_5}
(A : Type u_2)
[CommSemiring R]
[CommSemiring A]
[Algebra R A]
[AddCommMonoid M]
[AddCommMonoid N]
[Module R M]
[Module R N]
[Module A N]
[IsScalarTower R A N]
{P : Type u_1}
[AddCommMonoid P]
[Module A P]
[Module R P]
[IsScalarTower R A P]
(l : M →ₗ[R] N)
(l' : N →ₗ[A] P)
:
@[simp]
theorem
LinearMap.range_liftBaseChange
{R : Type u_1}
{M : Type u_2}
{N : Type u_3}
(A : Type u_4)
[CommSemiring R]
[CommSemiring A]
[Algebra R A]
[AddCommMonoid M]
[AddCommMonoid N]
[Module R M]
[Module R N]
[Module A N]
[IsScalarTower R A N]
(l : M →ₗ[R] N)
: