ruc-ai4math/mathlib_handler_benchmark_410 huggingface dataset:
-- Mathlib/Algebra/Group/Hom/Basic.lean
α : Type u_1
β : Type u_2
M : Type u_3
N : Type u_4
P : Type u_5
G : Type u_6
H : Type u_7
F : Type u_8
inst✝³ : MulOneClass M
inst✝² : MulOneClass N
inst✝¹ : CommGroup G
inst✝ : CommGroup H
f : G →* H
g h : M →* G
x✝ : M

⊢ (f.comp (g / h)) x✝ = (f.comp g / f.comp h) x✝
-- Mathlib/Data/Int/GCD.lean
a b c : ℤ
habc : a ∣ b * c
hab : a.gcd b = 1

⊢ a ∣ c
-- Mathlib/Data/Int/GCD.lean
a b c : ℤ
habc : a ∣ c * b
hab : a.gcd b = 1

⊢ a ∣ c
-- Mathlib/AlgebraicGeometry/PrimeSpectrum/Basic.lean
R : Type u
S : Type v
inst✝⁴ : CommSemiring R
inst✝³ : CommSemiring S
S' : Type u_1
inst✝² : CommSemiring S'
f : R →+* S
inst✝¹ : Algebra R S
M : Submonoid R
inst✝ : IsLocalization M S
p q : PrimeSpectrum S
h : (fun x => Ideal.map (algebraMap R S) x.asIdeal) ((comap (algebraMap R S)) p) = (fun x => Ideal.map (algebraMap R S) x.asIdeal) ((comap (algebraMap R S)) q)

⊢ p = q
-- Mathlib/AlgebraicGeometry/PrimeSpectrum/Basic.lean
R : Type u
S : Type v
inst✝⁴ : CommSemiring R
inst✝³ : CommSemiring S
S' : Type u_1
inst✝² : CommSemiring S'
f : R →+* S
inst✝¹ : Algebra R S
M : Submonoid R
inst✝ : IsLocalization M S
p q : PrimeSpectrum S
h : Ideal.map (algebraMap R S) (Ideal.comap (algebraMap R S) p.asIdeal) = Ideal.map (algebraMap R S) (Ideal.comap (algebraMap R S) q.asIdeal)

⊢ p = q
-- Mathlib/AlgebraicGeometry/PrimeSpectrum/Basic.lean
R : Type u
S : Type v
inst✝⁴ : CommSemiring R
inst✝³ : CommSemiring S
S' : Type u_1
inst✝² : CommSemiring S'
f : R →+* S
inst✝¹ : Algebra R S
M : Submonoid R
inst✝ : IsLocalization M S
p q : PrimeSpectrum S
h : p.asIdeal = q.asIdeal

⊢ p = q
-- Mathlib/Analysis/SpecialFunctions/Pow/Real.lean
x y z✝ : ℝ
n✝ : ℕ
hx : 0 ≤ x
n : ℤ
z : ℝ

⊢ x ^ (↑n * z) = (x ^ n) ^ z
-- Mathlib/RingTheory/LocalRing/Module.lean
R : Type u_1
S : Type ?u.189967
inst✝¹⁰ : CommRing R
inst✝⁹ : CommRing S
inst✝⁸ : Algebra R S
inst✝⁷ : LocalRing R
M : Type u_2
N : Type ?u.190432
inst✝⁶ : AddCommGroup M
inst✝⁵ : AddCommGroup N
inst✝⁴ : Module R M
inst✝³ : Module R N
P : Type ?u.191572
inst✝² : AddCommGroup P
inst✝¹ : Module R P
f : M →ₗ[R] N
g : N →ₗ[R] P
hg : Surjective ⇑g
h : Exact ⇑f ⇑g
inst✝ : FinitePresentation R M
H : Function.Injective ⇑(LinearMap.rTensor M (Submodule.subtype 𝔪))
I : Type (max u_2 u_1) := Free.ChooseBasisIndex k (k ⊗[R] M)
b : Basis I k (k ⊗[R] M) := Free.chooseBasis k (k ⊗[R] M)
this : IsNoetherian k (k ⊗[R] (I →₀ R)) := isNoetherian_of_isNoetherianRing_of_finite k (k ⊗[R] (I →₀ R))

⊢ Free R M
-- Mathlib/RingTheory/LocalRing/Module.lean
R : Type u_1
S : Type ?u.189967
inst✝¹⁰ : CommRing R
inst✝⁹ : CommRing S
inst✝⁸ : Algebra R S
inst✝⁷ : LocalRing R
M : Type u_2
N : Type ?u.190432
inst✝⁶ : AddCommGroup M
inst✝⁵ : AddCommGroup N
inst✝⁴ : Module R M
inst✝³ : Module R N
P : Type ?u.191572
inst✝² : AddCommGroup P
inst✝¹ : Module R P
f✝ : M →ₗ[R] N
g : N →ₗ[R] P
hg : Surjective ⇑g
h : Exact ⇑f✝ ⇑g
inst✝ : FinitePresentation R M
H : Function.Injective ⇑(LinearMap.rTensor M (Submodule.subtype 𝔪))
I : Type (max u_2 u_1) := Free.ChooseBasisIndex k (k ⊗[R] M)
b : Basis I k (k ⊗[R] M) := Free.chooseBasis k (k ⊗[R] M)
this : IsNoetherian k (k ⊗[R] (I →₀ R)) := isNoetherian_of_isNoetherianRing_of_finite k (k ⊗[R] (I →₀ R))
f : k ⊗[R] M → M
hf : ∀ (b : k ⊗[R] M), ((TensorProduct.mk R k M) 1) (f b) = b

