Module

PullbackSkyscraperClosedDiscrete.lean

Nyll.SchemeTheory.Topology.PullbackSkyscraperClosedDiscrete
6 declarations indexed from sourceView source ↗

Pullback of a skyscraper as discrete functions on its closed support

For an arbitrary continuous map, the inverse image of a skyscraper is the direct image of discrete-valued continuous functions on the inverse image of its closed support. The comparison is the actual adjoint of the constant-section map. Its stalks are identified on the support by germ evaluation, and both stalks are terminal away from the support.

This supplies the finite-stage closed-support comparison used in the topological proof of Stacks Project, tag 09ZG. Reference: https://stacks.math.columbia.edu/tag/09ZG. The Lean constructions and proofs are original.

Declarations

SchemeTheory.skyscraperClosedSupportSection
Source context 6 commands

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

noncomputable section
universe u
open CategoryTheory Limits TopCat TopologicalSpace Topology Opposite
namespace SchemeTheory
attribute [local instance] Classical.propDecidable
variable {X Y : TopCat.{u}}
def skyscraperClosedSupportSection (q : X ⟶ Y) (y : Y) (A : Type u)
    (U : Opens Y) (s : (skyscraperPresheaf y A).obj (op U)) :
    TopCat.of {z : (q ⁻¹' closure ({y} : Set Y) : Set X) // q z.1 ∈ U} ⟶
      TopCat.discrete.obj A
SchemeTheory.skyscraperToClosedDiscretePushforward

The actual constant-section morphism from the skyscraper to the direct image of discrete functions on the inverse image of its closed support.

Source context 6 commands

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

noncomputable section
universe u
open CategoryTheory Limits TopCat TopologicalSpace Topology Opposite
namespace SchemeTheory
attribute [local instance] Classical.propDecidable
variable {X Y : TopCat.{u}}
def skyscraperToClosedDiscretePushforward (q : X ⟶ Y) (y : Y) (A : Type u) :
    skyscraperSheaf y A ⟶ (TopCat.Sheaf.pushforward (Type u) q).obj
      (closedDiscreteSheaf (q ⁻¹' closure ({y} : Set Y) : Set X) A)
SchemeTheory.pullbackSkyscraperToClosedDiscrete

The actual inverse-image adjoint of the constant-section morphism.

Source context 6 commands

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

noncomputable section
universe u
open CategoryTheory Limits TopCat TopologicalSpace Topology Opposite
namespace SchemeTheory
attribute [local instance] Classical.propDecidable
variable {X Y : TopCat.{u}}
def pullbackSkyscraperToClosedDiscrete (q : X ⟶ Y) (y : Y) (A : Type u) :
    (TopCat.Sheaf.pullback (Type u) q).obj (skyscraperSheaf y A) ⟶
      closedDiscreteSheaf (q ⁻¹' closure ({y} : Set Y) : Set X) A
SchemeTheory.pullbackSkyscraperToClosedDiscrete_stalk_onSupport

On the closed support, the comparison carries the actual inverse-image germ to the same value in the skyscraper fiber.

Source context 6 commands

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

noncomputable section
universe u
open CategoryTheory Limits TopCat TopologicalSpace Topology Opposite
namespace SchemeTheory
attribute [local instance] Classical.propDecidable
variable {X Y : TopCat.{u}}
theorem pullbackSkyscraperToClosedDiscrete_stalk_onSupport
    (q : X ⟶ Y) (y : Y) (A : Type u)
    (x : (q ⁻¹' closure ({y} : Set Y) : Set X)) :
    (sheafStalkPullbackIso q (skyscraperSheaf y A) x.1).hom ≫
        (TopCat.Presheaf.stalkFunctor (Type u) x.1).map
          (pullbackSkyscraperToClosedDiscrete q y A).hom ≫
        (closedDiscreteStalkIso (q ⁻¹' closure ({y} : Set Y) : Set X) A x).hom =
      (skyscraperPresheafStalkOfSpecializes y A
        (specializes_iff_mem_closure.mpr x.2)).hom
SchemeTheory.pullbackSkyscraperToClosedDiscrete_stalk_isIso

Every stalk of the actual comparison is an isomorphism.

Source context 6 commands

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

noncomputable section
universe u
open CategoryTheory Limits TopCat TopologicalSpace Topology Opposite
namespace SchemeTheory
attribute [local instance] Classical.propDecidable
variable {X Y : TopCat.{u}}
theorem pullbackSkyscraperToClosedDiscrete_stalk_isIso
    (q : X ⟶ Y) (y : Y) (A : Type u) (x : X) :
    IsIso ((TopCat.Presheaf.stalkFunctor (Type u) x).map
      (pullbackSkyscraperToClosedDiscrete q y A).hom)
SchemeTheory.pullbackSkyscraperClosedDiscreteIso

The inverse image of an actual skyscraper is the direct image of the discrete-function sheaf on the inverse image of its closed support.

Source context 6 commands

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

noncomputable section
universe u
open CategoryTheory Limits TopCat TopologicalSpace Topology Opposite
namespace SchemeTheory
attribute [local instance] Classical.propDecidable
variable {X Y : TopCat.{u}}
def pullbackSkyscraperClosedDiscreteIso (q : X ⟶ Y) (y : Y) (A : Type u) :
    (TopCat.Sheaf.pullback (Type u) q).obj (skyscraperSheaf y A) ≅
      closedDiscreteSheaf (q ⁻¹' closure ({y} : Set Y) : Set X) A