Module

SubmoduleTopRestriction.lean

Nyll.SchemeTheory.Modules.SubmoduleTopRestriction
5 declarations indexed from sourceView source ↗

Whole submodules and restrictions on which they generate

The module of the top submodule is canonically the ambient module. If an actual native submodule equals the whole module on a slice, the geometric restriction of its inclusion is an isomorphism: each actual section map is the bijective inclusion of the full section submodule.

Imports6
Imported by2

Declarations

SheafOfModules.Submodule.top_obj

The top sheaf submodule has the full section submodule on every object.

Source context 5 commands

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

noncomputable section
universe u v v₁ u₁
open CategoryTheory Opposite
namespace SheafOfModules.Submodule
variable {C : Type u₁} [Category.{v₁} C] {J : GrothendieckTopology C}
  {R : Sheaf J RingCat.{u}}
theorem top_obj (M : SheafOfModules.{v} R) (U : Cᵒᵖ) :
    (⊤ : M.Submodule).toSubmodule.obj U = ⊤
SheafOfModules.Submodule.topSectionEquiv
Source context 5 commands

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

noncomputable section
universe u v v₁ u₁
open CategoryTheory Opposite
namespace SheafOfModules.Submodule
variable {C : Type u₁} [Category.{v₁} C] {J : GrothendieckTopology C}
  {R : Sheaf J RingCat.{u}}
def topSectionEquiv (M : SheafOfModules.{v} R) (U : Cᵒᵖ) :
    (⊤ : M.Submodule).toSubmodule.obj U ≃ₗ[R.obj.obj U] M.val.obj U where
  toFun := Subtype.val
  invFun s := ⟨s, by rw [top_obj]; exact _root_.Submodule.mem_top⟩
  left_inv s := Subtype.ext rfl
  right_inv _ := rfl
  map_add' _ _ := rfl
  map_smul' _ _ := rfl
SheafOfModules.Submodule.topIso

The module of the actual top submodule is the ambient module.

Source context 5 commands

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

noncomputable section
universe u v v₁ u₁
open CategoryTheory Opposite
namespace SheafOfModules.Submodule
variable {C : Type u₁} [Category.{v₁} C] {J : GrothendieckTopology C}
  {R : Sheaf J RingCat.{u}}
def topIso (M : SheafOfModules.{v} R) :
    (⊤ : M.Submodule).toSheafOfModules ≅ M
SheafOfModules.Submodule.topIso_hom

The top-submodule comparison is its actual inclusion.

Source context 5 commands

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

noncomputable section
universe u v v₁ u₁
open CategoryTheory Opposite
namespace SheafOfModules.Submodule
variable {C : Type u₁} [Category.{v₁} C] {J : GrothendieckTopology C}
  {R : Sheaf J RingCat.{u}}
theorem topIso_hom (M : SheafOfModules.{v} R) :
    (topIso M).hom = (⊤ : M.Submodule).ι
AlgebraicGeometry.Scheme.Modules.isIso_restrictSubmoduleInclusion_of_over_eq_top

Equality with the whole native module on an open makes the actual geometrically restricted inclusion an isomorphism.

Source context 4 commands

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

noncomputable section
universe u v v₁ u₁
open CategoryTheory Opposite
namespace AlgebraicGeometry.Scheme.Modules
theorem isIso_restrictSubmoduleInclusion_of_over_eq_top
    {X : Scheme.{u}} {F : SheafOfModules.{u} X.ringCatSheaf}
    (N : F.Submodule) (U : X.Opens)
    (hN : N.over U = (⊤ : F.Submodule).over U) :
    IsIso ((restrictFunctor U.ι).map
      (submoduleAsModuleInclusion (F := (sheafOfModulesEquivalence X).inverse.obj F) N))