Documentation

LeanPool.Nikodym.Nikodym.LowerBound.Algebra.LinearNormalization

Linear Noether normalization of a standard graded algebra #

This file implements blueprint node A02 of the algebra backend. Throughout, Q := MvPolynomial (Fin n) K is the polynomial ring in n variables over a field K, π”ͺβ‚™ := idealOfVars (Fin n) K is the ideal generated by the variables, and J is a homogeneous ideal of Q with respect to the standard grading homogeneousSubmodule (Fin n) K.

Main declarations #

Sub-lemmas (blueprint A02.a–A02.h) #

Conventions #

Mathlib's graded-ring structure on MvPolynomial is a local instance (attribute [local instance] MvPolynomial.gradedAlgebra); statements mention the grading explicitly as homogeneousSubmodule (Fin n) K. The algebra structure of Q β§Έ J over MvPolynomial (Fin s) K is never a global instance: the finiteness theorems take it either as an instance argument together with the hypothesis algebraMap _ _ = (MvPolynomial.aeval fun i ↦ Ideal.Quotient.mk J (y i)).toRingHom (finite_of_pow_idealOfVars_le'), or install it with letI in the statement (finite_of_pow_idealOfVars_le).

A02.c: minimal primes of a homogeneous ideal are homogeneous (general graded rings) #

theorem Nikodym.LowerBound.IsHomogeneous.minimalPrimes_isHomogeneous {ΞΉ : Type u_1} {Οƒ : Type u_2} {A : Type u_3} [CommRing A] [AddCommMonoid ΞΉ] [LinearOrder ΞΉ] [IsOrderedCancelAddMonoid ΞΉ] [SetLike Οƒ A] [AddSubmonoidClass Οƒ A] (π’œ : ΞΉ β†’ Οƒ) [GradedRing π’œ] {J : Ideal A} (hJ : Ideal.IsHomogeneous π’œ J) {q : Ideal A} (hq : q ∈ J.minimalPrimes) :

Blueprint A02.c: the minimal primes of a homogeneous ideal are homogeneous. For q ∈ J.minimalPrimes, the homogeneous core of q is a prime containing J and contained in q, hence equal to q by minimality.

Homogeneous components of products with a form #

Blueprint A02.h, auxiliary: a form of degree t lies in π”ͺ ^ t.

Blueprint A02.h, auxiliary: the degree-(m + e) component of c * y, for a form y of degree e, is (c)_m * y.

The polynomial ring in n variables #

@[instance_reducible]
noncomputable def Nikodym.LowerBound.normalizationPolynomialQuotientSMul {K : Type u_1} [Field K] {k : β„•} (J : Ideal (MvPolynomial (Fin k) K)) (S : Type u_2) [CommSemiring S] [Algebra S (MvPolynomial (Fin k) K β§Έ J)] :

Use the specified algebra scalar action without searching quotient module structures.

