Documentation

LeanPool.AndersonConjecture.Jensen.KrullDomain.Prime

Primality in R[x, y^{-1}] and coprime height bound #

If x is transcendental over R and r is prime in R with r not dividing y, then r remains prime in R[x, y^{-1}]. As a consequence, if y_1 and y_2 are coprime in R, no height-one prime of T contracting to a nonzero ideal of R can contain both y_1 and y_2.

theorem not_mem_associatedPrime_of_ndvd {T : Type u_1} [CommRing T] [IsLocalRing T] [IsNoetherianRing T] [IsDomain T] (R : NSubring T) (r y : R.carrier) (hr : Prime r) (hry : ¬r y) (P : Ideal T) (hP : P associatedPrimes T (T Ideal.span {r})) :
yP

If r is prime in NSubring R and r ∤ y, then y ∉ P for any P ∈ Ass(T/(r·T)). Uses the NSubring height bound: ht(P∩R) ≤ 1 forces P∩R = (r), so y ∈ P → r | y.

theorem isSMulRegular_of_ndvd {T : Type u_1} [CommRing T] [IsLocalRing T] [IsNoetherianRing T] [IsDomain T] (R : NSubring T) (r y : R.carrier) (hr : Prime r) (hry : ¬r y) :

y is a non-zero-divisor on T/(r·T) when r is prime in NSubring R and r ∤ y.

theorem prime_in_adjoinLocSet {T : Type u_1} [CommRing T] [IsLocalRing T] [IsNoetherianRing T] [IsDomain T] (R : NSubring T) (x : T) (y r : R.carrier) (hx_trans : Transcendental (↥R.carrier) x) (hr : Prime r) (hry : ¬r y) (a₁ b₁ c : T) (ha₁ : a₁ adjoinLocSetY R x y) (hb₁ : b₁ adjoinLocSetY R x y) (hc : c adjoinLocSetY R x y) (heq : a₁ * b₁ = r * c) :
(∃ dadjoinLocSetY R x y, a₁ = r * d) dadjoinLocSetY R x y, b₁ = r * d

A prime element r of R that doesn't divide y is "prime" in adjoinLocSetY R x y when x is transcendental over R: if a₁ * b₁ = (r:T) * c in T with a₁, b₁, c ∈ adjoinLocSetY, then r divides a₁ or b₁ within adjoinLocSetY.

The proof has three key ingredients:

  1. Polynomial factorization: from a₁b₁ = rc and transcendence, derive C(r)|f₁ or C(r)|f₂ in R[X] (using C(r) prime and C(r) ∤ C(y)^n).
  2. NSubring height bound: y is a non-zero-divisor in T/(r·T) because y ∉ P for every P ∈ Ass(T/rT). This uses: P∩R has height ≤ 1, r ∈ P∩R with ht((r))=1, so P∩R = (r), and y ∉ (r) since r ∤ y.
  3. Divisibility transfer: from a₁y^m = re and y regular mod r, conclude r|a₁ in T. Then d := a₁/r ∈ adjoinLocSetY with witness (h₁, m₁).

Coprime height bound #

Key lemma: if y₁, y₂ ∈ R are coprime (no prime divides both), then no height-1 prime P of T (that contracts to a nonzero ideal of R) can contain both y₁ and y₂. This is what makes the intersection approach work.

theorem exists_prime_mem_of_ne_bot {S : Type u_2} [CommRing S] [IsDomain S] [UniqueFactorizationMonoid S] (Q : Ideal S) [hQ : Q.IsPrime] (hQ_ne_bot : Q ) :
∃ (q : S), Prime q q Q

In a UFD, every nonzero prime ideal contains a prime element.

theorem coprime_not_both_in_prime {T : Type u_1} [CommRing T] [IsLocalRing T] [IsNoetherianRing T] [IsDomain T] (R : NSubring T) (y₁ y₂ : R.carrier) (hcoprime : ∀ (p : R.carrier), Prime p¬(p y₁ p y₂)) (P : Ideal T) [hP : P.IsPrime] (hPR_ht : (Ideal.comap R.carrier.subtype P).height 1) (hPR_ne : Ideal.comap R.carrier.subtype P ) :
y₁P y₂P

If y₁, y₂ are coprime in R and P∩R has height ≤ 1 and is nonzero, then y₁ ∉ P or y₂ ∉ P.