Documentation

Mathlib.AlgebraicGeometry.Limits

(Co)Limits of Schemes #

We construct various limits and colimits in the category of schemes.

TODO #

Spec ℤ is the terminal object in the category of schemes.

Equations
  • One or more equations did not get rendered due to their size.

The map from the empty scheme.

Equations
  • One or more equations did not get rendered due to their size.
@[simp]
theorem AlgebraicGeometry.Scheme.emptyTo_c_app (X : AlgebraicGeometry.Scheme) (x✝ : (TopologicalSpace.Opens X.toPresheafedSpace)ᵒᵖ) :
X.emptyTo.c.app x✝ = CommRingCat.punitIsTerminal.from (X.presheaf.obj x✝)
@[simp]
theorem AlgebraicGeometry.Scheme.emptyTo_base_apply (X : AlgebraicGeometry.Scheme) (x : .toPresheafedSpace) :
X.emptyTo.base x = PEmpty.elim x
Equations
  • X.hom_unique_of_empty_source = { default := X.emptyTo, uniq := }

The empty scheme is the initial object in the category of schemes.

Equations
@[instance 100]
noncomputable instance AlgebraicGeometry.isOpenImmersion_of_isEmpty {X Y : AlgebraicGeometry.Scheme} (f : X Y) [IsEmpty X.toPresheafedSpace] :
Equations
  • =
@[instance 100]
noncomputable instance AlgebraicGeometry.isIso_of_isEmpty {X Y : AlgebraicGeometry.Scheme} (f : X Y) [IsEmpty Y.toPresheafedSpace] :
Equations
  • =

A scheme is initial if its underlying space is empty .

Equations

Spec 0 is the initial object in the category of schemes.

Equations
  • One or more equations did not get rendered due to their size.
@[instance 100]
noncomputable instance AlgebraicGeometry.isAffine_of_isEmpty {X : AlgebraicGeometry.Scheme} [IsEmpty X.toPresheafedSpace] :
Equations
  • =

(Implementation Detail) The glue data associated to a disjoint union.

Equations
  • One or more equations did not get rendered due to their size.