Equations
Instances For
    @[instance_reducible]
    noncomputable def Nikodym.LowerBound.normalizationPolynomialQuotientModule {K : Type u_1} [Field K] {k : β„•} (J : Ideal (MvPolynomial (Fin k) K)) (S : Type u_2) [CommSemiring S] [Algebra S (MvPolynomial (Fin k) K β§Έ J)] :

    Use the given algebra action directly on a polynomial quotient.

    Equations
    Instances For

      A02.b: proper homogeneous ideals lie in π”ͺβ‚™ #

      Blueprint A02.b: π”ͺβ‚™ is a prime ideal.

      Blueprint A02.b: quotDim π”ͺβ‚™ = 0.

      Blueprint A02.b: a proper homogeneous ideal is contained in π”ͺβ‚™: the degree-0 component of any element is a constant lying in the ideal, hence zero.

      Blueprint A02.b: a prime p ≀ π”ͺβ‚™ with quotDim p = 0 equals π”ͺβ‚™.

      Blueprint A02: the ideal generated by linear forms is homogeneous.

      theorem Nikodym.LowerBound.sup_span_range_le_idealOfVars {K : Type u_1} [Field K] {n : β„•} {J : Ideal (MvPolynomial (Fin n) K)} (hJ : J β‰  ⊀) (hJh : Ideal.IsHomogeneous (MvPolynomial.homogeneousSubmodule (Fin n) K) J) {s : β„•} {y : Fin s β†’ MvPolynomial (Fin n) K} (hy : βˆ€ (i : Fin s), (y i).IsHomogeneous 1) :

      Blueprint A02: for a proper homogeneous J and linear forms y, J βŠ” (y) ≀ π”ͺβ‚™.

      theorem Nikodym.LowerBound.sup_span_range_ne_top {K : Type u_1} [Field K] {n : β„•} {J : Ideal (MvPolynomial (Fin n) K)} (hJ : J β‰  ⊀) (hJh : Ideal.IsHomogeneous (MvPolynomial.homogeneousSubmodule (Fin n) K) J) {s : β„•} {y : Fin s β†’ MvPolynomial (Fin n) K} (hy : βˆ€ (i : Fin s), (y i).IsHomogeneous 1) :

      Blueprint A02: for a proper homogeneous J and linear forms y, J βŠ” (y) β‰  ⊀.

      theorem Nikodym.LowerBound.eq_top_of_sup_span_range_eq_top {K : Type u_1} [Field K] {n : β„•} {J : Ideal (MvPolynomial (Fin n) K)} (hJh : Ideal.IsHomogeneous (MvPolynomial.homogeneousSubmodule (Fin n) K) J) {s : β„•} {y : Fin s β†’ MvPolynomial (Fin n) K} (hy : βˆ€ (i : Fin s), (y i).IsHomogeneous 1) (h : J βŠ” Ideal.span (Set.range y) = ⊀) :

      Blueprint A02: if J βŠ” (y) = ⊀ for a homogeneous J and linear forms y, then J = ⊀.

      A02.a: prime avoidance for linear forms #

      theorem Nikodym.LowerBound.exists_linear_form_notMem {K : Type u_1} [Field K] {n : β„•} [Infinite K] {ΞΉ : Type u_2} [Finite ΞΉ] (p : ΞΉ β†’ Ideal (MvPolynomial (Fin n) K)) (hp : βˆ€ (i : ΞΉ), Β¬MvPolynomial.idealOfVars (Fin n) K ≀ p i) :
      βˆƒ (y : MvPolynomial (Fin n) K), y.IsHomogeneous 1 ∧ βˆ€ (i : ΞΉ), y βˆ‰ p i

      Blueprint A02.a: a linear form outside finitely many ideals. If none of the ideals p i (finitely many) contains π”ͺβ‚™, there is a linear form outside all of them. The subspaces p i ∩ P_1 of the space P_1 of linear forms are proper, and a finite union of proper subspaces over an infinite field is not everything.

      A02.f: dimension zero forces a power of π”ͺβ‚™ #

      Blueprint A02.f: a proper homogeneous ideal of quotient dimension 0 contains a power of π”ͺβ‚™. Its minimal primes are homogeneous (A02.c), proper, hence ≀ π”ͺβ‚™, and of quotient dimension 0, hence = π”ͺβ‚™; so its radical is π”ͺβ‚™, and π”ͺβ‚™ is finitely generated.

      A02.d, A02.e: cutting down the dimension by linear forms #

      theorem Nikodym.LowerBound.quotDim_sup_span_singleton_lt {K : Type u_1} [Field K] {n : β„•} {J : Ideal (MvPolynomial (Fin n) K)} (hJ : J β‰  ⊀) (hJh : Ideal.IsHomogeneous (MvPolynomial.homogeneousSubmodule (Fin n) K) J) (hpos : 1 ≀ quotDim J) {y : MvPolynomial (Fin n) K} (hy1 : y.IsHomogeneous 1) (hy : βˆ€ p ∈ J.minimalPrimes, p β‰  MvPolynomial.idealOfVars (Fin n) K β†’ y βˆ‰ p) :
      quotDim (J βŠ” Ideal.span {y}) < quotDim J

      Blueprint A02.d: a linear form avoiding the minimal primes other than π”ͺβ‚™ drops the dimension. Every prime q βŠ‡ J + (y) contains a minimal prime p of J; either p = π”ͺβ‚™ = q (dimension 0), or y βˆ‰ p, so p < q and quotDim q < quotDim p ≀ quotDim J.

      theorem Nikodym.LowerBound.exists_linear_forms_quotDim_sup_eq_zero {K : Type u_1} [Field K] {n : β„•} [Infinite K] (k : β„•) (J : Ideal (MvPolynomial (Fin n) K)) :
      J β‰  ⊀ β†’ Ideal.IsHomogeneous (MvPolynomial.homogeneousSubmodule (Fin n) K) J β†’ quotDim J ≀ k β†’ βˆƒ (y : Fin k β†’ MvPolynomial (Fin n) K), (βˆ€ (i : Fin k), (y i).IsHomogeneous 1) ∧ quotDim (J βŠ” Ideal.span (Set.range y)) = 0

      Blueprint A02.e: iterating A02.d. For K infinite and J β‰  ⊀ homogeneous with quotDim J ≀ k, there are k linear forms y with quotDim (J βŠ” (y)) = 0.

      A02.h: graded Nakayama #

      theorem Nikodym.LowerBound.exists_eq_add_sum_mul_of_pow_idealOfVars_le {K : Type u_1} [Field K] {n : β„•} {J : Ideal (MvPolynomial (Fin n) K)} (hJh : Ideal.IsHomogeneous (MvPolynomial.homogeneousSubmodule (Fin n) K) J) {s N : β„•} {y : Fin s β†’ MvPolynomial (Fin n) K} (hy : βˆ€ (i : Fin s), (y i).IsHomogeneous 1) (hN : MvPolynomial.idealOfVars (Fin n) K ^ N ≀ J βŠ” Ideal.span (Set.range y)) {t : β„•} (ht : N ≀ t) {F : MvPolynomial (Fin n) K} (hF : F.IsHomogeneous t) :
      βˆƒ (G : MvPolynomial (Fin n) K) (H : Fin s β†’ MvPolynomial (Fin n) K), G ∈ J ∧ (βˆ€ (i : Fin s), (H i).IsHomogeneous (t - 1)) ∧ F = G + βˆ‘ i : Fin s, y i * H i

      Blueprint A02.h (graded refinement): if π”ͺβ‚™ ^ N ≀ J βŠ” (y) for linear forms y, every form F of degree t β‰₯ N is G + βˆ‘ i, y i * H i with G ∈ J and H i forms of degree t - 1. Write F = Gβ‚€ + βˆ‘ i, c i * y i and take degree-t components.

      theorem Nikodym.LowerBound.span_image_mk_eq_top_of_pow_idealOfVars_le {K : Type u_1} [Field K] {n : β„•} {J : Ideal (MvPolynomial (Fin n) K)} (hJh : Ideal.IsHomogeneous (MvPolynomial.homogeneousSubmodule (Fin n) K) J) {s N : β„•} {y : Fin s β†’ MvPolynomial (Fin n) K} (hy : βˆ€ (i : Fin s), (y i).IsHomogeneous 1) (hN : MvPolynomial.idealOfVars (Fin n) K ^ N ≀ J βŠ” Ideal.span (Set.range y)) [Algebra (MvPolynomial (Fin s) K) (MvPolynomial (Fin n) K β§Έ J)] (halg : algebraMap (MvPolynomial (Fin s) K) (MvPolynomial (Fin n) K β§Έ J) = (MvPolynomial.aeval fun (i : Fin s) => (Ideal.Quotient.mk J) (y i)).toRingHom) :
      βˆƒ (gens : Finset (MvPolynomial (Fin n) K)), (βˆ€ g ∈ gens, βˆƒ u < N, g.IsHomogeneous u) ∧ Submodule.span (MvPolynomial (Fin s) K) (⇑(Ideal.Quotient.mk J) '' ↑gens) = ⊀

      Blueprint A02.h: graded Nakayama, spanning set. Let S := MvPolynomial (Fin s) K act on Q β§Έ J through X i ↦ mk J (y i) (an arbitrary algebra structure with this algebraMap). If π”ͺβ‚™ ^ N ≀ J βŠ” (y), then Q β§Έ J is spanned over S by the classes of finitely many forms of degree < N (the monomials of degree < N).

      theorem Nikodym.LowerBound.finite_of_pow_idealOfVars_le' {K : Type u_1} [Field K] {n : β„•} {J : Ideal (MvPolynomial (Fin n) K)} (hJh : Ideal.IsHomogeneous (MvPolynomial.homogeneousSubmodule (Fin n) K) J) {s N : β„•} {y : Fin s β†’ MvPolynomial (Fin n) K} (hy : βˆ€ (i : Fin s), (y i).IsHomogeneous 1) (hN : MvPolynomial.idealOfVars (Fin n) K ^ N ≀ J βŠ” Ideal.span (Set.range y)) [Algebra (MvPolynomial (Fin s) K) (MvPolynomial (Fin n) K β§Έ J)] (halg : algebraMap (MvPolynomial (Fin s) K) (MvPolynomial (Fin n) K β§Έ J) = (MvPolynomial.aeval fun (i : Fin s) => (Ideal.Quotient.mk J) (y i)).toRingHom) :

      Blueprint A02.h: module-finiteness of Q β§Έ J over MvPolynomial (Fin s) K (acting through X i ↦ mk J (y i)) from π”ͺβ‚™ ^ N ≀ J βŠ” (y); version with the algebra structure as a hypothesis.

      theorem Nikodym.LowerBound.finite_of_pow_idealOfVars_le {K : Type u_1} [Field K] {n : β„•} {J : Ideal (MvPolynomial (Fin n) K)} (hJh : Ideal.IsHomogeneous (MvPolynomial.homogeneousSubmodule (Fin n) K) J) {s N : β„•} {y : Fin s β†’ MvPolynomial (Fin n) K} (hy : βˆ€ (i : Fin s), (y i).IsHomogeneous 1) (hN : MvPolynomial.idealOfVars (Fin n) K ^ N ≀ J βŠ” Ideal.span (Set.range y)) :

      Blueprint A02.h: module-finiteness of Q β§Έ J over MvPolynomial (Fin s) K for the algebra structure (MvPolynomial.aeval fun i ↦ mk J (y i)).toRingHom.toAlgebra, from π”ͺβ‚™ ^ N ≀ J βŠ” (y).

      A02.g: injectivity by dimension counting #

      theorem Nikodym.LowerBound.aeval_injective_of_pow_idealOfVars_le {K : Type u_1} [Field K] {n : β„•} {J : Ideal (MvPolynomial (Fin n) K)} (hJ : J β‰  ⊀) (hJh : Ideal.IsHomogeneous (MvPolynomial.homogeneousSubmodule (Fin n) K) J) {s : β„•} (hs : s ≀ quotDim J) {y : Fin s β†’ MvPolynomial (Fin n) K} (hy : βˆ€ (i : Fin s), (y i).IsHomogeneous 1) {N : β„•} (hN : MvPolynomial.idealOfVars (Fin n) K ^ N ≀ J βŠ” Ideal.span (Set.range y)) :

      Blueprint A02.g: injectivity of the linear normalization. If π”ͺβ‚™ ^ N ≀ J βŠ” (y) for s linear forms y with s ≀ quotDim J, then MvPolynomial.aeval (mk J ∘ y) is injective: Q β§Έ J is finite, hence integral, over its image S β§Έ ker, so dim (S β§Έ ker) = quotDim J β‰₯ s; a nonzero kernel would force dim (S β§Έ ker) + 1 ≀ dim S = s.

      The main theorem #

      theorem Nikodym.LowerBound.exists_linear_normalization {K : Type u_1} [Field K] {n : β„•} [Infinite K] (J : Ideal (MvPolynomial (Fin n) K)) (hJ : J β‰  ⊀) (hJh : Ideal.IsHomogeneous (MvPolynomial.homogeneousSubmodule (Fin n) K) J) :
      βˆƒ (y : Fin (quotDim J) β†’ MvPolynomial (Fin n) K), (βˆ€ (i : Fin (quotDim J)), (y i).IsHomogeneous 1) ∧ Function.Injective ⇑(MvPolynomial.aeval fun (i : Fin (quotDim J)) => (Ideal.Quotient.mk J) (y i)) ∧ βˆƒ (N : β„•), MvPolynomial.idealOfVars (Fin n) K ^ N ≀ J βŠ” Ideal.span (Set.range y)

      Blueprint A02: linear Noether normalization of a standard graded algebra. For K infinite and J β‰  ⊀ a homogeneous ideal of Q = MvPolynomial (Fin n) K, there are quotDim J linear forms y i such that MvPolynomial.aeval (mk J ∘ y) : MvPolynomial (Fin (quotDim J)) K →ₐ[K] Q β§Έ J is injective and π”ͺβ‚™ ^ N ≀ J βŠ” span (range y) for some N (so Q β§Έ J is module-finite over the image: finite_of_pow_idealOfVars_le).