Module

ArithmeticBoundaryEtale.lean

Nyll.SchemeTheory.Divisors.ArithmeticBoundaryEtale
19 declarations indexed from sourceView source ↗

Arithmetic boundaries under finite etale morphisms

This file develops the finite-etale stability of the arithmetic boundary conditions. It first records the topological fact that a closed generalizing map sends every irreducible component onto an irreducible component. Applied to the finite-etale morphism between a pulled-back boundary and the original boundary, this supplies points on each component of the pullback without adding a component-dominance hypothesis.

Declarations

TopologicalSpace.mem_genericPoints_image_of_generalizingMap

A generalizing map sends generic points of irreducible components to generic points of irreducible components.

Source context 4 commands

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

noncomputable section
open CategoryTheory Limits TopologicalSpace
namespace TopologicalSpace
universe u v
lemma mem_genericPoints_image_of_generalizingMap
    {X : Type u} {Y : Type v} [TopologicalSpace X] [TopologicalSpace Y]
    [T0Space X] [QuasiSober Y] {f : X → Y} (hf : GeneralizingMap f)
    (x : genericPoints X) : f x.1 ∈ genericPoints Y
TopologicalSpace.exists_irreducibleComponent_image_eq

A closed generalizing map maps each irreducible component onto an irreducible component. The result is stated with the actual image equality, which is the surjectivity needed to lift a chosen point componentwise.

Source context 4 commands

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

noncomputable section
open CategoryTheory Limits TopologicalSpace
namespace TopologicalSpace
universe u v
lemma exists_irreducibleComponent_image_eq
    {X : Type u} {Y : Type v} [TopologicalSpace X] [TopologicalSpace Y]
    [T0Space X] [QuasiSober X] [QuasiSober Y]
    {f : X → Y} (hfc : Continuous f) (hfclosed : IsClosedMap f)
    (hfgeneral : GeneralizingMap f) (Z : Set X)
    (hZ : Z ∈ irreducibleComponents X) :
    ∃ W : Set Y, W ∈ irreducibleComponents Y ∧ f '' Z = W
CommRingCat.ker_inr_of_isPushout_of_surjective

In a pushout of commutative rings, base-changing a surjection extends its kernel to the other leg.

Source context 4 commands

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

noncomputable section
open CategoryTheory Limits TopologicalSpace
namespace CommRingCat
universe u
lemma ker_inr_of_isPushout_of_surjective
    {R A B P : CommRingCat.{u}} {f : R ⟶ A} {g : R ⟶ B}
    {inl : A ⟶ P} {inr : B ⟶ P}
    (h : IsPushout f g inl inr) (hf : Function.Surjective f.hom) :
    RingHom.ker inr.hom = (RingHom.ker f.hom).map g.hom
RingHom.isRegularSystemOfParameters_map_of_flat_of_formallyUnramified_of_essFiniteType

A regular system of parameters remains one after an etale local-ring extension. The assumptions are the three ring-map properties supplied by an etale morphism on stalks.

Source context 4 commands

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

noncomputable section
open CategoryTheory Limits TopologicalSpace
namespace RingHom
universe u
lemma isRegularSystemOfParameters_map_of_flat_of_formallyUnramified_of_essFiniteType
    {R S : Type u} [CommRing R] [CommRing S]
    (f : R →+* S) [IsLocalRing R] [IsLocalRing S] [IsLocalHom f]
    (hflat : f.Flat) (hunramified : f.FormallyUnramified)
    (hfiniteType : f.EssFiniteType) {d : ℕ} (t : Fin d → R)
    (ht : AlgebraicGeometry.Scheme.IsRegularSystemOfParameters t) :
    AlgebraicGeometry.Scheme.IsRegularSystemOfParameters (fun i ↦ f (t i)) := by
  algebraize [f]
  let : Module.Flat R S := hflat
  let : Module.FaithfullyFlat R S :=
    Module.FaithfullyFlat.of_flat_of_isLocalHom
  let : Algebra.FormallyUnramified R S := hunramified
  let : Algebra.EssFiniteType R S := hfiniteType
  change AlgebraicGeometry.Scheme.IsRegularSystemOfParameters
    (fun i ↦ algebraMap R S (t i))
  have hlist : List.ofFn (fun i ↦ algebraMap R S (t i)) =
      (List.ofFn t).map (algebraMap R S) := by
    rw [List.map_ofFn]
    congr 1
  constructor
  · rw [hlist]
    exact ht.1.of_faithfullyFlat (S := S)
  · rw [hlist, ← Ideal.map_ofList, ht.2,
      Algebra.FormallyUnramified.map_maximalIdeal]
