Module

PrimitiveSectionIdeal.lean

Nyll.ShimizuYamaguchi26BranchedCoverings.Geometry.PrimitiveSectionIdeal
6 declarations indexed from sourceView source ↗

The reduced ideal of a primitive section equation

The infinity-chart equation of primitive integral coordinates (u,v) is v-u*w. When u is nonzero, coprimality makes this polynomial irreducible, and unique factorization in ℤ[w] makes its principal ideal prime. When u is zero, v is a unit and the ideal is the unit ideal.

Thus the equation ideal is radical in both cases. Primitive coordinates of distinct projective points give relatively prime equations, so the intersection of a finite family of these ideals equals their product. These are the algebraic steps needed to pass from the closed support of the actual integral sections to their scheme-theoretic equation ideals in Lemma 2.3 of Shimizu and Yamaguchi, On branched coverings of the projective line over the integers.

Imports26
  • Nyll.ShimizuYamaguchi26BranchedCoverings.Arithmetic.Determinant
  • Mathlib.Algebra.BigOperators.Group.Finset.Piecewise
  • Mathlib.Algebra.Divisibility.Basic
  • Mathlib.Algebra.Divisibility.Units
  • Mathlib.Algebra.EuclideanDomain.Int
  • Mathlib.Algebra.GroupWithZero.Associated
  • Mathlib.Algebra.Module.Submodule.Lattice
  • Mathlib.Algebra.Polynomial.Basic
  • Mathlib.Algebra.Polynomial.Degree.Defs
  • Mathlib.Algebra.Polynomial.Degree.Domain
  • Mathlib.Algebra.Polynomial.Degree.Lemmas
  • Mathlib.Algebra.Polynomial.Degree.Operations
  • Mathlib.Algebra.Polynomial.RingDivision
  • Mathlib.Algebra.Prime.Defs
  • Mathlib.Algebra.Ring.Divisibility.Basic
  • Mathlib.RingTheory.Coprime.Basic
  • Mathlib.RingTheory.Coprime.Lemmas
  • Mathlib.RingTheory.EuclideanDomain
  • Mathlib.RingTheory.Ideal.Maximal
  • Mathlib.RingTheory.Ideal.Operations
  • Mathlib.RingTheory.Ideal.Span
  • Mathlib.RingTheory.Polynomial.UniqueFactorization
  • Mathlib.RingTheory.PrincipalIdealDomain
  • Mathlib.RingTheory.Spectrum.Prime.Basic
  • Mathlib.RingTheory.Spectrum.Prime.Topology
  • Mathlib.Tactic.Ring
Imported by6

Declarations

ShimizuYamaguchi26BranchedCoverings.infinitySectionIdeal

The principal ideal of the section equation in the integral infinity chart.

Source context 2 commands

Surrounding namespaces, section variables, and local commands at this declaration.

open scoped Polynomial BigOperators
namespace ShimizuYamaguchi26BranchedCoverings
def infinitySectionIdeal (u v : ℤ) : Ideal ℤ[X]
ShimizuYamaguchi26BranchedCoverings.infinitySectionIdeal_isPrime

A primitive nonconstant section equation generates a prime ideal.

Source context 2 commands

Surrounding namespaces, section variables, and local commands at this declaration.

open scoped Polynomial BigOperators
namespace ShimizuYamaguchi26BranchedCoverings
theorem infinitySectionIdeal_isPrime (u v : ℤ) (hu : u ≠ 0)
    (huv : IsCoprime u v) : (infinitySectionIdeal u v).IsPrime
ShimizuYamaguchi26BranchedCoverings.infinitySectionEquations_isRelPrime

A primitive section equation has no common nonunit factor with the equation of a different projective point. Only the first coordinate pair must be primitive.

Source context 2 commands

Surrounding namespaces, section variables, and local commands at this declaration.

open scoped Polynomial BigOperators
namespace ShimizuYamaguchi26BranchedCoverings
theorem infinitySectionEquations_isRelPrime (u v u' v' : ℤ)
    (huv : IsCoprime u v) (hdet : coordinateDeterminant u v u' v' ≠ 0) :
    IsRelPrime (Polynomial.C v - Polynomial.C u * Polynomial.X)
      (Polynomial.C v' - Polynomial.C u' * Polynomial.X)
ShimizuYamaguchi26BranchedCoverings.infinitySectionIdeal_finset_inf_eq_prod

For finitely many distinct primitive sections, the intersection of their infinity-chart equation ideals equals the product of those ideals.

Source context 2 commands

Surrounding namespaces, section variables, and local commands at this declaration.

open scoped Polynomial BigOperators
namespace ShimizuYamaguchi26BranchedCoverings
theorem infinitySectionIdeal_finset_inf_eq_prod {ι : Type*} (s : Finset ι)
    (u v : ι → ℤ) (hprimitive : ∀ i ∈ s, IsCoprime (u i) (v i))
    (hdet : ∀ i ∈ s, ∀ j ∈ s, i ≠ j →
      coordinateDeterminant (u i) (v i) (u j) (v j) ≠ 0) :
    (s.inf fun i => infinitySectionIdeal (u i) (v i)) =
      ∏ i ∈ s, infinitySectionIdeal (u i) (v i) := by
  let f : ι → ℤ[X] := fun i => Polynomial.C (v i) - Polynomial.C (u i) * Polynomial.X
  have hrel : (s : Set ι).Pairwise (fun i j => IsRelPrime (f i) (f j)) := by
    intro i hi j hj hij
    exact infinitySectionEquations_isRelPrime (u i) (v i) (u j) (v j)
      (hprimitive i hi) (hdet i hi j hj hij)
  change (s.inf fun i => Ideal.span {f i}) = ∏ i ∈ s, Ideal.span {f i}
  rw [Ideal.prod_span_singleton]
  ext z
  simp only [Submodule.mem_finsetInf, Ideal.mem_span_singleton]
  exact ⟨Finset.prod_dvd_of_isRelPrime hrel,
    fun hz i hi => (Finset.dvd_prod_of_mem f hi).trans hz⟩
ShimizuYamaguchi26BranchedCoverings.infinitySectionIdeal_isRadical

The section equation ideal is reduced for every primitive coordinate pair.

Source context 2 commands

Surrounding namespaces, section variables, and local commands at this declaration.

open scoped Polynomial BigOperators
namespace ShimizuYamaguchi26BranchedCoverings
theorem infinitySectionIdeal_isRadical (u v : ℤ) (huv : IsCoprime u v) :
    (infinitySectionIdeal u v).IsRadical
ShimizuYamaguchi26BranchedCoverings.vanishingIdeal_infinitySectionIdeal

The vanishing ideal of the primitive equation's zero locus is the equation ideal itself.

Source context 2 commands

Surrounding namespaces, section variables, and local commands at this declaration.

open scoped Polynomial BigOperators
namespace ShimizuYamaguchi26BranchedCoverings
theorem vanishingIdeal_infinitySectionIdeal (u v : ℤ) (huv : IsCoprime u v) :
    PrimeSpectrum.vanishingIdeal
        (PrimeSpectrum.zeroLocus (infinitySectionIdeal u v : Set ℤ[X])) =
      infinitySectionIdeal u v