Module

FiniteNormalSource.lean

Nyll.SchemeTheory.Normalization.FiniteNormalSource
8 declarations indexed from sourceView source ↗

A finite normal source is its generic relative normalization

This generalizes the affine integral-closure argument used for finite étale covers to any finite morphism with normal integral source. It applies at ramified boundary points as well. The resulting isomorphism is over the original target, not merely an abstract isomorphism of schemes.

Declarations

AlgebraicGeometry.Scheme.Hom.fieldSpecQuasiCompact
Source context 5 commands

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

noncomputable section
open CategoryTheory CategoryTheory.Limits TopologicalSpace
namespace AlgebraicGeometry.Scheme.Hom
universe u
variable {X Y : Scheme.{u}} [IsIntegral Y] [IsNormalIntegral Y]
instance fieldSpecQuasiCompact
    {L : Type u} [Field L] {S : Scheme.{u}} (f : Spec (.of L) ⟶ S) :
    QuasiCompact f where
  isCompact_preimage U _ _ := (Set.toFinite (f ⁻¹' U)).isCompact
AlgebraicGeometry.Scheme.Hom.finiteNormalGenericDesc
Source context 6 commands

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

noncomputable section
open CategoryTheory CategoryTheory.Limits TopologicalSpace
namespace AlgebraicGeometry.Scheme.Hom
universe u
variable {X Y : Scheme.{u}} [IsIntegral Y] [IsNormalIntegral Y]
private local instance fieldSpecQuasiCompact
    {L : Type u} [Field L] {S : Scheme.{u}} (f : Spec (.of L) ⟶ S) :
    QuasiCompact f where
  isCompact_preimage U _ _ := (Set.toFinite (f ⁻¹' U)).isCompact
def finiteNormalGenericDesc
    (f : Y ⟶ X) [IsFinite f] :
    ((Y.genericExtensionMorphism Y.functionField ≫ f)).normalization ⟶ Y
AlgebraicGeometry.Scheme.Hom.finiteNormalGenericDesc_comp
Source context 7 commands

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

noncomputable section
open CategoryTheory CategoryTheory.Limits TopologicalSpace
namespace AlgebraicGeometry.Scheme.Hom
universe u
variable {X Y : Scheme.{u}} [IsIntegral Y] [IsNormalIntegral Y]
private local instance fieldSpecQuasiCompact
    {L : Type u} [Field L] {S : Scheme.{u}} (f : Spec (.of L) ⟶ S) :
    QuasiCompact f where
  isCompact_preimage U _ _ := (Set.toFinite (f ⁻¹' U)).isCompact
omit [IsNormalIntegral Y] in
lemma finiteNormalGenericDesc_comp
    (f : Y ⟶ X) [IsFinite f] :
    finiteNormalGenericDesc f ≫ f =
      ((Y.genericExtensionMorphism Y.functionField ≫ f)).fromNormalization
AlgebraicGeometry.Scheme.Hom.toNormalization_finiteNormalGenericDesc
Source context 7 commands

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

noncomputable section
open CategoryTheory CategoryTheory.Limits TopologicalSpace
namespace AlgebraicGeometry.Scheme.Hom
universe u
variable {X Y : Scheme.{u}} [IsIntegral Y] [IsNormalIntegral Y]
private local instance fieldSpecQuasiCompact
    {L : Type u} [Field L] {S : Scheme.{u}} (f : Spec (.of L) ⟶ S) :
    QuasiCompact f where
  isCompact_preimage U _ _ := (Set.toFinite (f ⁻¹' U)).isCompact
omit [IsNormalIntegral Y] in
lemma toNormalization_finiteNormalGenericDesc
    (f : Y ⟶ X) [IsFinite f] :
    ((Y.genericExtensionMorphism Y.functionField ≫ f)).toNormalization ≫
        finiteNormalGenericDesc f =
      (Y.genericExtensionMorphism Y.functionField)
AlgebraicGeometry.Scheme.Hom.appLE_preimage_eq_app_of_eq
Source context 6 commands

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

noncomputable section
open CategoryTheory CategoryTheory.Limits TopologicalSpace
namespace AlgebraicGeometry.Scheme.Hom
universe u
variable {X Y : Scheme.{u}} [IsIntegral Y] [IsNormalIntegral Y]
private local instance fieldSpecQuasiCompact
    {L : Type u} [Field L] {S : Scheme.{u}} (f : Spec (.of L) ⟶ S) :
    QuasiCompact f where
  isCompact_preimage U _ _ := (Set.toFinite (f ⁻¹' U)).isCompact
lemma appLE_preimage_eq_app_of_eq {Y Z : Scheme.{u}}
    (g q : Y ⟶ Z) (h : g = q) (U : Z.Opens) :
    g.appLE U (q ⁻¹ᵁ U) (by rw [h]) = q.app U := by
  subst q
  exact g.appLE_eq_app
AlgebraicGeometry.Scheme.Hom.finiteNormalGenericDesc_isIso

The canonical map from the generic relative normalization to a finite normal integral source is an isomorphism.

Source context 6 commands

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

noncomputable section
open CategoryTheory CategoryTheory.Limits TopologicalSpace
namespace AlgebraicGeometry.Scheme.Hom
universe u
variable {X Y : Scheme.{u}} [IsIntegral Y] [IsNormalIntegral Y]
private local instance fieldSpecQuasiCompact
    {L : Type u} [Field L] {S : Scheme.{u}} (f : Spec (.of L) ⟶ S) :
    QuasiCompact f where
  isCompact_preimage U _ _ := (Set.toFinite (f ⁻¹' U)).isCompact
theorem finiteNormalGenericDesc_isIso
    (f : Y ⟶ X) [IsFinite f] :
    IsIso (finiteNormalGenericDesc f)
AlgebraicGeometry.Scheme.Hom.finiteNormalGenericIso

A finite normal integral source is its generic relative normalization.

Source context 6 commands

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

noncomputable section
open CategoryTheory CategoryTheory.Limits TopologicalSpace
namespace AlgebraicGeometry.Scheme.Hom
universe u
variable {X Y : Scheme.{u}} [IsIntegral Y] [IsNormalIntegral Y]
private local instance fieldSpecQuasiCompact
    {L : Type u} [Field L] {S : Scheme.{u}} (f : Spec (.of L) ⟶ S) :
    QuasiCompact f where
  isCompact_preimage U _ _ := (Set.toFinite (f ⁻¹' U)).isCompact
def finiteNormalGenericIso
    (f : Y ⟶ X) [IsFinite f] :
    ((Y.genericExtensionMorphism Y.functionField ≫ f)).normalization ≅ Y
AlgebraicGeometry.Scheme.Hom.finiteNormalGenericIso_inv_fromNormalization

The generic normalization isomorphism commutes with the original finite map.

Source context 6 commands

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

noncomputable section
open CategoryTheory CategoryTheory.Limits TopologicalSpace
namespace AlgebraicGeometry.Scheme.Hom
universe u
variable {X Y : Scheme.{u}} [IsIntegral Y] [IsNormalIntegral Y]
private local instance fieldSpecQuasiCompact
    {L : Type u} [Field L] {S : Scheme.{u}} (f : Spec (.of L) ⟶ S) :
    QuasiCompact f where
  isCompact_preimage U _ _ := (Set.toFinite (f ⁻¹' U)).isCompact
theorem finiteNormalGenericIso_inv_fromNormalization
    (f : Y ⟶ X) [IsFinite f] :
    (finiteNormalGenericIso f).inv ≫
        ((Y.genericExtensionMorphism Y.functionField ≫ f)).fromNormalization =
      f