AlgebraicGeometry.Scheme.Hom.ringChar_residueField_eq

Residue characteristic is unchanged along a morphism of schemes.

Source context 5 commands

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

noncomputable section
open CategoryTheory Limits TopologicalSpace
namespace AlgebraicGeometry
universe u
namespace Scheme
lemma Hom.ringChar_residueField_eq {X Y : Scheme.{u}} (f : Y ⟶ X) (y : Y) :
    ringChar (Y.residueField y) = ringChar (X.residueField (f y))
AlgebraicGeometry.Scheme.IdealSheafData.stalkIdeal_eq_map_ideal

The stalk ideal can be computed from any affine neighbourhood of the point. This is the chart-independence source needed for local pullback arguments; it follows from the localization compatibility built into IdealSheafData.

Source context 7 commands

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

noncomputable section
open CategoryTheory Limits TopologicalSpace
namespace AlgebraicGeometry
universe u
namespace Scheme
namespace IdealSheafData
variable {X Y : Scheme.{u}}
lemma stalkIdeal_eq_map_ideal (I : X.IdealSheafData) (x : X)
    (U : X.affineOpens) (hxU : x ∈ U.1) :
    I.stalkIdeal x =
      (I.ideal U).map (X.presheaf.germ U.1 x hxU).hom
AlgebraicGeometry.Scheme.IdealSheafData.stalkIdeal_mul

Taking the stalk ideal preserves multiplication of ideal sheaves.

Source context 7 commands

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

noncomputable section
open CategoryTheory Limits TopologicalSpace
namespace AlgebraicGeometry
universe u
namespace Scheme
namespace IdealSheafData
variable {X Y : Scheme.{u}}
lemma stalkIdeal_mul (I J : X.IdealSheafData) (x : X) :
    (I * J).stalkIdeal x = I.stalkIdeal x * J.stalkIdeal x
AlgebraicGeometry.Scheme.IdealSheafData.stalkIdeal_finset_prod

Taking the stalk ideal commutes with finite products of ideal sheaves.

Source context 7 commands

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

noncomputable section
open CategoryTheory Limits TopologicalSpace
namespace AlgebraicGeometry
universe u
namespace Scheme
namespace IdealSheafData
variable {X Y : Scheme.{u}}
lemma stalkIdeal_finset_prod {ι : Type*} (s : Finset ι)
    (I : ι → X.IdealSheafData) (x : X) :
    (∏ i ∈ s, I i).stalkIdeal x = ∏ i ∈ s, (I i).stalkIdeal x
AlgebraicGeometry.Scheme.IdealSheafData.ideal_comap_preimage_of_isAffineHom

On an affine target chart, the ideal of a pulled-back closed subscheme is the extension of the original ideal.

Source context 7 commands

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

noncomputable section
open CategoryTheory Limits TopologicalSpace
namespace AlgebraicGeometry
universe u
namespace Scheme
namespace IdealSheafData
variable {X Y : Scheme.{u}}
lemma ideal_comap_preimage_of_isAffineHom
    (I : X.IdealSheafData) (f : Y ⟶ X) [IsAffineHom f]
    (U : X.affineOpens) :
    (I.comap f).ideal ⟨f ⁻¹ᵁ U.1, U.2.preimage f⟩ =
      (I.ideal U).map (f.app U.1).hom
AlgebraicGeometry.Scheme.IdealSheafData.stalkIdeal_comap_of_isAffineHom

