Documentation

LeanPool.AndersonConjecture.Jensen.KrullDomain.KrullDomain

Krull Domain Intersection for Two-Generator Close-Up #

Given coprime y₁, y₂ in an N-subring R and c ∈ (y₁,y₂)T ∩ R, construct an A-extension S with c ∈ (y₁,y₂)S via the intersection Rbar = R[x₁, y₂⁻¹] ∩ R[x₂, y₁⁻¹] where c = x₁y₁ + x₂y₂.

theorem intersection_close_up_ker_pf₁ {T : Type u_1} [CommRing T] [IsLocalRing T] [IsNoetherianRing T] [IsDomain T] (R : NSubring T) (y₂ : R.carrier) (t₁ u : T) (C_ext : Set (Ideal T)) (D_ext : Set T) (hC_ext_mem : ∀ (p : R.carrier), p 0PassociatedPrimes T (T Ideal.span {p}), P C_ext) (hD_ext_invFun : ∀ (f : Polynomial R.carrier), f 0PC_ext, P Polynomial.map ((Ideal.Quotient.mk P).comp R.carrier.subtype) f 0(Ideal.Quotient.mk P) y₂ 0v₀{v : T P | Polynomial.eval ((Ideal.Quotient.mk P) t₁ + v * (Ideal.Quotient.mk P) y₂) (Polynomial.map ((Ideal.Quotient.mk P).comp R.carrier.subtype) f) = 0}, Function.invFun (⇑(Ideal.Quotient.mk P)) v₀ D_ext) (hu_avoid : PC_ext, rD_ext, uP + {r}) (P : Ideal T) (hP_prime : P.IsPrime) (_hP_ne_top : P ) (hP_ht : P.height 1) (hy₂_nP : y₂P) (p : R.carrier) (hp : Prime p) (hp_P : p P) (f : Polynomial R.carrier) (hf_mem : (Polynomial.aeval (t₁ + u * y₂)) f P) :
theorem intersection_close_up_ker_pf₂ {T : Type u_1} [CommRing T] [IsLocalRing T] [IsNoetherianRing T] [IsDomain T] (R : NSubring T) (y₁ : R.carrier) (t₂ u : T) (C_ext : Set (Ideal T)) (D_ext : Set T) (hC_ext_mem : ∀ (p : R.carrier), p 0PassociatedPrimes T (T Ideal.span {p}), P C_ext) (hD_ext_invFun : ∀ (f : Polynomial R.carrier), f 0PC_ext, P Polynomial.map ((Ideal.Quotient.mk P).comp R.carrier.subtype) f 0(Ideal.Quotient.mk P) y₁ 0v₀{v : T P | Polynomial.eval ((Ideal.Quotient.mk P) t₂ - v * (Ideal.Quotient.mk P) y₁) (Polynomial.map ((Ideal.Quotient.mk P).comp R.carrier.subtype) f) = 0}, Function.invFun (⇑(Ideal.Quotient.mk P)) v₀ D_ext) (hu_avoid : PC_ext, rD_ext, uP + {r}) (P : Ideal T) (hP_prime : P.IsPrime) (_hP_ne_top : P ) (hP_ht : P.height 1) (hy₁_nP : y₁P) (p : R.carrier) (hp : Prime p) (hp_P : p P) (f : Polynomial R.carrier) (hf_mem : (Polynomial.aeval (t₂ - u * y₁)) f P) :
theorem intersection_close_up {T : Type u_1} [CommRing T] [IsLocalRing T] [IsNoetherianRing T] [IsDomain T] [IsAdicComplete (IsLocalRing.maximalIdeal T) T] (R : NSubring T) (y₁ y₂ c : R.carrier) (hc : c Ideal.span {y₁, y₂}) (hcoprime : ∀ (p : R.carrier), Prime p¬(p y₁ p y₂)) (hy₁ : y₁ 0) (hy₂ : y₂ 0) (hM_ne_bot : IsLocalRing.maximalIdeal T ) (hM_not_assoc : ∀ (r : T), r 0IsLocalRing.maximalIdeal TassociatedPrimes T (T Ideal.span {r})) (hAss_ht : ∀ (r : T), r 0PassociatedPrimes T (T Ideal.span {r}), P.height 1) (hR_card : Cardinal.mk R.carrier < Cardinal.mk T) (hT_card : Cardinal.mk T = Cardinal.mk (IsLocalRing.ResidueField T)) :
∃ (S : NSubring T), IsAExtension R S ∃ (hle : R.carrier S.carrier) (x₁ : S.carrier), c, - x₁ * y₁, Ideal.span {y₂, }