⊢ Free R M
-- Mathlib/RingTheory/LocalRing/Module.lean
R : Type u_1
S : Type ?u.189967
inst✝¹⁰ : CommRing R
inst✝⁹ : CommRing S
inst✝⁸ : Algebra R S
inst✝⁷ : LocalRing R
M : Type u_2
N : Type ?u.190432
inst✝⁶ : AddCommGroup M
inst✝⁵ : AddCommGroup N
inst✝⁴ : Module R M
inst✝³ : Module R N
P : Type ?u.191572
inst✝² : AddCommGroup P
inst✝¹ : Module R P
f✝ : M →ₗ[R] N
g : N →ₗ[R] P
hg : Surjective ⇑g
h : Exact ⇑f✝ ⇑g
inst✝ : FinitePresentation R M
H : Function.Injective ⇑(LinearMap.rTensor M (Submodule.subtype 𝔪))
I : Type (max u_2 u_1) := Free.ChooseBasisIndex k (k ⊗[R] M)
b : Basis I k (k ⊗[R] M) := Free.chooseBasis k (k ⊗[R] M)
this : IsNoetherian k (k ⊗[R] (I →₀ R)) := isNoetherian_of_isNoetherianRing_of_finite k (k ⊗[R] (I →₀ R))
f : k ⊗[R] M → M
hf : ∀ (b : k ⊗[R] M), ((TensorProduct.mk R k M) 1) (f b) = b
i : (I →₀ R) →ₗ[R] M := Finsupp.total I M R (f ∘ ⇑b)

⊢ Free R M
-- Mathlib/RingTheory/LocalRing/Module.lean
R : Type u_1
S : Type ?u.189967
inst✝¹⁰ : CommRing R
inst✝⁹ : CommRing S
inst✝⁸ : Algebra R S
inst✝⁷ : LocalRing R
M : Type u_2
N : Type ?u.190432
inst✝⁶ : AddCommGroup M
inst✝⁵ : AddCommGroup N
inst✝⁴ : Module R M
inst✝³ : Module R N
P : Type ?u.191572
inst✝² : AddCommGroup P
inst✝¹ : Module R P
f✝ : M →ₗ[R] N
g : N →ₗ[R] P
hg : Surjective ⇑g
h : Exact ⇑f✝ ⇑g
inst✝ : FinitePresentation R M
H : Function.Injective ⇑(LinearMap.rTensor M (Submodule.subtype 𝔪))
I : Type (max u_2 u_1) := Free.ChooseBasisIndex k (k ⊗[R] M)
b : Basis I k (k ⊗[R] M) := Free.chooseBasis k (k ⊗[R] M)
this : IsNoetherian k (k ⊗[R] (I →₀ R)) := isNoetherian_of_isNoetherianRing_of_finite k (k ⊗[R] (I →₀ R))
f : k ⊗[R] M → M
hf : ∀ (b : k ⊗[R] M), ((TensorProduct.mk R k M) 1) (f b) = b
i : (I →₀ R) →ₗ[R] M := Finsupp.total I M R (f ∘ ⇑b)
hi : Surjective ⇑i

⊢ Free R M
-- Mathlib/RingTheory/LocalRing/Module.lean
R : Type u_1
S : Type ?u.189967
inst✝¹⁰ : CommRing R
inst✝⁹ : CommRing S
inst✝⁸ : Algebra R S
inst✝⁷ : LocalRing R
M : Type u_2
N : Type ?u.190432
inst✝⁶ : AddCommGroup M
inst✝⁵ : AddCommGroup N
inst✝⁴ : Module R M
inst✝³ : Module R N
P : Type ?u.191572
inst✝² : AddCommGroup P
inst✝¹ : Module R P
f✝ : M →ₗ[R] N
g : N →ₗ[R] P
hg : Surjective ⇑g
h : Exact ⇑f✝ ⇑g
inst✝ : FinitePresentation R M
H : Function.Injective ⇑(LinearMap.rTensor M (Submodule.subtype 𝔪))
I : Type (max u_2 u_1) := Free.ChooseBasisIndex k (k ⊗[R] M)
b : Basis I k (k ⊗[R] M) := Free.chooseBasis k (k ⊗[R] M)
this✝ : IsNoetherian k (k ⊗[R] (I →₀ R)) := isNoetherian_of_isNoetherianRing_of_finite k (k ⊗[R] (I →₀ R))
f : k ⊗[R] M → M
hf : ∀ (b : k ⊗[R] M), ((TensorProduct.mk R k M) 1) (f b) = b
i : (I →₀ R) →ₗ[R] M := Finsupp.total I M R (f ∘ ⇑b)
hi : Surjective ⇑i
this : Finite R ↥(LinearMap.ker i)

