Theorem: IsLocalizedModule.map_LocalizedModules
File: Mathlib/Algebra/Module/LocalizedModule.lean

tactic: have := (iso_apply_mk S (mkLinearMap S M₁) (g m) s).symm
state_before: R : Type u_1
inst✝²⁷ : CommSemiring R
S : Submonoid R
M : Type u_2
M' : Type u_3
M'' : Type u_4
inst✝²⁶ : AddCommMonoid M
inst✝²⁵ : AddCommMonoid M'
inst✝²⁴ : AddCommMonoid M''
A : Type u_5
inst✝²³ : CommSemiring A
inst✝²² : Algebra R A
inst✝²¹ : Module A M'
inst✝²⁰ : IsLocalization S A
inst✝¹⁹ : Module R M
inst✝¹⁸ : Module R M'
inst✝¹⁷ : Module R M''
inst✝¹⁶ : IsScalarTower R A M'
f : M →ₗ[R] M'
g✝¹ : M →ₗ[R] M''
inst✝¹⁵ : IsLocalizedModule S f
N : Type ?u.1086287
N' : Type ?u.1086290
inst✝¹⁴ : AddCommGroup N
inst✝¹³ : AddCommGroup N'
inst✝¹² : Module R N
inst✝¹¹ : Module R N'
g✝ : N →ₗ[R] N'
inst✝¹⁰ : IsLocalizedModule S g✝
M₀ : Type u_6
M₀' : Type ?u.1088359
inst✝⁹ : AddCommGroup M₀
inst✝⁸ : AddCommGroup M₀'
inst✝⁷ : Module R M₀
inst✝⁶ : Module R M₀'
f₀ : M₀ →ₗ[R] M₀'
inst✝⁵ : IsLocalizedModule S f₀
M₁ : Type u_7
M₁' : Type ?u.1090428
inst✝⁴ : AddCommGroup M₁
inst✝³ : AddCommGroup M₁'
inst✝² : Module R M₁
inst✝¹ : Module R M₁'
f₁ : M₁ →ₗ[R] M₁'
inst✝ : IsLocalizedModule S f₁
g : M₀ →ₗ[R] M₁
m : M₀
s : ↥S
⊢ ((map S (mkLinearMap S M₀) (mkLinearMap S M₁)) g) (LocalizedModule.mk m s) = LocalizedModule.mk (g m) s
state_after: R : Type u_1
inst✝²⁷ : CommSemiring R
S : Submonoid R
M : Type u_2
M' : Type u_3
M'' : Type u_4
inst✝²⁶ : AddCommMonoid M
inst✝²⁵ : AddCommMonoid M'
inst✝²⁴ : AddCommMonoid M''
A : Type u_5
inst✝²³ : CommSemiring A
inst✝²² : Algebra R A
inst✝²¹ : Module A M'
inst✝²⁰ : IsLocalization S A
inst✝¹⁹ : Module R M
inst✝¹⁸ : Module R M'
inst✝¹⁷ : Module R M''
inst✝¹⁶ : IsScalarTower R A M'
f : M →ₗ[R] M'
g✝¹ : M →ₗ[R] M''
inst✝¹⁵ : IsLocalizedModule S f
N : Type ?u.1086287
N' : Type ?u.1086290
inst✝¹⁴ : AddCommGroup N
inst✝¹³ : AddCommGroup N'
inst✝¹² : Module R N
inst✝¹¹ : Module R N'
g✝ : N →ₗ[R] N'
inst✝¹⁰ : IsLocalizedModule S g✝
M₀ : Type u_6
M₀' : Type ?u.1088359
inst✝⁹ : AddCommGroup M₀
inst✝⁸ : AddCommGroup M₀'
inst✝⁷ : Module R M₀
inst✝⁶ : Module R M₀'
f₀ : M₀ →ₗ[R] M₀'
inst✝⁵ : IsLocalizedModule S f₀
M₁ : Type u_7
M₁' : Type ?u.1090428
inst✝⁴ : AddCommGroup M₁
inst✝³ : AddCommGroup M₁'
inst✝² : Module R M₁
inst✝¹ : Module R M₁'
f₁ : M₁ →ₗ[R] M₁'
inst✝ : IsLocalizedModule S f₁
g : M₀ →ₗ[R] M₁
m : M₀
s : ↥S
this : ↑⋯.unit⁻¹ ((mkLinearMap S M₁) (g m)) = (iso S (mkLinearMap S M₁)) (LocalizedModule.mk (g m) s)
⊢ ((map S (mkLinearMap S M₀) (mkLinearMap S M₁)) g) (LocalizedModule.mk m s) = LocalizedModule.mk (g m) s