@[simp]
theorem AlgebraicGeometry.disjointGlueData'_f {ι : Type u} (f : ιAlgebraicGeometry.Scheme) (x✝ x✝¹ : ι) (x✝² : x✝ x✝¹) :
(AlgebraicGeometry.disjointGlueData' f).f x✝ x✝¹ x✝² = (f x✝).emptyTo
@[simp]
theorem AlgebraicGeometry.disjointGlueData'_V {ι : Type u} (f : ιAlgebraicGeometry.Scheme) (x✝ x✝¹ : ι) (x✝² : x✝ x✝¹) :
(AlgebraicGeometry.disjointGlueData' f).V x✝ x✝¹ x✝² =
@[simp]
@[simp]
theorem AlgebraicGeometry.disjointGlueData'_t' {ι : Type u} (f : ιAlgebraicGeometry.Scheme) (x✝ x✝¹ x✝² : ι) (x✝³ : x✝ x✝¹) (x✝⁴ : x✝ x✝²) (x✝⁵ : x✝¹ x✝²) :
(AlgebraicGeometry.disjointGlueData' f).t' x✝ x✝¹ x✝² x✝³ x✝⁴ x✝⁵ = CategoryTheory.CategoryStruct.comp (CategoryTheory.Limits.pullback.fst ((fun (x x_1 : ι) (x_2 : x x_1) => (f x).emptyTo) x✝ x✝¹ x✝³) ((fun (x x_1 : ι) (x_2 : x x_1) => (f x).emptyTo) x✝ x✝² x✝⁴)) (CategoryTheory.Limits.pullback ((fun (x x_1 : ι) (x_2 : x x_1) => (f x).emptyTo) x✝¹ x✝² x✝⁵) ((fun (x x_1 : ι) (x_2 : x x_1) => (f x).emptyTo) x✝¹ x✝ )).emptyTo
@[simp]
theorem AlgebraicGeometry.disjointGlueData'_t {ι : Type u} (f : ιAlgebraicGeometry.Scheme) (x✝ x✝¹ : ι) (x✝² : x✝ x✝¹) :
(AlgebraicGeometry.disjointGlueData' f).t x✝ x✝¹ x✝² = CategoryTheory.CategoryStruct.id ((fun (x x_1 : ι) (x : x x_1) => ) x✝ x✝¹ x✝²)

(Implementation Detail) The glue data associated to a disjoint union.

Equations

(Implementation Detail) The cofan in LocallyRingedSpace associated to a disjoint union.

Equations
  • One or more equations did not get rendered due to their size.

(Implementation Detail) The cofan in LocallyRingedSpace associated to a disjoint union is a colimit.

Equations
  • One or more equations did not get rendered due to their size.

(Implementation Detail) Coproduct of schemes is isomorphic to the disjoint union.

Equations
  • One or more equations did not get rendered due to their size.
theorem AlgebraicGeometry.sigmaι_eq_iff {ι : Type u} (f : ιAlgebraicGeometry.Scheme) (i j : ι) (x : (f i).toPresheafedSpace) (y : (f j).toPresheafedSpace) :
(CategoryTheory.Limits.Sigma.ι f i).base x = (CategoryTheory.Limits.Sigma.ι f j).base y i, x = j, y
theorem AlgebraicGeometry.exists_sigmaι_eq {ι : Type u} (f : ιAlgebraicGeometry.Scheme) (x : ( f).toPresheafedSpace) :
∃ (i : ι) (y : (f i).toPresheafedSpace), (CategoryTheory.Limits.Sigma.ι f i).base y = x
noncomputable def AlgebraicGeometry.sigmaOpenCover {ι : Type u} (f : ιAlgebraicGeometry.Scheme) :
( f).OpenCover

The open cover of the coproduct.

Equations
@[simp]
theorem AlgebraicGeometry.sigmaOpenCover_obj {ι : Type u} (f : ιAlgebraicGeometry.Scheme) (a✝ : ι) :
noncomputable def AlgebraicGeometry.sigmaMk {ι : Type u} (f : ιAlgebraicGeometry.Scheme) :
(i : ι) × (f i).toPresheafedSpace ≃ₜ ( f).toPresheafedSpace

The underlying topological space of the coproduct is homeomorphic to the disjoint union.

Equations
  • One or more equations did not get rendered due to their size.
@[simp]
theorem AlgebraicGeometry.sigmaMk_mk {ι : Type u} (f : ιAlgebraicGeometry.Scheme) (i : ι) (x : (f i).toPresheafedSpace) :

(Implementation Detail) The coproduct of the two schemes is given by indexed coproducts over WalkingPair.

Equations
  • One or more equations did not get rendered due to their size.
Equations
  • =
Equations
  • =
theorem AlgebraicGeometry.isCompl_range_inl_inr (X Y : AlgebraicGeometry.Scheme) :
IsCompl (Set.range CategoryTheory.Limits.coprod.inl.base) (Set.range CategoryTheory.Limits.coprod.inr.base)
noncomputable def AlgebraicGeometry.coprodMk (X Y : AlgebraicGeometry.Scheme) :
X.toPresheafedSpace Y.toPresheafedSpace ≃ₜ (X ⨿ Y).toPresheafedSpace

The underlying topological space of the coproduct is homeomorphic to the disjoint union

Equations
  • One or more equations did not get rendered due to their size.
@[simp]
theorem AlgebraicGeometry.coprodMk_inl (X Y : AlgebraicGeometry.Scheme) (x : X.toPresheafedSpace) :
(AlgebraicGeometry.coprodMk X Y) (Sum.inl x) = CategoryTheory.Limits.coprod.inl.base x
@[simp]
theorem AlgebraicGeometry.coprodMk_inr (X Y : AlgebraicGeometry.Scheme) (x : Y.toPresheafedSpace) :
(AlgebraicGeometry.coprodMk X Y) (Sum.inr x) = CategoryTheory.Limits.coprod.inr.base x
noncomputable def AlgebraicGeometry.coprodOpenCover (X Y : AlgebraicGeometry.Scheme) :
(X ⨿ Y).OpenCover

The open cover of the coproduct of two schemes.

Equations
  • One or more equations did not get rendered due to their size.

The map Spec R ⨿ Spec S ⟶ Spec (R × S). This is an isomorphism as witnessed by an IsIso instance provided below.

Equations
  • One or more equations did not get rendered due to their size.
noncomputable def AlgebraicGeometry.sigmaSpec {ι : Type u} (R : ιCommRingCat) :
( fun (i : ι) => AlgebraicGeometry.Spec (R i)) AlgebraicGeometry.Spec (CommRingCat.of ((i : ι) → (R i)))

The canonical map ∐ Spec Rᵢ ⟶ Spec (Π Rᵢ). This is an isomorphism when the product is finite.

Equations
Equations
  • =