⊢ Free R M
-- Mathlib/RingTheory/LocalRing/Module.lean
R : Type u_1
S : Type ?u.189967
inst✝¹⁰ : CommRing R
inst✝⁹ : CommRing S
inst✝⁸ : Algebra R S
inst✝⁷ : LocalRing R
M : Type u_2
N : Type ?u.190432
inst✝⁶ : AddCommGroup M
inst✝⁵ : AddCommGroup N
inst✝⁴ : Module R M
inst✝³ : Module R N
P : Type ?u.191572
inst✝² : AddCommGroup P
inst✝¹ : Module R P
f✝ : M →ₗ[R] N
g : N →ₗ[R] P
hg : Surjective ⇑g
h : Exact ⇑f✝ ⇑g
inst✝ : FinitePresentation R M
H : Function.Injective ⇑(LinearMap.rTensor M (Submodule.subtype 𝔪))
I : Type (max u_2 u_1) := Free.ChooseBasisIndex k (k ⊗[R] M)
b : Basis I k (k ⊗[R] M) := Free.chooseBasis k (k ⊗[R] M)
this✝ : IsNoetherian k (k ⊗[R] (I →₀ R)) := isNoetherian_of_isNoetherianRing_of_finite k (k ⊗[R] (I →₀ R))
f : k ⊗[R] M → M
hf : ∀ (b : k ⊗[R] M), ((TensorProduct.mk R k M) 1) (f b) = b
i : (I →₀ R) →ₗ[R] M := Finsupp.total I M R (f ∘ ⇑b)
hi : Surjective ⇑i
this : Finite R ↥(LinearMap.ker i)

⊢ Function.Injective ⇑i
-- Mathlib/RingTheory/LocalRing/Module.lean
R : Type u_1
S : Type ?u.189967
inst✝¹⁰ : CommRing R
inst✝⁹ : CommRing S
inst✝⁸ : Algebra R S
inst✝⁷ : LocalRing R
M : Type u_2
N : Type ?u.190432
inst✝⁶ : AddCommGroup M
inst✝⁵ : AddCommGroup N
inst✝⁴ : Module R M
inst✝³ : Module R N
P : Type ?u.191572
inst✝² : AddCommGroup P
inst✝¹ : Module R P
f✝ : M →ₗ[R] N
g : N →ₗ[R] P
hg : Surjective ⇑g
h : Exact ⇑f✝ ⇑g
inst✝ : FinitePresentation R M
H : Function.Injective ⇑(LinearMap.rTensor M (Submodule.subtype 𝔪))
I : Type (max u_2 u_1) := Free.ChooseBasisIndex k (k ⊗[R] M)
b : Basis I k (k ⊗[R] M) := Free.chooseBasis k (k ⊗[R] M)
this✝ : IsNoetherian k (k ⊗[R] (I →₀ R)) := isNoetherian_of_isNoetherianRing_of_finite k (k ⊗[R] (I →₀ R))
f : k ⊗[R] M → M
hf : ∀ (b : k ⊗[R] M), ((TensorProduct.mk R k M) 1) (f b) = b
i : (I →₀ R) →ₗ[R] M := Finsupp.total I M R (f ∘ ⇑b)
hi : Surjective ⇑i
this : Finite R ↥(LinearMap.ker i)

⊢ ∀ (y : k ⊗[R] ↥(LinearMap.ker i)), y = 0
-- Mathlib/RingTheory/LocalRing/Module.lean
R : Type u_1
S : Type ?u.189967
inst✝¹⁰ : CommRing R
inst✝⁹ : CommRing S
inst✝⁸ : Algebra R S
inst✝⁷ : LocalRing R
M : Type u_2
N : Type ?u.190432
inst✝⁶ : AddCommGroup M
inst✝⁵ : AddCommGroup N
inst✝⁴ : Module R M
inst✝³ : Module R N
P : Type ?u.191572
inst✝² : AddCommGroup P
inst✝¹ : Module R P
f✝ : M →ₗ[R] N
g : N →ₗ[R] P
hg : Surjective ⇑g
h : Exact ⇑f✝ ⇑g
inst✝ : FinitePresentation R M
H : Function.Injective ⇑(LinearMap.rTensor M (Submodule.subtype 𝔪))
I : Type (max u_2 u_1) := Free.ChooseBasisIndex k (k ⊗[R] M)
b : Basis I k (k ⊗[R] M) := Free.chooseBasis k (k ⊗[R] M)
this✝¹ : IsNoetherian k (k ⊗[R] (I →₀ R)) := isNoetherian_of_isNoetherianRing_of_finite k (k ⊗[R] (I →₀ R))
f : k ⊗[R] M → M
hf : ∀ (b : k ⊗[R] M), ((TensorProduct.mk R k M) 1) (f b) = b
i : (I →₀ R) →ₗ[R] M := Finsupp.total I M R (f ∘ ⇑b)
hi : Surjective ⇑i
this✝ : Finite R ↥(LinearMap.ker i)
this : Surjective ⇑(LinearMap.baseChange k i)

