Documentation

LeanPool.AndersonConjecture.Jensen.CloseUp.IntersectionHelpers

Close-up: intersection helpers #

Auxiliary lemmas for the intersection sub-case of the close-up well-founded induction. Handles the situation where the ideal generated by s' has large intersection with a prime, and proves the strict decrease of GCD complexity after dividing by a common prime factor.

theorem close_up_aux_factor_intersection_large {T : Type u_1} [CommRing T] [IsLocalRing T] [IsNoetherianRing T] [IsDomain T] [IsAdicComplete (IsLocalRing.maximalIdeal T) T] (n'' : ) (ih : ∀ (R : NSubring T), Cardinal.mk R.carrier < Cardinal.mk T∀ (s : Finset R.carrier), s.card n'' + 1 + 1∀ (c : R.carrier), c Ideal.map R.carrier.subtype (Ideal.span s)∃ (S : NSubring T), IsAExtension R S ∃ (hle : R.carrier S.carrier), c, Ideal.map (Subring.inclusion hle) (Ideal.span s)) (m : ) (ih_m : m_1 < m, ∀ (R : NSubring T), Cardinal.mk R.carrier < Cardinal.mk T∀ (a : R.carrier) (s : Finset R.carrier), gcdComplexity s m_1s.card = n'' + 1 + 1 + 1a s∀ (c : R.carrier), c Ideal.map R.carrier.subtype (Ideal.span s)∃ (S : NSubring T), IsAExtension R S ∃ (hle : R.carrier S.carrier), c, Ideal.map (Subring.inclusion hle) (Ideal.span s)) {R : NSubring T} [DecidableEq R.carrier] {a : R.carrier} {s : Finset R.carrier} (hs_gcd : gcdComplexity s m) (rest : Finset R.carrier) (_hrest_card : rest.card n'' + 1 + 1) (ha_rest : arest) {b : R.carrier} (hb_rest : b rest) (hgcd_rest : gcdComplexity (insert a rest) gcdComplexity s) {q' : R.carrier} (hq' : Prime q') (_hq'_dvd : xrest, q' x) {S₁ : NSubring T} (hAext₁ : IsAExtension R S₁) (hle₁ : R.carrier S₁.carrier) (hS₁_card : Cardinal.mk S₁.carrier < Cardinal.mk T) (w : S₁.carrier) (div_q_b2 : R.carrierR.carrier) (hdiv_b2 : xrest, x = q' * div_q_b2 x) (rest'2 : Finset R.carrier) (hrest'2_def : rest'2 = Finset.image div_q_b2 rest) (_h_ml_b2 : Ideal.span {q'} * Ideal.span (insert a rest'2) Ideal.span (insert a rest)) (hw_mem_T : w Ideal.map R.carrier.subtype (Ideal.span (insert a rest'2))) (ha_rest'2 : arest'2) (hrest'2_card : rest'2.card = n'' + 1 + 1) (hb_rest'2 : div_q_b2 b rest'2) :
∃ (S₂ : NSubring T), IsAExtension S₁ S₂ ∃ (hle₂ : S₁.carrier S₂.carrier), w, Ideal.map (Subring.inclusion hle₂) (Ideal.map (Subring.inclusion hle₁) (Ideal.span (insert a rest'2)))
theorem gcdComplexity_div_prime_strict {T : Type u_1} [CommRing T] [IsLocalRing T] [IsNoetherianRing T] [IsDomain T] {R : NSubring T} [DecidableEq R.carrier] {a : R.carrier} {s s' : Finset R.carrier} (hs_insert : s = insert a s') (hs'_def : s' = s.erase a) (hs'_card_ge : 2 s'.card) {p : R.carrier} (hp : Prime p) (div_f : R.carrierR.carrier) (hdiv : xs', x = p * div_f x) (ha_sdiv : aFinset.image div_f s') :