For an affine morphism, the stalk ideal of a pulled-back ideal sheaf is the extension of the original stalk ideal.

Source context 7 commands

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

noncomputable section
open CategoryTheory Limits TopologicalSpace
namespace AlgebraicGeometry
universe u
namespace Scheme
namespace IdealSheafData
variable {X Y : Scheme.{u}}
lemma stalkIdeal_comap_of_isAffineHom
    (I : X.IdealSheafData) (f : Y ⟶ X) [IsAffineHom f] (y : Y) :
    (I.comap f).stalkIdeal y =
      (I.stalkIdeal (f y)).map (f.stalkMap y).hom
AlgebraicGeometry.Scheme.initialParameterProduct_map

Ring homomorphisms commute with the product of an initial segment of a parameter family.

Source context 7 commands

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

noncomputable section
open CategoryTheory Limits TopologicalSpace
namespace AlgebraicGeometry
universe u
namespace Scheme
namespace IdealSheafData
variable {X Y : Scheme.{u}}
lemma _root_.AlgebraicGeometry.Scheme.initialParameterProduct_map
    {R S : Type u} [CommRing R] [CommRing S] (φ : R →+* S)
    {d : ℕ} (t : Fin d → R) (r : ℕ) (hr : r ≤ d) :
    φ (Scheme.initialParameterProduct t r hr) =
      Scheme.initialParameterProduct (fun j ↦ φ (t j)) r hr := by
  simp [Scheme.initialParameterProduct]
AlgebraicGeometry.Scheme.IdealSheafData.IsStrictNormalCrossingsAt.comap_of_finiteEtale

Strict normal crossings at a point are preserved by finite-etale pullback.

Source context 7 commands

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

noncomputable section
open CategoryTheory Limits TopologicalSpace
namespace AlgebraicGeometry
universe u
namespace Scheme
namespace IdealSheafData
variable {X Y : Scheme.{u}}
lemma IsStrictNormalCrossingsAt.comap_of_finiteEtale
    (I : X.IdealSheafData) (f : Y ⟶ X) [IsFiniteEtale f] (y : Y)
    (hI : I.IsStrictNormalCrossingsAt (f y)) :
    (I.comap f).IsStrictNormalCrossingsAt y
AlgebraicGeometry.Scheme.IdealSheafData.IsNormalCrossingsAt.comap_of_finiteEtale

Normal crossings at a point are preserved by finite-etale pullback.

Source context 7 commands

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

noncomputable section
open CategoryTheory Limits TopologicalSpace
namespace AlgebraicGeometry
universe u
namespace Scheme
namespace IdealSheafData
variable {X Y : Scheme.{u}}
lemma IsNormalCrossingsAt.comap_of_finiteEtale
    (I : X.IdealSheafData) (f : Y ⟶ X) [IsFiniteEtale f] (y : Y)
    (hI : I.IsNormalCrossingsAt (f y)) :
    (I.comap f).IsNormalCrossingsAt y
AlgebraicGeometry.Scheme.IdealSheafData.comapSubschemeTo

The canonical morphism from the subscheme cut out by a pulled-back ideal sheaf to the original subscheme. It is presented as a pullback projection so that morphism properties are inherited directly.

Source context 7 commands

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

noncomputable section
open CategoryTheory Limits TopologicalSpace
namespace AlgebraicGeometry
universe u
namespace Scheme
namespace IdealSheafData
variable {X Y : Scheme.{u}}
def comapSubschemeTo (I : X.IdealSheafData) (f : Y ⟶ X) :
    (I.comap f).subscheme ⟶ I.subscheme
Source context 7 commands

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

noncomputable section
open CategoryTheory Limits TopologicalSpace
namespace AlgebraicGeometry
universe u
namespace Scheme
namespace IdealSheafData
variable {X Y : Scheme.{u}}
instance (I : X.IdealSheafData) (f : Y ⟶ X) [IsFiniteEtale f] :
    IsFiniteEtale (I.comapSubschemeTo f)