⊢ ∀ (y : k ⊗[R] ↥(LinearMap.ker i)), y = 0
-- Mathlib/RingTheory/LocalRing/Module.lean
R : Type u_1
S : Type ?u.189967
inst✝¹⁰ : CommRing R
inst✝⁹ : CommRing S
inst✝⁸ : Algebra R S
inst✝⁷ : LocalRing R
M : Type u_2
N : Type ?u.190432
inst✝⁶ : AddCommGroup M
inst✝⁵ : AddCommGroup N
inst✝⁴ : Module R M
inst✝³ : Module R N
P : Type ?u.191572
inst✝² : AddCommGroup P
inst✝¹ : Module R P
f✝ : M →ₗ[R] N
g : N →ₗ[R] P
hg : Surjective ⇑g
h : Exact ⇑f✝ ⇑g
inst✝ : FinitePresentation R M
H : Function.Injective ⇑(LinearMap.rTensor M (Submodule.subtype 𝔪))
I : Type (max u_2 u_1) := Free.ChooseBasisIndex k (k ⊗[R] M)
b : Basis I k (k ⊗[R] M) := Free.chooseBasis k (k ⊗[R] M)
this✝¹ : IsNoetherian k (k ⊗[R] (I →₀ R)) := isNoetherian_of_isNoetherianRing_of_finite k (k ⊗[R] (I →₀ R))
f : k ⊗[R] M → M
hf : ∀ (b : k ⊗[R] M), ((TensorProduct.mk R k M) 1) (f b) = b
i : (I →₀ R) →ₗ[R] M := Finsupp.total I M R (f ∘ ⇑b)
hi : Surjective ⇑i
this✝ : Finite R ↥(LinearMap.ker i)
this : Surjective ⇑(LinearMap.baseChange k i)
hi' : Function.Bijective ⇑(LinearMap.baseChange k i)

⊢ ∀ (y : k ⊗[R] ↥(LinearMap.ker i)), y = 0
-- Mathlib/RingTheory/LocalRing/Module.lean
R : Type u_1
S : Type ?u.189967
inst✝¹⁰ : CommRing R
inst✝⁹ : CommRing S
inst✝⁸ : Algebra R S
inst✝⁷ : LocalRing R
M : Type u_2
N : Type ?u.190432
inst✝⁶ : AddCommGroup M
inst✝⁵ : AddCommGroup N
inst✝⁴ : Module R M
inst✝³ : Module R N
P : Type ?u.191572
inst✝² : AddCommGroup P
inst✝¹ : Module R P
f✝ : M →ₗ[R] N
g : N →ₗ[R] P
hg : Surjective ⇑g
h : Exact ⇑f✝ ⇑g
inst✝ : FinitePresentation R M
H : Function.Injective ⇑(LinearMap.rTensor M (Submodule.subtype 𝔪))
I : Type (max u_2 u_1) := Free.ChooseBasisIndex k (k ⊗[R] M)
b : Basis I k (k ⊗[R] M) := Free.chooseBasis k (k ⊗[R] M)
this✝² : IsNoetherian k (k ⊗[R] (I →₀ R)) := isNoetherian_of_isNoetherianRing_of_finite k (k ⊗[R] (I →₀ R))
f : k ⊗[R] M → M
hf : ∀ (b : k ⊗[R] M), ((TensorProduct.mk R k M) 1) (f b) = b
i : (I →₀ R) →ₗ[R] M := Finsupp.total I M R (f ∘ ⇑b)
hi : Surjective ⇑i
this✝¹ : Finite R ↥(LinearMap.ker i)
this✝ : Surjective ⇑(LinearMap.baseChange k i)
hi' : Function.Bijective ⇑(LinearMap.baseChange k i)
this : ∀ {g₁ : ↥(LinearMap.ker i) →ₗ[R] I →₀ R} {g₂ : (I →₀ R) →ₗ[R] M}, Exact ⇑(Submodule.subtype 𝔪) ⇑(Submodule.mkQ 𝔪) → Surjective ⇑(Submodule.mkQ 𝔪) → Exact ⇑g₁ ⇑g₂ → Surjective ⇑g₂ → Function.Injective ⇑(LinearMap.rTensor M (Submodule.subtype 𝔪)) → Function.Injective ⇑(LinearMap.lTensor R g₁) → Function.Injective ⇑(LinearMap.lTensor (R ⧸ 𝔪) g₁)

⊢ ∀ (y : k ⊗[R] ↥(LinearMap.ker i)), y = 0
-- Mathlib/RingTheory/LocalRing/Module.lean
R : Type u_1
S : Type ?u.189967
inst✝¹⁰ : CommRing R
inst✝⁹ : CommRing S
inst✝⁸ : Algebra R S
inst✝⁷ : LocalRing R
M : Type u_2
N : Type ?u.190432
inst✝⁶ : AddCommGroup M
inst✝⁵ : AddCommGroup N
inst✝⁴ : Module R M
inst✝³ : Module R N
P : Type ?u.191572
inst✝² : AddCommGroup P
inst✝¹ : Module R P
f✝ : M →ₗ[R] N
g : N →ₗ[R] P
hg : Surjective ⇑g
h : Exact ⇑f✝ ⇑g
inst✝ : FinitePresentation R M
H : Function.Injective ⇑(LinearMap.rTensor M (Submodule.subtype 𝔪))
I : Type (max u_2 u_1) := Free.ChooseBasisIndex k (k ⊗[R] M)
b : Basis I k (k ⊗[R] M) := Free.chooseBasis k (k ⊗[R] M)
this✝² : IsNoetherian k (k ⊗[R] (I →₀ R)) := isNoetherian_of_isNoetherianRing_of_finite k (k ⊗[R] (I →₀ R))
f : k ⊗[R] M → M
hf : ∀ (b : k ⊗[R] M), ((TensorProduct.mk R k M) 1) (f b) = b
i : (I →₀ R) →ₗ[R] M := Finsupp.total I M R (f ∘ ⇑b)
hi : Surjective ⇑i
this✝¹ : Finite R ↥(LinearMap.ker i)
this✝ : Surjective ⇑(LinearMap.baseChange k i)
hi' : Function.Bijective ⇑(LinearMap.baseChange k i)
this : ∀ {g₁ : ↥(LinearMap.ker i) →ₗ[R] I →₀ R} {g₂ : (I →₀ R) →ₗ[R] M}, Exact ⇑(Submodule.subtype 𝔪) ⇑(Submodule.mkQ 𝔪) → Surjective ⇑(Submodule.mkQ 𝔪) → Exact ⇑g₁ ⇑g₂ → Surjective ⇑g₂ → Function.Injective ⇑(LinearMap.rTensor M (Submodule.subtype 𝔪)) → Function.Injective ⇑(LinearMap.lTensor R g₁) → Function.Injective ⇑(LinearMap.lTensor (R ⧸ 𝔪) g₁)
x : k ⊗[R] ↥(LinearMap.ker i)