tactic: rw [iso_localizedModule_eq_refl, refl_apply] at this
state_before: R : Type u_1
inst✝²⁷ : CommSemiring R
S : Submonoid R
M : Type u_2
M' : Type u_3
M'' : Type u_4
inst✝²⁶ : AddCommMonoid M
inst✝²⁵ : AddCommMonoid M'
inst✝²⁴ : AddCommMonoid M''
A : Type u_5
inst✝²³ : CommSemiring A
inst✝²² : Algebra R A
inst✝²¹ : Module A M'
inst✝²⁰ : IsLocalization S A
inst✝¹⁹ : Module R M
inst✝¹⁸ : Module R M'
inst✝¹⁷ : Module R M''
inst✝¹⁶ : IsScalarTower R A M'
f : M →ₗ[R] M'
g✝¹ : M →ₗ[R] M''
inst✝¹⁵ : IsLocalizedModule S f
N : Type ?u.1086287
N' : Type ?u.1086290
inst✝¹⁴ : AddCommGroup N
inst✝¹³ : AddCommGroup N'
inst✝¹² : Module R N
inst✝¹¹ : Module R N'
g✝ : N →ₗ[R] N'
inst✝¹⁰ : IsLocalizedModule S g✝
M₀ : Type u_6
M₀' : Type ?u.1088359
inst✝⁹ : AddCommGroup M₀
inst✝⁸ : AddCommGroup M₀'
inst✝⁷ : Module R M₀
inst✝⁶ : Module R M₀'
f₀ : M₀ →ₗ[R] M₀'
inst✝⁵ : IsLocalizedModule S f₀
M₁ : Type u_7
M₁' : Type ?u.1090428
inst✝⁴ : AddCommGroup M₁
inst✝³ : AddCommGroup M₁'
inst✝² : Module R M₁
inst✝¹ : Module R M₁'
f₁ : M₁ →ₗ[R] M₁'
inst✝ : IsLocalizedModule S f₁
g : M₀ →ₗ[R] M₁
m : M₀
s : ↥S
this : ↑⋯.unit⁻¹ ((mkLinearMap S M₁) (g m)) = (iso S (mkLinearMap S M₁)) (LocalizedModule.mk (g m) s)
⊢ ((map S (mkLinearMap S M₀) (mkLinearMap S M₁)) g) (LocalizedModule.mk m s) = LocalizedModule.mk (g m) s
state_after: R : Type u_1
inst✝²⁷ : CommSemiring R
S : Submonoid R
M : Type u_2
M' : Type u_3
M'' : Type u_4
inst✝²⁶ : AddCommMonoid M
inst✝²⁵ : AddCommMonoid M'
inst✝²⁴ : AddCommMonoid M''
A : Type u_5
inst✝²³ : CommSemiring A
inst✝²² : Algebra R A
inst✝²¹ : Module A M'
inst✝²⁰ : IsLocalization S A
inst✝¹⁹ : Module R M
inst✝¹⁸ : Module R M'
inst✝¹⁷ : Module R M''
inst✝¹⁶ : IsScalarTower R A M'
f : M →ₗ[R] M'
g✝¹ : M →ₗ[R] M''
inst✝¹⁵ : IsLocalizedModule S f
N : Type ?u.1086287
N' : Type ?u.1086290
inst✝¹⁴ : AddCommGroup N
inst✝¹³ : AddCommGroup N'
inst✝¹² : Module R N
inst✝¹¹ : Module R N'
g✝ : N →ₗ[R] N'
inst✝¹⁰ : IsLocalizedModule S g✝
M₀ : Type u_6
M₀' : Type ?u.1088359
inst✝⁹ : AddCommGroup M₀
inst✝⁸ : AddCommGroup M₀'
inst✝⁷ : Module R M₀
inst✝⁶ : Module R M₀'
f₀ : M₀ →ₗ[R] M₀'
inst✝⁵ : IsLocalizedModule S f₀
M₁ : Type u_7
M₁' : Type ?u.1090428
inst✝⁴ : AddCommGroup M₁
inst✝³ : AddCommGroup M₁'
inst✝² : Module R M₁
inst✝¹ : Module R M₁'
f₁ : M₁ →ₗ[R] M₁'
inst✝ : IsLocalizedModule S f₁
g : M₀ →ₗ[R] M₁
m : M₀
s : ↥S
this : ↑⋯.unit⁻¹ ((mkLinearMap S M₁) (g m)) = LocalizedModule.mk (g m) s
⊢ ((map S (mkLinearMap S M₀) (mkLinearMap S M₁)) g) (LocalizedModule.mk m s) = LocalizedModule.mk (g m) s

