Documentation

Hironaka.Scheme.Smooth.GraphDiagonalPair

The étale neighbourhood pair of the graph at the diagonal point (p, p) #

Kollár shrinks the graph U₁(p) to an open U₂(p) ∋ (p, p) on which "both coordinate projections ψₚ, ψₚ' : U₂(p) ⇉ X are étale" ([Kol07, 95], the proof of Theorem 92). The graph U₁(p) = U ×_{𝔸ⁿ} U of two étale coordinate systems c, c' on an affine U ∋ p (graph), its two projections (graphFst, graphSnd, étale as base changes of the étale coordinate maps, so no shrinking is needed), and the canonical point (p, p) : Spec κ(p) ⟶ U₁(p) (graphPoint) are defined in Graph.lean, GraphBasic.lean and GraphFormal.lean. This module packages the pair AT THE DIAGONAL POINT as a NbhdPair and proves the three properties the comparison of two hypersurfaces of maximal contact needs of it (Hironaka/Resolution/Algebraic/MaximalContact/Theorem92.lean):

The existence statement exists_etaleNbhdPair_of_etaleCoordinates packages the three properties on an EtaleNbhdPair.

Two equal morphisms have equal stalk maps, up to the transport of the source stalk along the two (propositionally equal) image points.

noncomputable def AlgebraicGeometry.EtaleCoordinates.graphDiagonalPoint {k : Type u} [Field k] {X : Scheme} {f : X ⟶ Spec ↧k} {n : ℕ} {U : ↑X.affineOpens} (c c' : EtaleCoordinates f n U) {p : ↥X} (hpU : p ∈ ↑U) (hc : ∀ (i : Fin n), (CategoryTheory.ConcreteCategory.hom (X.presheaf.germ (↑U) p hpU)) (c.v i) ∈ IsLocalRing.maximalIdeal ↑(X.presheaf.stalk p)) (hc' : ∀ (i : Fin n), (CategoryTheory.ConcreteCategory.hom (X.presheaf.germ (↑U) p hpU)) (c'.v i) ∈ IsLocalRing.maximalIdeal ↑(X.presheaf.stalk p)) :
↥(c.graph c')

The point (p, p) of the graph U₁(p) = U ×_{𝔸ⁿ} U (the image of the morphism graphPoint : Spec κ(p) ⟶ W).

Equations
Instances For
    theorem AlgebraicGeometry.EtaleCoordinates.graphPoint_base_default {k : Type u} [Field k] {X : Scheme} {f : X ⟶ Spec ↧k} {n : ℕ} {U : ↑X.affineOpens} (c c' : EtaleCoordinates f n U) {p : ↥X} (hpU : p ∈ ↑U) (hc : ∀ (i : Fin n), (CategoryTheory.ConcreteCategory.hom (X.presheaf.germ (↑U) p hpU)) (c.v i) ∈ IsLocalRing.maximalIdeal ↑(X.presheaf.stalk p)) (hc' : ∀ (i : Fin n), (CategoryTheory.ConcreteCategory.hom (X.presheaf.germ (↑U) p hpU)) (c'.v i) ∈ IsLocalRing.maximalIdeal ↑(X.presheaf.stalk p)) :
    (c.graphPoint c' hpU hc hc') default = c.graphDiagonalPoint c' hpU hc hc'
    theorem AlgebraicGeometry.EtaleCoordinates.graphFst_base_graphDiagonalPoint {k : Type u} [Field k] {X : Scheme} {f : X ⟶ Spec ↧k} {n : ℕ} {U : ↑X.affineOpens} (c c' : EtaleCoordinates f n U) {p : ↥X} (hpU : p ∈ ↑U) (hc : ∀ (i : Fin n), (CategoryTheory.ConcreteCategory.hom (X.presheaf.germ (↑U) p hpU)) (c.v i) ∈ IsLocalRing.maximalIdeal ↑(X.presheaf.stalk p)) (hc' : ∀ (i : Fin n), (CategoryTheory.ConcreteCategory.hom (X.presheaf.germ (↑U) p hpU)) (c'.v i) ∈ IsLocalRing.maximalIdeal ↑(X.presheaf.stalk p)) :
    (c.graphFst c') (c.graphDiagonalPoint c' hpU hc hc') = ⟨p, hpU⟩
    theorem AlgebraicGeometry.EtaleCoordinates.graphSnd_base_graphDiagonalPoint {k : Type u} [Field k] {X : Scheme} {f : X ⟶ Spec ↧k} {n : ℕ} {U : ↑X.affineOpens} (c c' : EtaleCoordinates f n U) {p : ↥X} (hpU : p ∈ ↑U) (hc : ∀ (i : Fin n), (CategoryTheory.ConcreteCategory.hom (X.presheaf.germ (↑U) p hpU)) (c.v i) ∈ IsLocalRing.maximalIdeal ↑(X.presheaf.stalk p)) (hc' : ∀ (i : Fin n), (CategoryTheory.ConcreteCategory.hom (X.presheaf.germ (↑U) p hpU)) (c'.v i) ∈ IsLocalRing.maximalIdeal ↑(X.presheaf.stalk p)) :
    (c.graphSnd c') (c.graphDiagonalPoint c' hpU hc hc') = ⟨p, hpU⟩
    theorem AlgebraicGeometry.EtaleCoordinates.isIso_residueFieldMap_graphFst {k : Type u} [Field k] {X : Scheme} {f : X ⟶ Spec ↧k} {n : ℕ} {U : ↑X.affineOpens} (c c' : EtaleCoordinates f n U) {p : ↥X} (hpU : p ∈ ↑U) (hc : ∀ (i : Fin n), (CategoryTheory.ConcreteCategory.hom (X.presheaf.germ (↑U) p hpU)) (c.v i) ∈ IsLocalRing.maximalIdeal ↑(X.presheaf.stalk p)) (hc' : ∀ (i : Fin n), (CategoryTheory.ConcreteCategory.hom (X.presheaf.germ (↑U) p hpU)) (c'.v i) ∈ IsLocalRing.maximalIdeal ↑(X.presheaf.stalk p)) :
    theorem AlgebraicGeometry.EtaleCoordinates.isIso_residueFieldMap_graphSnd {k : Type u} [Field k] {X : Scheme} {f : X ⟶ Spec ↧k} {n : ℕ} {U : ↑X.affineOpens} (c c' : EtaleCoordinates f n U) {p : ↥X} (hpU : p ∈ ↑U) (hc : ∀ (i : Fin n), (CategoryTheory.ConcreteCategory.hom (X.presheaf.germ (↑U) p hpU)) (c.v i) ∈ IsLocalRing.maximalIdeal ↑(X.presheaf.stalk p)) (hc' : ∀ (i : Fin n), (CategoryTheory.ConcreteCategory.hom (X.presheaf.germ (↑U) p hpU)) (c'.v i) ∈ IsLocalRing.maximalIdeal ↑(X.presheaf.stalk p)) :
    noncomputable def AlgebraicGeometry.EtaleCoordinates.graphNbhdPair {k : Type u} [Field k] {X : Scheme} {f : X ⟶ Spec ↧k} {n : ℕ} {U : ↑X.affineOpens} (c c' : EtaleCoordinates f n U) {p : ↥X} (hpU : p ∈ ↑U) (hc : ∀ (i : Fin n), (CategoryTheory.ConcreteCategory.hom (X.presheaf.germ (↑U) p hpU)) (c.v i) ∈ IsLocalRing.maximalIdeal ↑(X.presheaf.stalk p)) (hc' : ∀ (i : Fin n), (CategoryTheory.ConcreteCategory.hom (X.presheaf.germ (↑U) p hpU)) (c'.v i) ∈ IsLocalRing.maximalIdeal ↑(X.presheaf.stalk p)) :
    c.NbhdPair c' hpU

    The étale neighbourhood pair of p for the coordinate data c, c' given by the whole graph U₁(p) = U ×_{𝔸ⁿ} U at the diagonal point (p, p) with its two étale projections (Kollár's U₂(p), [Kol07, 95], without shrinking; the proof of [Wlo05, Lemma 2.9.5]).

    Equations
    • One or more equations did not get rendered due to their size.
    Instances For
      @[reducible, inline]
      noncomputable abbrev AlgebraicGeometry.EtaleCoordinates.graphEtaleNbhdPair {k : Type u} [Field k] {X : Scheme} {f : X ⟶ Spec ↧k} {n : ℕ} {U : ↑X.affineOpens} (c c' : EtaleCoordinates f n U) {p : ↥X} (hpU : p ∈ ↑U) (hc : ∀ (i : Fin n), (CategoryTheory.ConcreteCategory.hom (X.presheaf.germ (↑U) p hpU)) (c.v i) ∈ IsLocalRing.maximalIdeal ↑(X.presheaf.stalk p)) (hc' : ∀ (i : Fin n), (CategoryTheory.ConcreteCategory.hom (X.presheaf.germ (↑U) p hpU)) (c'.v i) ∈ IsLocalRing.maximalIdeal ↑(X.presheaf.stalk p)) :

      The étale neighbourhood pair of p ∈ X of the graph at its diagonal point: graphNbhdPair composed with U ⟶ X (NbhdPair.toEtaleNbhdPair).

      Equations
      Instances For
        theorem AlgebraicGeometry.EtaleCoordinates.graphEtaleNbhdPair_comp_eq {k : Type u} [Field k] {X : Scheme} {f : X ⟶ Spec ↧k} {n : ℕ} {U : ↑X.affineOpens} (c c' : EtaleCoordinates f n U) {p : ↥X} (hpU : p ∈ ↑U) (hc : ∀ (i : Fin n), (CategoryTheory.ConcreteCategory.hom (X.presheaf.germ (↑U) p hpU)) (c.v i) ∈ IsLocalRing.maximalIdeal ↑(X.presheaf.stalk p)) (hc' : ∀ (i : Fin n), (CategoryTheory.ConcreteCategory.hom (X.presheaf.germ (↑U) p hpU)) (c'.v i) ∈ IsLocalRing.maximalIdeal ↑(X.presheaf.stalk p)) :

        (i) Both projections of the graph are morphisms of k-schemes: U₁(p) ⊆ X ×_k X ([Kol07, 95]; φ_u ψ_u = φ_v ψ_v composed with the structure map of 𝔸ⁿ_k).

        theorem AlgebraicGeometry.EtaleCoordinates.graphPoint_comp_eq {k : Type u} [Field k] {X : Scheme} {f : X ⟶ Spec ↧k} {n : ℕ} {U : ↑X.affineOpens} (c c' : EtaleCoordinates f n U) {p : ↥X} (hpU : p ∈ ↑U) (hc : ∀ (i : Fin n), (CategoryTheory.ConcreteCategory.hom (X.presheaf.germ (↑U) p hpU)) (c.v i) ∈ IsLocalRing.maximalIdeal ↑(X.presheaf.stalk p)) (hc' : ∀ (i : Fin n), (CategoryTheory.ConcreteCategory.hom (X.presheaf.germ (↑U) p hpU)) (c'.v i) ∈ IsLocalRing.maximalIdeal ↑(X.presheaf.stalk p)) :

        The two composites Spec κ(p) → U₁(p) ⇉ X through the diagonal point are the canonical Spec κ(p) → X, hence equal (Kollár's point (p, p), [Kol07, 95]).

        @[reducible, inline]
        noncomputable abbrev AlgebraicGeometry.EtaleCoordinates.diagonalStalkMap {k : Type u} [Field k] {X : Scheme} {f : X ⟶ Spec ↧k} {n : ℕ} {U : ↑X.affineOpens} (c c' : EtaleCoordinates f n U) {p : ↥X} (hpU : p ∈ ↑U) (hc : ∀ (i : Fin n), (CategoryTheory.ConcreteCategory.hom (X.presheaf.germ (↑U) p hpU)) (c.v i) ∈ IsLocalRing.maximalIdeal ↑(X.presheaf.stalk p)) (hc' : ∀ (i : Fin n), (CategoryTheory.ConcreteCategory.hom (X.presheaf.germ (↑U) p hpU)) (c'.v i) ∈ IsLocalRing.maximalIdeal ↑(X.presheaf.stalk p)) :

        The stalk map of the diagonal point (p, p) : Spec κ(p) → W, typed at the pair's stalk 𝒪_{W,q}.

        Equations
        Instances For
          theorem AlgebraicGeometry.EtaleCoordinates.diagonalStalkMap_stalkHom {k : Type u} [Field k] {X : Scheme} {f : X ⟶ Spec ↧k} {n : ℕ} {U : ↑X.affineOpens} (c c' : EtaleCoordinates f n U) {p : ↥X} (hpU : p ∈ ↑U) (hc : ∀ (i : Fin n), (CategoryTheory.ConcreteCategory.hom (X.presheaf.germ (↑U) p hpU)) (c.v i) ∈ IsLocalRing.maximalIdeal ↑(X.presheaf.stalk p)) (hc' : ∀ (i : Fin n), (CategoryTheory.ConcreteCategory.hom (X.presheaf.germ (↑U) p hpU)) (c'.v i) ∈ IsLocalRing.maximalIdeal ↑(X.presheaf.stalk p)) (s : ↑(X.presheaf.stalk p)) :

          ψ^* on the stalk, composed with the stalk map of the diagonal point (p, p) : Spec κ(p) → W, is the stalk map of the composite Spec κ(p) → W → X (transported from p).

          theorem AlgebraicGeometry.EtaleCoordinates.diagonalStalkMap_stalkHom' {k : Type u} [Field k] {X : Scheme} {f : X ⟶ Spec ↧k} {n : ℕ} {U : ↑X.affineOpens} (c c' : EtaleCoordinates f n U) {p : ↥X} (hpU : p ∈ ↑U) (hc : ∀ (i : Fin n), (CategoryTheory.ConcreteCategory.hom (X.presheaf.germ (↑U) p hpU)) (c.v i) ∈ IsLocalRing.maximalIdeal ↑(X.presheaf.stalk p)) (hc' : ∀ (i : Fin n), (CategoryTheory.ConcreteCategory.hom (X.presheaf.germ (↑U) p hpU)) (c'.v i) ∈ IsLocalRing.maximalIdeal ↑(X.presheaf.stalk p)) (s : ↑(X.presheaf.stalk p)) :

          ψ'^* on the stalk, composed with the stalk map of the diagonal point.

          theorem AlgebraicGeometry.EtaleCoordinates.graphEtaleNbhdPair_stalkHom_sub_mem {k : Type u} [Field k] {X : Scheme} {f : X ⟶ Spec ↧k} {n : ℕ} {U : ↑X.affineOpens} (c c' : EtaleCoordinates f n U) {p : ↥X} (hpU : p ∈ ↑U) (hc : ∀ (i : Fin n), (CategoryTheory.ConcreteCategory.hom (X.presheaf.germ (↑U) p hpU)) (c.v i) ∈ IsLocalRing.maximalIdeal ↑(X.presheaf.stalk p)) (hc' : ∀ (i : Fin n), (CategoryTheory.ConcreteCategory.hom (X.presheaf.germ (↑U) p hpU)) (c'.v i) ∈ IsLocalRing.maximalIdeal ↑(X.presheaf.stalk p)) (s : ↑(X.presheaf.stalk p)) :
          (c.graphEtaleNbhdPair c' hpU hc hc').stalkHom s - (c.graphEtaleNbhdPair c' hpU hc hc').stalkHom' s ∈ IsLocalRing.maximalIdeal ↑((c.graphEtaleNbhdPair c' hpU hc hc').W.presheaf.stalk (c.graphEtaleNbhdPair c' hpU hc hc').q)

          (ii) At the diagonal point the two projections agree on functions to first order: ψ^*(s) − ψ'^*(s) ∈ 𝔪_q for every s ∈ 𝒪_{X,p} — both induce the same identification κ(p) = κ(q). Proof: the defect is killed by the local homomorphism 𝒪_{W,q} → 𝒪_{Spec κ(p)} induced by (p, p) : Spec κ(p) → W, because the two composites Spec κ(p) → W ⇉ X coincide (graphPoint_comp_eq), and a local homomorphism detects the maximal ideal.

          theorem AlgebraicGeometry.EtaleCoordinates.graphEtaleNbhdPair_stalkHom_germ {k : Type u} [Field k] {X : Scheme} {f : X ⟶ Spec ↧k} {n : ℕ} {U : ↑X.affineOpens} (c c' : EtaleCoordinates f n U) {p : ↥X} (hpU : p ∈ ↑U) (hc : ∀ (i : Fin n), (CategoryTheory.ConcreteCategory.hom (X.presheaf.germ (↑U) p hpU)) (c.v i) ∈ IsLocalRing.maximalIdeal ↑(X.presheaf.stalk p)) (hc' : ∀ (i : Fin n), (CategoryTheory.ConcreteCategory.hom (X.presheaf.germ (↑U) p hpU)) (c'.v i) ∈ IsLocalRing.maximalIdeal ↑(X.presheaf.stalk p)) (i : Fin n) :
          (c.graphEtaleNbhdPair c' hpU hc hc').stalkHom ((CategoryTheory.ConcreteCategory.hom (X.presheaf.germ (↑U) p hpU)) (c.v i)) = (c.graphEtaleNbhdPair c' hpU hc hc').stalkHom' ((CategoryTheory.ConcreteCategory.hom (X.presheaf.germ (↑U) p hpU)) (c'.v i))

          (iii) The graph equations on stalks: ψ^*(cᵢ) = ψ'^*(cᵢ') (the coordinate identity coord, read at the germs of the coordinates).

          theorem AlgebraicGeometry.EtaleCoordinates.exists_etaleNbhdPair_of_etaleCoordinates {k : Type u} [Field k] {X : Scheme} {f : X ⟶ Spec ↧k} {n : ℕ} {U : ↑X.affineOpens} (c c' : EtaleCoordinates f n U) {p : ↥X} (hpU : p ∈ ↑U) (hc : ∀ (i : Fin n), (CategoryTheory.ConcreteCategory.hom (X.presheaf.germ (↑U) p hpU)) (c.v i) ∈ IsLocalRing.maximalIdeal ↑(X.presheaf.stalk p)) (hc' : ∀ (i : Fin n), (CategoryTheory.ConcreteCategory.hom (X.presheaf.germ (↑U) p hpU)) (c'.v i) ∈ IsLocalRing.maximalIdeal ↑(X.presheaf.stalk p)) :

          For two étale coordinate systems c, c' on an affine U ∋ p whose coordinates all vanish at p, the graph U₁(p) at its diagonal point is an étale neighbourhood pair Q of p with (i) ψ ≫ f = ψ' ≫ f, (ii) ψ^*(s) − ψ'^*(s) ∈ 𝔪_q for every s ∈ 𝒪_{X,p}, and (iii) ψ^*(cᵢ) = ψ'^*(cᵢ') for every i (Kollár's "(p, p) ∈ U₂(p) ⊂ U₁(p) such that both coordinate projections ψₚ, ψₚ' : U₂(p) ⇉ X are étale", [Kol07, 95]; the proof of [Wlo05, Lemma 2.9.5]; clause (ii) is not in the sources).