⊢ x = 0
-- Mathlib/RingTheory/LocalRing/Module.lean
R : Type u_1
S : Type ?u.189967
inst✝¹⁰ : CommRing R
inst✝⁹ : CommRing S
inst✝⁸ : Algebra R S
inst✝⁷ : LocalRing R
M : Type u_2
N : Type ?u.190432
inst✝⁶ : AddCommGroup M
inst✝⁵ : AddCommGroup N
inst✝⁴ : Module R M
inst✝³ : Module R N
P : Type ?u.191572
inst✝² : AddCommGroup P
inst✝¹ : Module R P
f✝ : M →ₗ[R] N
g : N →ₗ[R] P
hg : Surjective ⇑g
h : Exact ⇑f✝ ⇑g
inst✝ : FinitePresentation R M
H : Function.Injective ⇑(LinearMap.rTensor M (Submodule.subtype 𝔪))
I : Type (max u_2 u_1) := Free.ChooseBasisIndex k (k ⊗[R] M)
b : Basis I k (k ⊗[R] M) := Free.chooseBasis k (k ⊗[R] M)
this✝² : IsNoetherian k (k ⊗[R] (I →₀ R)) := isNoetherian_of_isNoetherianRing_of_finite k (k ⊗[R] (I →₀ R))
f : k ⊗[R] M → M
hf : ∀ (b : k ⊗[R] M), ((TensorProduct.mk R k M) 1) (f b) = b
i : (I →₀ R) →ₗ[R] M := Finsupp.total I M R (f ∘ ⇑b)
hi : Surjective ⇑i
this✝¹ : Finite R ↥(LinearMap.ker i)
this✝ : Surjective ⇑(LinearMap.baseChange k i)
hi' : Function.Bijective ⇑(LinearMap.baseChange k i)
this : ∀ {g₁ : ↥(LinearMap.ker i) →ₗ[R] I →₀ R} {g₂ : (I →₀ R) →ₗ[R] M}, Exact ⇑(Submodule.subtype 𝔪) ⇑(Submodule.mkQ 𝔪) → Surjective ⇑(Submodule.mkQ 𝔪) → Exact ⇑g₁ ⇑g₂ → Surjective ⇑g₂ → Function.Injective ⇑(LinearMap.rTensor M (Submodule.subtype 𝔪)) → Function.Injective ⇑(LinearMap.lTensor R g₁) → Function.Injective ⇑(LinearMap.lTensor (R ⧸ 𝔪) g₁)
x : k ⊗[R] ↥(LinearMap.ker i)

⊢ (LinearMap.lTensor (R ⧸ 𝔪) (LinearMap.ker i).subtype) x = (LinearMap.lTensor (R ⧸ 𝔪) (LinearMap.ker i).subtype) 0
-- Mathlib/RingTheory/LocalRing/Module.lean
R : Type u_1
S : Type ?u.189967
inst✝¹⁰ : CommRing R
inst✝⁹ : CommRing S
inst✝⁸ : Algebra R S
inst✝⁷ : LocalRing R
M : Type u_2
N : Type ?u.190432
inst✝⁶ : AddCommGroup M
inst✝⁵ : AddCommGroup N
inst✝⁴ : Module R M
inst✝³ : Module R N
P : Type ?u.191572
inst✝² : AddCommGroup P
inst✝¹ : Module R P
f✝ : M →ₗ[R] N
g : N →ₗ[R] P
hg : Surjective ⇑g
h : Exact ⇑f✝ ⇑g
inst✝ : FinitePresentation R M
H : Function.Injective ⇑(LinearMap.rTensor M (Submodule.subtype 𝔪))
I : Type (max u_2 u_1) := Free.ChooseBasisIndex k (k ⊗[R] M)
b : Basis I k (k ⊗[R] M) := Free.chooseBasis k (k ⊗[R] M)
this✝² : IsNoetherian k (k ⊗[R] (I →₀ R)) := isNoetherian_of_isNoetherianRing_of_finite k (k ⊗[R] (I →₀ R))
f : k ⊗[R] M → M
hf : ∀ (b : k ⊗[R] M), ((TensorProduct.mk R k M) 1) (f b) = b
i : (I →₀ R) →ₗ[R] M := Finsupp.total I M R (f ∘ ⇑b)
hi : Surjective ⇑i
this✝¹ : Finite R ↥(LinearMap.ker i)
this✝ : Surjective ⇑(LinearMap.baseChange k i)
hi' : Function.Bijective ⇑(LinearMap.baseChange k i)
this : ∀ {g₁ : ↥(LinearMap.ker i) →ₗ[R] I →₀ R} {g₂ : (I →₀ R) →ₗ[R] M}, Exact ⇑(Submodule.subtype 𝔪) ⇑(Submodule.mkQ 𝔪) → Surjective ⇑(Submodule.mkQ 𝔪) → Exact ⇑g₁ ⇑g₂ → Surjective ⇑g₂ → Function.Injective ⇑(LinearMap.rTensor M (Submodule.subtype 𝔪)) → Function.Injective ⇑(LinearMap.lTensor R g₁) → Function.Injective ⇑(LinearMap.lTensor (R ⧸ 𝔪) g₁)
x : k ⊗[R] ↥(LinearMap.ker i)