AlgebraicGeometry.Scheme.IdealSheafData.comapSubschemeTo_subschemeι
Source context 7 commands

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

noncomputable section
open CategoryTheory Limits TopologicalSpace
namespace AlgebraicGeometry
universe u
namespace Scheme
namespace IdealSheafData
variable {X Y : Scheme.{u}}
lemma comapSubschemeTo_subschemeι (I : X.IdealSheafData) (f : Y ⟶ X) :
    I.comapSubschemeTo f ≫ I.subschemeι = (I.comap f).subschemeι ≫ f
AlgebraicGeometry.Scheme.IdealSheafData.exists_irreducibleComponent_image_comapSubschemeTo_eq

Every irreducible component of a finite-etale pullback of a closed subscheme maps onto an irreducible component of the original subscheme.

Source context 7 commands

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

noncomputable section
open CategoryTheory Limits TopologicalSpace
namespace AlgebraicGeometry
universe u
namespace Scheme
namespace IdealSheafData
variable {X Y : Scheme.{u}}
lemma exists_irreducibleComponent_image_comapSubschemeTo_eq
    (I : X.IdealSheafData) (f : Y ⟶ X) [IsFiniteEtale f]
    (Z : Set (I.comap f).subscheme)
    (hZ : Z ∈ irreducibleComponents (I.comap f).subscheme) :
    ∃ W : Set I.subscheme,
      W ∈ irreducibleComponents I.subscheme ∧ I.comapSubschemeTo f '' Z = W
AlgebraicGeometry.Scheme.EffectiveCartierDivisor.exists_residueCharacteristicPoint_on_comapComponent

A residue-characteristic point on an original boundary component lifts to every irreducible component of a finite-etale pullback lying over it. The normal-crossings assertion is retained at the image point; upgrading it to normal crossings for the pulled-back ideal sheaf is the separate local strict-normal-crossings base-change step.

Source context 7 commands

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

noncomputable section
open CategoryTheory Limits TopologicalSpace
namespace AlgebraicGeometry
universe u
namespace Scheme
namespace EffectiveCartierDivisor
variable {X Y S : Scheme.{u}}
lemma exists_residueCharacteristicPoint_on_comapComponent
    (D : EffectiveCartierDivisor X) (f : Y ⟶ X) [IsFiniteEtale f]
    (q : ℕ) (hD : D.HasNormalCrossingPointOfResidueCharacteristicOnEachComponent q)
    (Z : Set (D.1.comap f).subscheme)
    (hZ : Z ∈ irreducibleComponents (D.1.comap f).subscheme) :
    ∃ y : (D.1.comap f).subscheme,
      y ∈ Z ∧
        ringChar (Y.residueField ((D.1.comap f).subschemeι y)) = q ∧
          D.IsNormalCrossingsAt (f ((D.1.comap f).subschemeι y))
AlgebraicGeometry.Scheme.EffectiveCartierDivisor.exists_normalCrossingPointOfResidueCharacteristic_on_comapComponent

Every component of a finite-etale pullback contains a point of the prescribed residue characteristic where the pulled-back boundary itself has normal crossings.

Source context 7 commands

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

noncomputable section
open CategoryTheory Limits TopologicalSpace
namespace AlgebraicGeometry
universe u
namespace Scheme
namespace EffectiveCartierDivisor
variable {X Y S : Scheme.{u}}
lemma exists_normalCrossingPointOfResidueCharacteristic_on_comapComponent
    (D : EffectiveCartierDivisor X) (f : Y ⟶ X) [IsFiniteEtale f]
    (q : ℕ) (hD : D.HasNormalCrossingPointOfResidueCharacteristicOnEachComponent q)
    (Z : Set (D.1.comap f).subscheme)
    (hZ : Z ∈ irreducibleComponents (D.1.comap f).subscheme) :
    ∃ y : (D.1.comap f).subscheme,
      y ∈ Z ∧
        ringChar (Y.residueField ((D.1.comap f).subschemeι y)) = q ∧
          (D.1.comap f).IsNormalCrossingsAt ((D.1.comap f).subschemeι y)