tactic: simpa [map, lift, iso_localizedModule_eq_refl S M₀]
state_before: R : Type u_1
inst✝²⁷ : CommSemiring R
S : Submonoid R
M : Type u_2
M' : Type u_3
M'' : Type u_4
inst✝²⁶ : AddCommMonoid M
inst✝²⁵ : AddCommMonoid M'
inst✝²⁴ : AddCommMonoid M''
A : Type u_5
inst✝²³ : CommSemiring A
inst✝²² : Algebra R A
inst✝²¹ : Module A M'
inst✝²⁰ : IsLocalization S A
inst✝¹⁹ : Module R M
inst✝¹⁸ : Module R M'
inst✝¹⁷ : Module R M''
inst✝¹⁶ : IsScalarTower R A M'
f : M →ₗ[R] M'
g✝¹ : M →ₗ[R] M''
inst✝¹⁵ : IsLocalizedModule S f
N : Type ?u.1086287
N' : Type ?u.1086290
inst✝¹⁴ : AddCommGroup N
inst✝¹³ : AddCommGroup N'
inst✝¹² : Module R N
inst✝¹¹ : Module R N'
g✝ : N →ₗ[R] N'
inst✝¹⁰ : IsLocalizedModule S g✝
M₀ : Type u_6
M₀' : Type ?u.1088359
inst✝⁹ : AddCommGroup M₀
inst✝⁸ : AddCommGroup M₀'
inst✝⁷ : Module R M₀
inst✝⁶ : Module R M₀'
f₀ : M₀ →ₗ[R] M₀'
inst✝⁵ : IsLocalizedModule S f₀
M₁ : Type u_7
M₁' : Type ?u.1090428
inst✝⁴ : AddCommGroup M₁
inst✝³ : AddCommGroup M₁'
inst✝² : Module R M₁
inst✝¹ : Module R M₁'
f₁ : M₁ →ₗ[R] M₁'
inst✝ : IsLocalizedModule S f₁
g : M₀ →ₗ[R] M₁
m : M₀
s : ↥S
this : ↑⋯.unit⁻¹ ((mkLinearMap S M₁) (g m)) = LocalizedModule.mk (g m) s
⊢ ((map S (mkLinearMap S M₀) (mkLinearMap S M₁)) g) (LocalizedModule.mk m s) = LocalizedModule.mk (g m) s
state_after: no goals