⊢ (LinearMap.baseChange k i) ((LinearMap.lTensor (R ⧸ 𝔪) (LinearMap.ker i).subtype) x) = (LinearMap.baseChange k i) ((LinearMap.lTensor (R ⧸ 𝔪) (LinearMap.ker i).subtype) 0)
-- Mathlib/RingTheory/LocalRing/Module.lean
R : Type u_1
S : Type ?u.189967
inst✝¹⁰ : CommRing R
inst✝⁹ : CommRing S
inst✝⁸ : Algebra R S
inst✝⁷ : LocalRing R
M : Type u_2
N : Type ?u.190432
inst✝⁶ : AddCommGroup M
inst✝⁵ : AddCommGroup N
inst✝⁴ : Module R M
inst✝³ : Module R N
P : Type ?u.191572
inst✝² : AddCommGroup P
inst✝¹ : Module R P
f✝ : M →ₗ[R] N
g : N →ₗ[R] P
hg : Surjective ⇑g
h : Exact ⇑f✝ ⇑g
inst✝ : FinitePresentation R M
H : Function.Injective ⇑(LinearMap.rTensor M (Submodule.subtype 𝔪))
I : Type (max u_2 u_1) := Free.ChooseBasisIndex k (k ⊗[R] M)
b : Basis I k (k ⊗[R] M) := Free.chooseBasis k (k ⊗[R] M)
this✝² : IsNoetherian k (k ⊗[R] (I →₀ R)) := isNoetherian_of_isNoetherianRing_of_finite k (k ⊗[R] (I →₀ R))
f : k ⊗[R] M → M
hf : ∀ (b : k ⊗[R] M), ((TensorProduct.mk R k M) 1) (f b) = b
i : (I →₀ R) →ₗ[R] M := Finsupp.total I M R (f ∘ ⇑b)
hi : Surjective ⇑i
this✝¹ : Finite R ↥(LinearMap.ker i)
this✝ : Surjective ⇑(LinearMap.baseChange k i)
hi' : Function.Bijective ⇑(LinearMap.baseChange k i)
this : ∀ {g₁ : ↥(LinearMap.ker i) →ₗ[R] I →₀ R} {g₂ : (I →₀ R) →ₗ[R] M}, Exact ⇑(Submodule.subtype 𝔪) ⇑(Submodule.mkQ 𝔪) → Surjective ⇑(Submodule.mkQ 𝔪) → Exact ⇑g₁ ⇑g₂ → Surjective ⇑g₂ → Function.Injective ⇑(LinearMap.rTensor M (Submodule.subtype 𝔪)) → Function.Injective ⇑(LinearMap.lTensor R g₁) → Function.Injective ⇑(LinearMap.lTensor (R ⧸ 𝔪) g₁)
x : k ⊗[R] ↥(LinearMap.ker i)

⊢ (LinearMap.lTensor k i) ((LinearMap.lTensor (R ⧸ 𝔪) (LinearMap.ker i).subtype) x) = (LinearMap.lTensor k i) ((LinearMap.lTensor (R ⧸ 𝔪) (LinearMap.ker i).subtype) 0)
-- Mathlib/RingTheory/LocalRing/Module.lean
R : Type u_1
S : Type ?u.189967
inst✝¹⁰ : CommRing R
inst✝⁹ : CommRing S
inst✝⁸ : Algebra R S
inst✝⁷ : LocalRing R
M : Type u_2
N : Type ?u.190432
inst✝⁶ : AddCommGroup M
inst✝⁵ : AddCommGroup N
inst✝⁴ : Module R M
inst✝³ : Module R N
P : Type ?u.191572
inst✝² : AddCommGroup P
inst✝¹ : Module R P
f✝ : M →ₗ[R] N
g : N →ₗ[R] P
hg : Surjective ⇑g
h : Exact ⇑f✝ ⇑g
inst✝ : FinitePresentation R M
H : Function.Injective ⇑(LinearMap.rTensor M (Submodule.subtype 𝔪))
I : Type (max u_2 u_1) := Free.ChooseBasisIndex k (k ⊗[R] M)
b : Basis I k (k ⊗[R] M) := Free.chooseBasis k (k ⊗[R] M)
this✝² : IsNoetherian k (k ⊗[R] (I →₀ R)) := isNoetherian_of_isNoetherianRing_of_finite k (k ⊗[R] (I →₀ R))
f : k ⊗[R] M → M
hf : ∀ (b : k ⊗[R] M), ((TensorProduct.mk R k M) 1) (f b) = b
i : (I →₀ R) →ₗ[R] M := Finsupp.total I M R (f ∘ ⇑b)
hi : Surjective ⇑i
this✝¹ : Finite R ↥(LinearMap.ker i)
this✝ : Surjective ⇑(LinearMap.baseChange k i)
hi' : Function.Bijective ⇑(LinearMap.baseChange k i)
this : ∀ {g₁ : ↥(LinearMap.ker i) →ₗ[R] I →₀ R} {g₂ : (I →₀ R) →ₗ[R] M}, Exact ⇑(Submodule.subtype 𝔪) ⇑(Submodule.mkQ 𝔪) → Surjective ⇑(Submodule.mkQ 𝔪) → Exact ⇑g₁ ⇑g₂ → Surjective ⇑g₂ → Function.Injective ⇑(LinearMap.rTensor M (Submodule.subtype 𝔪)) → Function.Injective ⇑(LinearMap.lTensor R g₁) → Function.Injective ⇑(LinearMap.lTensor (R ⧸ 𝔪) g₁)
x : k ⊗[R] ↥(LinearMap.ker i)

