Documentation

Mathlib.AlgebraicGeometry.GammaSpecAdjunction

Adjunction between Γ and Spec #

We define the adjunction ΓSpec.adjunction : Γ ⊣ Spec by defining the unit (toΓSpec, in multiple steps in this file) and counit (done in Spec.lean) and checking that they satisfy the left and right triangle identities. The constructions and proofs make use of maps and lemmas defined and proved in structure_sheaf.lean extensively.

Notice that since the adjunction is between contravariant functors, you get to choose one of the two categories to have arrows reversed, and it is equally valid to present the adjunction as Spec ⊣ Γ (Spec.to_LocallyRingedSpace.right_op ⊣ Γ), in which case the unit and the counit would switch to each other.

Main definition #

The canonical map from the underlying set to the prime spectrum of Γ(X).

Equations
Instances For
    theorem AlgebraicGeometry.LocallyRingedSpace.not_mem_prime_iff_unit_in_stalk (X : LocallyRingedSpace) (r : (Γ.obj (Opposite.op X))) (x : X.toTopCat) :
    r(X.toΓSpecFun x).asIdeal IsUnit ((X.presheaf.Γgerm x).hom r)
    theorem AlgebraicGeometry.LocallyRingedSpace.toΓSpec_preimage_basicOpen_eq (X : LocallyRingedSpace) (r : (Γ.obj (Opposite.op X))) :
    X.toΓSpecFun ⁻¹' (PrimeSpectrum.basicOpen r).carrier = (X.toRingedSpace.basicOpen r).carrier

    The preimage of a basic open in Spec Γ(X) under the unit is the basic open in X defined by the same element (they are equal as sets).

    The canonical (bundled) continuous map from the underlying topological space of X to the prime spectrum of its global sections.

    Equations
    • X.toΓSpecBase = { toFun := X.toΓSpecFun, continuous_toFun := }
    Instances For
      @[simp]
      theorem AlgebraicGeometry.LocallyRingedSpace.toΓSpecBase_apply (X : LocallyRingedSpace) (a✝ : X.toTopCat) :
      X.toΓSpecBase a✝ = X.toΓSpecFun a✝
      @[reducible, inline]

      The preimage in X of a basic open in Spec Γ(X) (as an open set).

      Equations
      Instances For
        theorem AlgebraicGeometry.LocallyRingedSpace.toΓSpecMapBasicOpen_eq (X : LocallyRingedSpace) (r : (Γ.obj (Opposite.op X))) :
        X.toΓSpecMapBasicOpen r = X.toRingedSpace.basicOpen r

        The preimage is the basic open in X defined by the same element r.

        @[reducible, inline]
        abbrev AlgebraicGeometry.LocallyRingedSpace.toToΓSpecMapBasicOpen (X : LocallyRingedSpace) (r : (Γ.obj (Opposite.op X))) :
        X.presheaf.obj (Opposite.op ) X.presheaf.obj (Opposite.op (X.toΓSpecMapBasicOpen r))

        The map from the global sections Γ(X) to the sections on the (preimage of) a basic open.

        Equations
        • X.toToΓSpecMapBasicOpen r = X.presheaf.map (X.toΓSpecMapBasicOpen r).leTop.op
        Instances For
          theorem AlgebraicGeometry.LocallyRingedSpace.isUnit_res_toΓSpecMapBasicOpen (X : LocallyRingedSpace) (r : (Γ.obj (Opposite.op X))) :
          IsUnit ((X.toToΓSpecMapBasicOpen r).hom r)

          r is a unit as a section on the basic open defined by r.

          def AlgebraicGeometry.LocallyRingedSpace.toΓSpecCApp (X : LocallyRingedSpace) (r : (Γ.obj (Opposite.op X))) :
          (Spec.structureSheaf (Γ.obj (Opposite.op X))).val.obj (Opposite.op (PrimeSpectrum.basicOpen r)) X.presheaf.obj (Opposite.op (X.toΓSpecMapBasicOpen r))

          Define the sheaf hom on individual basic opens for the unit.

          Equations
          Instances For
            theorem AlgebraicGeometry.LocallyRingedSpace.toΓSpecCApp_iff (X : LocallyRingedSpace) (r : (Γ.obj (Opposite.op X))) (f : (Spec.structureSheaf (Γ.obj (Opposite.op X))).val.obj (Opposite.op (PrimeSpectrum.basicOpen r)) X.presheaf.obj (Opposite.op (X.toΓSpecMapBasicOpen r))) :
            CategoryTheory.CategoryStruct.comp (StructureSheaf.toOpen (↑(Γ.obj (Opposite.op X))) (PrimeSpectrum.basicOpen r)) f = X.toToΓSpecMapBasicOpen r f = X.toΓSpecCApp r

            Characterization of the sheaf hom on basic opens, direction ← (next lemma) is used at various places, but → is not used in this file.

            The sheaf hom on all basic opens, commuting with restrictions.

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

              The canonical morphism of sheafed spaces from X to the spectrum of its global sections.

              Equations
              • One or more equations did not get rendered due to their size.
              Instances For
                @[simp]
                theorem AlgebraicGeometry.LocallyRingedSpace.toΓSpecSheafedSpace_c (X : LocallyRingedSpace) :
                X.toΓSpecSheafedSpace.c = (TopCat.Sheaf.restrictHomEquivHom (Spec.structureSheaf (Γ.obj (Opposite.op X))).val ((TopCat.Sheaf.pushforward CommRingCat X.toΓSpecBase).obj X.𝒪) ) X.toΓSpecCBasicOpens
                @[simp]
                theorem AlgebraicGeometry.LocallyRingedSpace.toΓSpecSheafedSpace_base (X : LocallyRingedSpace) :
                X.toΓSpecSheafedSpace.base = X.toΓSpecBase
                theorem AlgebraicGeometry.LocallyRingedSpace.toΓSpecSheafedSpace_app_eq (X : LocallyRingedSpace) (r : (Γ.obj (Opposite.op X))) :
                X.toΓSpecSheafedSpace.c.app (Opposite.op (PrimeSpectrum.basicOpen r)) = X.toΓSpecCApp r
                theorem AlgebraicGeometry.LocallyRingedSpace.toStalk_stalkMap_toΓSpec (X : LocallyRingedSpace) (x : X.toTopCat) :
                CategoryTheory.CategoryStruct.comp (StructureSheaf.toStalk (↑(Opposite.unop (Opposite.op (Γ.obj (Opposite.op X))))) (X.toΓSpecSheafedSpace.base x)) (PresheafedSpace.Hom.stalkMap X.toΓSpecSheafedSpace x) = X.presheaf.Γgerm x

                The map on stalks induced by the unit commutes with maps from Γ(X) to stalks (in Spec Γ(X) and in X).

                The canonical morphism from X to the spectrum of its global sections.

                Equations
                • X.toΓSpec = { toHom := X.toΓSpecSheafedSpace, prop := }
                Instances For
                  @[simp]
                  theorem AlgebraicGeometry.LocallyRingedSpace.toΓSpec_base (X : LocallyRingedSpace) :
                  X.toΓSpec.base = X.toΓSpecBase
                  theorem AlgebraicGeometry.LocallyRingedSpace.toΓSpec_preimage_zeroLocus_eq {X : LocallyRingedSpace} (s : Set (X.presheaf.obj (Opposite.op ))) :
                  X.toΓSpec.base ⁻¹' PrimeSpectrum.zeroLocus s = X.toRingedSpace.zeroLocus s

                  On a locally ringed space X, the preimage of the zero locus of the prime spectrum of Γ(X, ⊤) under toΓSpec agrees with the associated zero locus on X.

                  The adjunction Γ ⊣ Spec from CommRingᵒᵖ to LocallyRingedSpace.

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

                    The adjunction Γ ⊣ Spec from CommRingᵒᵖ to Scheme.

                    Equations
                    • One or more equations did not get rendered due to their size.
                    Instances For
                      theorem AlgebraicGeometry.ΓSpec.adjunction_homEquiv_apply {X : Scheme} {R : CommRingCatᵒᵖ} (f : Opposite.op (Scheme.Γ.obj (Opposite.op X)) R) :
                      (adjunction.homEquiv X R) f = { toHom_1 := (locallyRingedSpaceAdjunction.homEquiv X.toLocallyRingedSpace R) f }
                      theorem AlgebraicGeometry.ΓSpec.adjunction_homEquiv_symm_apply {X : Scheme} {R : CommRingCatᵒᵖ} (f : X Scheme.Spec.obj R) :
                      (adjunction.homEquiv X R).symm f = (locallyRingedSpaceAdjunction.homEquiv X.toLocallyRingedSpace R).symm (Scheme.Hom.toLRSHom f)

                      The canonical map X ⟶ Spec Γ(X, ⊤). This is the unit of the Γ-Spec adjunction.

                      Equations
                      Instances For
                        @[simp]
                        theorem AlgebraicGeometry.Scheme.toSpecΓ_base (X : Scheme) (x : X.toPresheafedSpace) :
                        X.toSpecΓ.base x = (Spec.map (X.presheaf.germ x trivial)).base (IsLocalRing.closedPoint (X.presheaf.stalk x))
                        @[simp]
                        theorem AlgebraicGeometry.Scheme.toSpecΓ_appTop (X : Scheme) :
                        Hom.appTop X.toSpecΓ = (ΓSpecIso (X.presheaf.obj (Opposite.op ))).hom
                        @[deprecated AlgebraicGeometry.Scheme.toSpecΓ_appTop (since := "2024-11-23")]
                        theorem AlgebraicGeometry.Scheme.toSpecΓ_app_top (X : Scheme) :
                        Hom.appTop X.toSpecΓ = (ΓSpecIso (X.presheaf.obj (Opposite.op ))).hom

                        Alias of AlgebraicGeometry.Scheme.toSpecΓ_appTop.

                        theorem AlgebraicGeometry.Scheme.toSpecΓ_preimage_basicOpen (X : Scheme) (r : (X.presheaf.obj (Opposite.op ))) :
                        (TopologicalSpace.Opens.map X.toSpecΓ.base).obj (PrimeSpectrum.basicOpen r) = X.basicOpen r
                        @[simp]
                        theorem AlgebraicGeometry.toOpen_toSpecΓ_app {X : Scheme} (U : (Spec (X.presheaf.obj (Opposite.op ))).Opens) :
                        CategoryTheory.CategoryStruct.comp (StructureSheaf.toOpen (↑(X.presheaf.obj (Opposite.op ))) U) (Scheme.Hom.app X.toSpecΓ U) = X.presheaf.map (CategoryTheory.homOfLE ).op
                        @[simp]
                        theorem AlgebraicGeometry.toOpen_toSpecΓ_app_assoc {X : Scheme} (U : (Spec (X.presheaf.obj (Opposite.op ))).Opens) {Z : CommRingCat} (h : X.presheaf.obj (Opposite.op ((TopologicalSpace.Opens.map X.toSpecΓ.base).obj U)) Z) :
                        @[deprecated AlgebraicGeometry.Scheme.toSpecΓ_naturality (since := "2024-07-24")]

                        Alias of AlgebraicGeometry.Scheme.toSpecΓ_naturality.

                        @[deprecated AlgebraicGeometry.Scheme.toSpecΓ_naturality_assoc (since := "2024-07-24")]

                        Alias of AlgebraicGeometry.Scheme.toSpecΓ_naturality_assoc.

                        @[deprecated AlgebraicGeometry.Scheme.toSpecΓ_appTop (since := "2024-07-24")]

                        Alias of AlgebraicGeometry.Scheme.toSpecΓ_appTop.

                        @[deprecated AlgebraicGeometry.Scheme.toSpecΓ_preimage_basicOpen (since := "2024-07-24")]
                        theorem AlgebraicGeometry.ΓSpec.adjunction_unit_map_basicOpen (X : Scheme) (r : (X.presheaf.obj (Opposite.op ))) :
                        (TopologicalSpace.Opens.map X.toSpecΓ.base).obj (PrimeSpectrum.basicOpen r) = X.basicOpen r

                        Alias of AlgebraicGeometry.Scheme.toSpecΓ_preimage_basicOpen.

                        Immediate consequences of the adjunction.

                        The functor Spec.toLocallyRingedSpace : CommRingCatᵒᵖ ⥤ LocallyRingedSpace is fully faithful.

                        Equations
                        Instances For

                          The functor Spec : CommRingCatᵒᵖ ⥤ Scheme is fully faithful.

                          Equations
                          Instances For

                            Spec is a full functor.

                            Spec is a faithful functor.

                            theorem AlgebraicGeometry.Spec.map_inj {R S : CommRingCat} {φ ψ : R S} :
                            map φ = map ψ φ = ψ

                            The preimage under Spec.

                            Equations
                            Instances For
                              @[simp]
                              theorem AlgebraicGeometry.Spec.preimage_map {R S : CommRingCat} (φ : R S) :
                              preimage (map φ) = φ

                              Useful for replacing f by Spec.map φ everywhere in proofs.

                              Spec is fully faithful

                              Equations
                              Instances For
                                @[simp]
                                theorem AlgebraicGeometry.Spec.homEquiv_apply {R S : CommRingCat} (f : Spec S Spec R) :
                                homEquiv f = preimage f
                                @[deprecated AlgebraicGeometry.LocallyRingedSpace.toΓSpec_preimage_basicOpen_eq (since := "2024-07-02")]
                                theorem AlgebraicGeometry.LocallyRingedSpace.toΓSpec_preim_basicOpen_eq (X : LocallyRingedSpace) (r : (Γ.obj (Opposite.op X))) :
                                X.toΓSpecFun ⁻¹' (PrimeSpectrum.basicOpen r).carrier = (X.toRingedSpace.basicOpen r).carrier

                                Alias of AlgebraicGeometry.LocallyRingedSpace.toΓSpec_preimage_basicOpen_eq.


                                The preimage of a basic open in Spec Γ(X) under the unit is the basic open in X defined by the same element (they are equal as sets).