The category of schemes #
A scheme is a locally ringed space such that every point is contained in some open set
where there is an isomorphism of presheaves between the restriction to that open set,
and the structure sheaf of Spec R
, for some commutative ring R
.
A morphism of schemes is just a morphism of the underlying locally ringed spaces.
We define Scheme
as an X : LocallyRingedSpace
,
along with a proof that every point has an open neighbourhood U
so that that the restriction of X
to U
is isomorphic,
as a locally ringed space, to Spec.toLocallyRingedSpace.obj (op R)
for some R : CommRingCat
.
- carrier : TopCat
- presheaf : TopCat.Presheaf CommRingCat ↑self.toPresheafedSpace
- IsSheaf : TopCat.Presheaf.IsSheaf self.presheaf
- localRing : ∀ (x : ↑↑self.toPresheafedSpace), LocalRing ↑(TopCat.Presheaf.stalk self.presheaf x)
- local_affine : ∀ (x : ↑(AlgebraicGeometry.LocallyRingedSpace.toTopCat self.toLocallyRingedSpace)), ∃ (U : TopologicalSpace.OpenNhds x) (R : CommRingCat), Nonempty (AlgebraicGeometry.LocallyRingedSpace.restrict self.toLocallyRingedSpace (_ : OpenEmbedding ⇑(TopologicalSpace.Opens.inclusion U.obj)) ≅ AlgebraicGeometry.Spec.toLocallyRingedSpace.toPrefunctor.obj (Opposite.op R))
Instances For
A morphism between schemes is a morphism between the underlying locally ringed spaces.
Equations
- AlgebraicGeometry.Scheme.Hom X Y = (X.toLocallyRingedSpace ⟶ Y.toLocallyRingedSpace)
Instances For
Schemes are a full subcategory of locally ringed spaces.
Equations
- AlgebraicGeometry.Scheme.instCategoryScheme = let src := CategoryTheory.InducedCategory.category AlgebraicGeometry.Scheme.toLocallyRingedSpace; CategoryTheory.Category.mk
The structure sheaf of a scheme.
Equations
- AlgebraicGeometry.Scheme.sheaf X = AlgebraicGeometry.SheafedSpace.sheaf X.toSheafedSpace
Instances For
Equations
- AlgebraicGeometry.Scheme.instCoeSortSchemeType = { coe := fun (X : AlgebraicGeometry.Scheme) => ↑↑X.toPresheafedSpace }
The forgetful functor from Scheme
to LocallyRingedSpace
.
Equations
Instances For
Equations
- One or more equations did not get rendered due to their size.
Equations
- One or more equations did not get rendered due to their size.
Equations
- AlgebraicGeometry.Scheme.hasCoeToTopCat = { coe := fun (X : AlgebraicGeometry.Scheme) => ↑X.toPresheafedSpace }
forgetful functor to TopCat
is the same as coercion
Equations
- AlgebraicGeometry.Scheme.forgetToTop_obj_eq_coe X = (AlgebraicGeometry.Scheme.forgetToTop.toPrefunctor.obj X = ↑X.toPresheafedSpace)
Instances For
Equations
- (_ : CategoryTheory.IsIso f) = (_ : CategoryTheory.IsIso (AlgebraicGeometry.Scheme.forgetToLocallyRingedSpace.toPrefunctor.map f))
Equations
- (_ : CategoryTheory.IsIso (f.val.c.app U)) = (_ : CategoryTheory.IsIso (f.val.c.app U))
Given a morphism of schemes f : X ⟶ Y
, and open sets U ⊆ Y
, V ⊆ f ⁻¹' U
,
this is the induced map Γ(Y, U) ⟶ Γ(X, V)
.
Equations
- AlgebraicGeometry.Scheme.Hom.appLe f e = CategoryTheory.CategoryStruct.comp (f.val.c.app (Opposite.op U)) (X.presheaf.toPrefunctor.map (CategoryTheory.homOfLE e).op)
Instances For
The spectrum of a commutative ring, as a scheme.
Equations
- One or more equations did not get rendered due to their size.
Instances For
The induced map of a ring homomorphism on the ring spectra, as a morphism of schemes.
Instances For
The spectrum, as a contravariant functor from commutative rings to schemes.
Equations
- One or more equations did not get rendered due to their size.
Instances For
The empty scheme.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Equations
- AlgebraicGeometry.Scheme.instEmptyCollectionScheme = { emptyCollection := AlgebraicGeometry.Scheme.empty }
Equations
- AlgebraicGeometry.Scheme.instInhabitedScheme = { default := ∅ }
The global sections, notated Gamma.
Equations
Instances For
The subset of the underlying space where the given section does not vanish.
Equations
- X.basicOpen f = AlgebraicGeometry.RingedSpace.basicOpen (AlgebraicGeometry.LocallyRingedSpace.toRingedSpace X.toLocallyRingedSpace) f
Instances For
Equations
- AlgebraicGeometry.Scheme.algebra_section_section_basicOpen f = RingHom.toAlgebra (X.presheaf.toPrefunctor.map (CategoryTheory.homOfLE (_ : X.basicOpen f ≤ U)).op)