⊢ (LinearMap.lTensor k (i ∘ₗ (LinearMap.ker i).subtype)) x = (LinearMap.lTensor k i) ((LinearMap.lTensor (R ⧸ 𝔪) (LinearMap.ker i).subtype) 0)
-- Mathlib/RingTheory/LocalRing/Module.lean
R : Type u_1
S : Type ?u.189967
inst✝¹⁰ : CommRing R
inst✝⁹ : CommRing S
inst✝⁸ : Algebra R S
inst✝⁷ : LocalRing R
M : Type u_2
N : Type ?u.190432
inst✝⁶ : AddCommGroup M
inst✝⁵ : AddCommGroup N
inst✝⁴ : Module R M
inst✝³ : Module R N
P : Type ?u.191572
inst✝² : AddCommGroup P
inst✝¹ : Module R P
f✝ : M →ₗ[R] N
g : N →ₗ[R] P
hg : Surjective ⇑g
h : Exact ⇑f✝ ⇑g
inst✝ : FinitePresentation R M
H : Function.Injective ⇑(LinearMap.rTensor M (Submodule.subtype 𝔪))
I : Type (max u_2 u_1) := Free.ChooseBasisIndex k (k ⊗[R] M)
b : Basis I k (k ⊗[R] M) := Free.chooseBasis k (k ⊗[R] M)
this✝² : IsNoetherian k (k ⊗[R] (I →₀ R)) := isNoetherian_of_isNoetherianRing_of_finite k (k ⊗[R] (I →₀ R))
f : k ⊗[R] M → M
hf : ∀ (b : k ⊗[R] M), ((TensorProduct.mk R k M) 1) (f b) = b
i : (I →₀ R) →ₗ[R] M := Finsupp.total I M R (f ∘ ⇑b)
hi : Surjective ⇑i
this✝¹ : Finite R ↥(LinearMap.ker i)
this✝ : Surjective ⇑(LinearMap.baseChange k i)
hi' : Function.Bijective ⇑(LinearMap.baseChange k i)
this : ∀ {g₁ : ↥(LinearMap.ker i) →ₗ[R] I →₀ R} {g₂ : (I →₀ R) →ₗ[R] M}, Exact ⇑(Submodule.subtype 𝔪) ⇑(Submodule.mkQ 𝔪) → Surjective ⇑(Submodule.mkQ 𝔪) → Exact ⇑g₁ ⇑g₂ → Surjective ⇑g₂ → Function.Injective ⇑(LinearMap.rTensor M (Submodule.subtype 𝔪)) → Function.Injective ⇑(LinearMap.lTensor R g₁) → Function.Injective ⇑(LinearMap.lTensor (R ⧸ 𝔪) g₁)
x : k ⊗[R] ↥(LinearMap.ker i)

⊢ (LinearMap.lTensor k 0) x = (LinearMap.lTensor k i) ((LinearMap.lTensor (R ⧸ 𝔪) (LinearMap.ker i).subtype) 0)
-- Mathlib/Algebra/Module/Injective.lean
R : Type u
inst✝⁷ : Ring R
Q : Type v
inst✝⁶ : AddCommGroup Q
inst✝⁵ : Module R Q
M : Type u_1
N : Type u_2
inst✝⁴ : AddCommGroup M
inst✝³ : AddCommGroup N
inst✝² : Module R M
inst✝¹ : Module R N
i : M →ₗ[R] N
f✝ : M →ₗ[R] Q
inst✝ : Fact (Function.Injective ⇑i)
h : Baer R Q
f : M →ₗ[R] N
hf : Function.Injective ⇑f
g : M →ₗ[R] Q
this : Fact (Function.Injective ⇑f)
x y : N

⊢ (fun x => ↑(extensionOfMax f g).toLinearPMap ⟨x, ⋯⟩) (x + y) = (fun x => ↑(extensionOfMax f g).toLinearPMap ⟨x, ⋯⟩) x + (fun x => ↑(extensionOfMax f g).toLinearPMap ⟨x, ⋯⟩) y
-- Mathlib/Algebra/Module/Injective.lean
R : Type u
inst✝⁷ : Ring R
Q : Type v
inst✝⁶ : AddCommGroup Q
inst✝⁵ : Module R Q
M : Type u_1
N : Type u_2
inst✝⁴ : AddCommGroup M
inst✝³ : AddCommGroup N
inst✝² : Module R M
inst✝¹ : Module R N
i : M →ₗ[R] N
f✝ : M →ₗ[R] Q
inst✝ : Fact (Function.Injective ⇑i)
h : Baer R Q
f : M →ₗ[R] N
hf : Function.Injective ⇑f
g : M →ₗ[R] Q
this : Fact (Function.Injective ⇑f)
x y : N

