Module

IntegerProjectiveIntersection.lean

Nyll.ShimizuYamaguchi26BranchedCoverings.Geometry.IntegerProjectiveIntersection
10 declarations indexed from sourceView source ↗

The intersection calculation in the integral projective line

The actual point of ℙ¹_ℤ represented by (p,w) in the infinity chart has local ring ℤ[w]_(p,w). The chart stalk isomorphism and the coefficient localization comparison identify this ring with the local chart ring over ℤ_(p), preserving the germs of every integral polynomial.

The ideal generated by the actual germs of w and v-u*w is consequently carried to the same two equations over ℤ_(p). Its quotient is isomorphic to the projective-stalk intersection quotient already constructed over the local coefficient ring, and has length v_p(v) when v is nonzero.

This supplies the integral projective-stalk calculation in Lemma 2.3 of Shimizu and Yamaguchi, On branched coverings of the projective line over the integers. Identifying these equation ideals with the original integral section ideals, transporting a general pair by the Bezout coordinate change, and proving the normal-crossing criterion remain separate requirements.

Declarations

ShimizuYamaguchi26BranchedCoverings.integerProjectiveInfinityPoint

The actual point (p,w) of the integral projective line in the infinity chart.

Source context 4 commands

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

noncomputable section
open scoped Polynomial
namespace ShimizuYamaguchi26BranchedCoverings
attribute [local instance] Polynomial.algebra
def integerProjectiveInfinityPoint (p : ℕ) [Fact p.Prime] : ProjectiveLine ℤ
ShimizuYamaguchi26BranchedCoverings.IntegerProjectiveInfinityLocalRing

The actual local ring of the integral projective line at this point.

Source context 4 commands

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

noncomputable section
open scoped Polynomial
namespace ShimizuYamaguchi26BranchedCoverings
attribute [local instance] Polynomial.algebra
abbrev IntegerProjectiveInfinityLocalRing (p : ℕ) [Fact p.Prime]
ShimizuYamaguchi26BranchedCoverings.integerProjectiveInfinityStalkEquiv

The integral projective stalk equals the chart local ring after coefficient localization.

Source context 4 commands

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

noncomputable section
open scoped Polynomial
namespace ShimizuYamaguchi26BranchedCoverings
attribute [local instance] Polynomial.algebra
def integerProjectiveInfinityStalkEquiv (p : ℕ) [Fact p.Prime] :
    IntegerProjectiveInfinityLocalRing p ≃+* InfinityChartLocalRing (IntegerPrimeLocalization p)
ShimizuYamaguchi26BranchedCoverings.integerProjectiveInfinityStalkEquiv_germ

The comparison preserves the actual germ of each integral polynomial.

Source context 4 commands

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

noncomputable section
open scoped Polynomial
namespace ShimizuYamaguchi26BranchedCoverings
attribute [local instance] Polynomial.algebra
theorem integerProjectiveInfinityStalkEquiv_germ
    (p : ℕ) [Fact p.Prime] (f : ℤ[X]) :
    integerProjectiveInfinityStalkEquiv p
        (infinityChartGermAt ℤ (integerInfinityChartPoint p) f) =
      algebraMap ℤ[X] (InfinityChartLocalRing (IntegerPrimeLocalization p)) f
ShimizuYamaguchi26BranchedCoverings.integerProjectiveInfinityIntersectionIdeal

The ideal of the two equation germs in the actual integral projective stalk.

Source context 4 commands

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

noncomputable section
open scoped Polynomial
namespace ShimizuYamaguchi26BranchedCoverings
attribute [local instance] Polynomial.algebra
def integerProjectiveInfinityIntersectionIdeal (p : ℕ) [Fact p.Prime] (u v : ℤ) :
    Ideal (IntegerProjectiveInfinityLocalRing p)
ShimizuYamaguchi26BranchedCoverings.map_integerProjectiveInfinityIntersectionIdeal

The stalk comparison carries the two integral equations to their coefficient-localized forms.

Source context 4 commands

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

noncomputable section
open scoped Polynomial
namespace ShimizuYamaguchi26BranchedCoverings
attribute [local instance] Polynomial.algebra
theorem map_integerProjectiveInfinityIntersectionIdeal
    (p : ℕ) [Fact p.Prime] (u v : ℤ) :
    (integerProjectiveInfinityIntersectionIdeal p u v).map
        (integerProjectiveInfinityStalkEquiv p).toRingHom =
      (infinityIntersectionIdeal (algebraMap ℤ (IntegerPrimeLocalization p) u)
        (algebraMap ℤ (IntegerPrimeLocalization p) v)).map
          (algebraMap (IntegerPrimeLocalization p)[X]
            (InfinityChartLocalRing (IntegerPrimeLocalization p)))
ShimizuYamaguchi26BranchedCoverings.IntegerProjectiveInfinityIntersectionAlgebra

The quotient by the two equation germs in the integral projective stalk.

Source context 4 commands

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

noncomputable section
open scoped Polynomial
namespace ShimizuYamaguchi26BranchedCoverings
attribute [local instance] Polynomial.algebra
abbrev IntegerProjectiveInfinityIntersectionAlgebra (p : ℕ) [Fact p.Prime] (u v : ℤ)
ShimizuYamaguchi26BranchedCoverings.integerProjectiveInfinityIntersectionEquiv

The two projective-stalk intersection quotients agree before and after coefficient localization.

Source context 4 commands

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

noncomputable section
open scoped Polynomial
namespace ShimizuYamaguchi26BranchedCoverings
attribute [local instance] Polynomial.algebra
def integerProjectiveInfinityIntersectionEquiv (p : ℕ) [Fact p.Prime] (u v : ℤ) :
    IntegerProjectiveInfinityIntersectionAlgebra p u v ≃+*
      ProjectiveInfinityIntersectionAlgebra (algebraMap ℤ (IntegerPrimeLocalization p) u)
        (algebraMap ℤ (IntegerPrimeLocalization p) v)
ShimizuYamaguchi26BranchedCoverings.integerProjectiveInfinityIntersection_length_eq

Coefficient localization preserves the length of the quotient of the actual projective stalk.

Source context 4 commands

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

noncomputable section
open scoped Polynomial
namespace ShimizuYamaguchi26BranchedCoverings
attribute [local instance] Polynomial.algebra
theorem integerProjectiveInfinityIntersection_length_eq
    (p : ℕ) [Fact p.Prime] (u v : ℤ) :
    Module.length (IntegerProjectiveInfinityLocalRing p)
        (IntegerProjectiveInfinityIntersectionAlgebra p u v) =
      Module.length (ProjectiveInfinityLocalRing (IntegerPrimeLocalization p))
        (ProjectiveInfinityIntersectionAlgebra (algebraMap ℤ (IntegerPrimeLocalization p) u)
          (algebraMap ℤ (IntegerPrimeLocalization p) v))
ShimizuYamaguchi26BranchedCoverings.integerProjectiveInfinityIntersection_length

The two equation germs in the original integral projective stalk have length v_p(v).

Source context 4 commands

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

noncomputable section
open scoped Polynomial
namespace ShimizuYamaguchi26BranchedCoverings
attribute [local instance] Polynomial.algebra
theorem integerProjectiveInfinityIntersection_length
    (p : ℕ) [Fact p.Prime] (u v : ℤ) (hv : v ≠ 0) :
    Module.length (IntegerProjectiveInfinityLocalRing p)
        (IntegerProjectiveInfinityIntersectionAlgebra p u v) =
      (padicValInt p v : ℕ∞)