English
If the base-change map R→T is surjective on stalks, then the tensorProductTo map on prime spectra is an embedding.
Русский
Пусть отображение алгебраических структур R→T обладает свойством сюръективности на stalks. Тогда отображение tensorProductTo на спектрах примар является вложением.
LaTeX
$$$\\mathrm{IsEmbedding}\\bigl(\\mathrm{tensorProductTo}(R,S,T)\\bigr)$$$
Lean4
theorem isEmbedding_tensorProductTo_of_surjectiveOnStalks : IsEmbedding (tensorProductTo R S T) :=
by
refine
⟨?_, fun p₁ p₂ e ↦
(isEmbedding_tensorProductTo_of_surjectiveOnStalks_aux R S T hRT p₁ p₂ e).antisymm
(isEmbedding_tensorProductTo_of_surjectiveOnStalks_aux R S T hRT p₂ p₁ e.symm)⟩
let g : T →+* S ⊗[R] T := Algebra.TensorProduct.includeRight.toRingHom
refine ⟨(continuous_tensorProductTo ..).le_induced.antisymm (isBasis_basic_opens.le_iff.mpr ?_)⟩
rintro _ ⟨f, rfl⟩
rw [@isOpen_iff_forall_mem_open]
rintro J (hJ : f ∉ J.asIdeal)
obtain ⟨t, r, a, ht, e⟩ := hRT.exists_mul_eq_tmul f (J.asIdeal.comap g) inferInstance
refine ⟨_, ?_, ⟨_, (basicOpen a).2.prod (basicOpen t).2, rfl⟩, ?_⟩
· rintro x ⟨hx₁ : a ⊗ₜ[R] (1 : T) ∉ x.asIdeal, hx₂ : (1 : S) ⊗ₜ[R] t ∉ x.asIdeal⟩ (hx₃ : f ∈ x.asIdeal)
apply x.asIdeal.primeCompl.mul_mem hx₁ hx₂
rw [Algebra.TensorProduct.tmul_mul_tmul, mul_one, one_mul, ← e]
exact x.asIdeal.mul_mem_left _ hx₃
· have : a ⊗ₜ[R] (1 : T) * (1 : S) ⊗ₜ[R] t ∉ J.asIdeal :=
by
rw [Algebra.TensorProduct.tmul_mul_tmul, mul_one, one_mul, ← e]
exact J.asIdeal.primeCompl.mul_mem ht hJ
rwa [J.isPrime.mul_mem_iff_mem_or_mem.not, not_or] at this