⊢ (fun x => ↑(extensionOfMax f g).toLinearPMap ⟨x, ⋯⟩) (x + y) = ↑(extensionOfMax f g).toLinearPMap (⟨x, ⋯⟩ + ⟨y, ⋯⟩)
-- Mathlib/Algebra/Module/Injective.lean
R : Type u
inst✝⁷ : Ring R
Q : Type v
inst✝⁶ : AddCommGroup Q
inst✝⁵ : Module R Q
M : Type u_1
N : Type u_2
inst✝⁴ : AddCommGroup M
inst✝³ : AddCommGroup N
inst✝² : Module R M
inst✝¹ : Module R N
i : M →ₗ[R] N
f✝ : M →ₗ[R] Q
inst✝ : Fact (Function.Injective ⇑i)
h : Baer R Q
f : M →ₗ[R] N
hf : Function.Injective ⇑f
g : M →ₗ[R] Q
this : Fact (Function.Injective ⇑f)
r : R
x : N

⊢ { toFun := fun x => ↑(extensionOfMax f g).toLinearPMap ⟨x, ⋯⟩, map_add' := ⋯ }.toFun (r • x) = (RingHom.id R) r • { toFun := fun x => ↑(extensionOfMax f g).toLinearPMap ⟨x, ⋯⟩, map_add' := ⋯ }.toFun x
-- Mathlib/Algebra/Module/Injective.lean
R : Type u
inst✝⁷ : Ring R
Q : Type v
inst✝⁶ : AddCommGroup Q
inst✝⁵ : Module R Q
M : Type u_1
N : Type u_2
inst✝⁴ : AddCommGroup M
inst✝³ : AddCommGroup N
inst✝² : Module R M
inst✝¹ : Module R N
i : M →ₗ[R] N
f✝ : M →ₗ[R] Q
inst✝ : Fact (Function.Injective ⇑i)
h : Baer R Q
f : M →ₗ[R] N
hf : Function.Injective ⇑f
g : M →ₗ[R] Q
this : Fact (Function.Injective ⇑f)
r : R
x : N

⊢ { toFun := fun x => ↑(extensionOfMax f g).toLinearPMap ⟨x, ⋯⟩, map_add' := ⋯ }.toFun (r • x) = ↑(extensionOfMax f g).toLinearPMap ((RingHom.id R) r • ⟨x, ⋯⟩)
-- Mathlib/Algebra/Lie/EngelSubalgebra.lean
R : Type u_1
L : Type u_2
M : Type u_3
inst✝⁶ : CommRing R
inst✝⁵ : LieRing L
inst✝⁴ : LieAlgebra R L
inst✝³ : AddCommGroup M
inst✝² : Module R M
inst✝¹ : LieRingModule L M
inst✝ : LieModule R L M
x : L

⊢ (engel R x).normalizer = engel R x
-- Mathlib/Algebra/Lie/EngelSubalgebra.lean
R : Type u_1
L : Type u_2
M : Type u_3
inst✝⁶ : CommRing R
inst✝⁵ : LieRing L
inst✝⁴ : LieAlgebra R L
inst✝³ : AddCommGroup M
inst✝² : Module R M
inst✝¹ : LieRingModule L M
inst✝ : LieModule R L M
x : L

⊢ (engel R x).normalizer ≤ engel R x
-- Mathlib/Algebra/Lie/EngelSubalgebra.lean
R : Type u_1
L : Type u_2
M : Type u_3
inst✝⁶ : CommRing R
inst✝⁵ : LieRing L
inst✝⁴ : LieAlgebra R L
inst✝³ : AddCommGroup M
inst✝² : Module R M
inst✝¹ : LieRingModule L M
inst✝ : LieModule R L M
x y : L
hy : y ∈ (engel R x).normalizer

⊢ y ∈ engel R x
-- Mathlib/Algebra/Lie/EngelSubalgebra.lean
R : Type u_1
L : Type u_2
M : Type u_3
inst✝⁶ : CommRing R
inst✝⁵ : LieRing L
inst✝⁴ : LieAlgebra R L
inst✝³ : AddCommGroup M
inst✝² : Module R M
inst✝¹ : LieRingModule L M
inst✝ : LieModule R L M
x y : L
hy : ∀ y_1 ∈ engel R x, ⁅y, y_1⁆ ∈ engel R x

⊢ y ∈ engel R x
-- Mathlib/Algebra/Lie/EngelSubalgebra.lean
R : Type u_1
L : Type u_2
M : Type u_3
inst✝⁶ : CommRing R
inst✝⁵ : LieRing L
inst✝⁴ : LieAlgebra R L
inst✝³ : AddCommGroup M
inst✝² : Module R M
inst✝¹ : LieRingModule L M
inst✝ : LieModule R L M
x y : L
hy : ⁅y, x⁆ ∈ engel R x

⊢ y ∈ engel R x