Documentation

Mathlib.AlgebraicGeometry.AffineScheme

Affine schemes #

We define the category of AffineSchemes as the essential image of Spec. We also define predicates about affine schemes and affine open sets.

Main definitions #

A Scheme is affine if the canonical map X ⟶ Spec Γ(X) is an isomorphism.

Instances

    Construct an affine scheme from a scheme and the information that it is affine. Also see AffineScheme.of for a typeclass version.

    Equations
    Instances For

      The category of affine schemes is equivalent to the category of commutative rings.

      Equations
      Instances For

        An open subset of a scheme is affine if the open subscheme is affine.

        Equations
        Instances For

          The set of affine opens as a subset of opens X.

          Equations
          Instances For

            The open immersion Spec 𝒪ₓ(U) ⟶ X for an affine U.

            Equations
            • One or more equations did not get rendered due to their size.
            Instances For
              theorem AlgebraicGeometry.IsAffineOpen.fromSpec_map_basicOpen' {X : AlgebraicGeometry.Scheme} {U : TopologicalSpace.Opens ↑↑X.toPresheafedSpace} (hU : AlgebraicGeometry.IsAffineOpen U) (f : ↑(X.presheaf.obj (Opposite.op U))) :
              AlgebraicGeometry.IsAffineOpen.fromSpec hU⁻¹ᵁ X.basicOpen f = (AlgebraicGeometry.Scheme.Spec.obj (Opposite.op (X.presheaf.obj (Opposite.op U)))).basicOpen ((AlgebraicGeometry.SpecΓIdentity.inv.app (X.presheaf.obj (Opposite.op U))) f)
              theorem AlgebraicGeometry.IsAffineOpen.exists_basicOpen_le {X : AlgebraicGeometry.Scheme} {U : TopologicalSpace.Opens ↑↑X.toPresheafedSpace} (hU : AlgebraicGeometry.IsAffineOpen U) {V : TopologicalSpace.Opens ↑↑X.toPresheafedSpace} (x : ↥V) (h : ↑x ∈ U) :
              ∃ (f : ↑(X.presheaf.obj (Opposite.op U))), X.basicOpen f ≤ V ∧ ↑x ∈ X.basicOpen f
              def AlgebraicGeometry.IsAffineOpen.basicOpenSectionsToAffine {X : AlgebraicGeometry.Scheme} {U : TopologicalSpace.Opens ↑↑X.toPresheafedSpace} (hU : AlgebraicGeometry.IsAffineOpen U) (f : ↑(X.presheaf.obj (Opposite.op U))) :
              X.presheaf.obj (Opposite.op (X.basicOpen f)) ⟶ (AlgebraicGeometry.Scheme.Spec.obj (Opposite.op (X.presheaf.obj (Opposite.op U)))).presheaf.obj (Opposite.op (PrimeSpectrum.basicOpen f))

              Given an affine open U and some f : U, this is the canonical map Γ(𝒪ₓ, D(f)) ⟶ Γ(Spec 𝒪ₓ(U), D(f)) This is an isomorphism, as witnessed by an IsIso instance.

              Equations
              • One or more equations did not get rendered due to their size.
              Instances For
                theorem AlgebraicGeometry.IsAffineOpen.isLocalization_basicOpen {X : AlgebraicGeometry.Scheme} {U : TopologicalSpace.Opens ↑↑X.toPresheafedSpace} (hU : AlgebraicGeometry.IsAffineOpen U) (f : ↑(X.presheaf.obj (Opposite.op U))) :
                IsLocalization.Away f ↑(X.presheaf.obj (Opposite.op (X.basicOpen f)))
                Equations
                • ⋯ = ⋯
                theorem AlgebraicGeometry.IsAffineOpen.isLocalization_of_eq_basicOpen {X : AlgebraicGeometry.Scheme} {U : TopologicalSpace.Opens ↑↑X.toPresheafedSpace} (hU : AlgebraicGeometry.IsAffineOpen U) (f : ↑(X.presheaf.obj (Opposite.op U))) {V : TopologicalSpace.Opens ↑↑X.toPresheafedSpace} (i : V ⟶ U) (e : V = X.basicOpen f) :
                IsLocalization.Away f ↑(X.presheaf.obj (Opposite.op V))
                theorem AlgebraicGeometry.IsAffineOpen.basicOpen_basicOpen_is_basicOpen {X : AlgebraicGeometry.Scheme} {U : TopologicalSpace.Opens ↑↑X.toPresheafedSpace} (hU : AlgebraicGeometry.IsAffineOpen U) (f : ↑(X.presheaf.obj (Opposite.op U))) (g : ↑(X.presheaf.obj (Opposite.op (X.basicOpen f)))) :
                ∃ (f' : ↑(X.presheaf.obj (Opposite.op U))), X.basicOpen f' = X.basicOpen g
                theorem AlgebraicGeometry.exists_basicOpen_le_affine_inter {X : AlgebraicGeometry.Scheme} {U : TopologicalSpace.Opens ↑↑X.toPresheafedSpace} (hU : AlgebraicGeometry.IsAffineOpen U) {V : TopologicalSpace.Opens ↑↑X.toPresheafedSpace} (hV : AlgebraicGeometry.IsAffineOpen V) (x : ↑↑X.toPresheafedSpace) (hx : x ∈ U ⊓ V) :
                ∃ (f : ↑(X.presheaf.obj (Opposite.op U))) (g : ↑(X.presheaf.obj (Opposite.op V))), X.basicOpen f = X.basicOpen g ∧ x ∈ X.basicOpen f
                noncomputable def AlgebraicGeometry.IsAffineOpen.primeIdealOf {X : AlgebraicGeometry.Scheme} {U : TopologicalSpace.Opens ↑↑X.toPresheafedSpace} (hU : AlgebraicGeometry.IsAffineOpen U) (x : ↥U) :
                PrimeSpectrum ↑(X.presheaf.obj (Opposite.op U))

                The prime ideal of 𝒪ₓ(U) corresponding to a point x : U.

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

                  The basic open set of a section f on an affine open as an X.affineOpens.

                  Equations
                  Instances For
                    theorem AlgebraicGeometry.IsAffineOpen.basicOpen_union_eq_self_iff {X : AlgebraicGeometry.Scheme} {U : TopologicalSpace.Opens ↑↑X.toPresheafedSpace} (hU : AlgebraicGeometry.IsAffineOpen U) (s : Set ↑(X.presheaf.obj (Opposite.op U))) :
                    ⨆ (f : ↑s), X.basicOpen ↑f = U ↔ Ideal.span s = ⊤
                    theorem AlgebraicGeometry.IsAffineOpen.self_le_basicOpen_union_iff {X : AlgebraicGeometry.Scheme} {U : TopologicalSpace.Opens ↑↑X.toPresheafedSpace} (hU : AlgebraicGeometry.IsAffineOpen U) (s : Set ↑(X.presheaf.obj (Opposite.op U))) :
                    U ≤ ⨆ (f : ↑s), X.basicOpen ↑f ↔ Ideal.span s = ⊤
                    theorem AlgebraicGeometry.of_affine_open_cover {X : AlgebraicGeometry.Scheme} (V : ↑(AlgebraicGeometry.Scheme.affineOpens X)) (S : Set ↑(AlgebraicGeometry.Scheme.affineOpens X)) {P : ↑(AlgebraicGeometry.Scheme.affineOpens X) → Prop} (hP₁ : ∀ (U : ↑(AlgebraicGeometry.Scheme.affineOpens X)) (f : ↑(X.presheaf.obj (Opposite.op ↑U))), P U → P (AlgebraicGeometry.Scheme.affineBasicOpen X f)) (hP₂ : ∀ (U : ↑(AlgebraicGeometry.Scheme.affineOpens X)) (s : Finset ↑(X.presheaf.obj (Opposite.op ↑U))), Ideal.span ↑s = ⊤ → (∀ (f : { x : ↑(X.presheaf.obj (Opposite.op ↑U)) // x ∈ s }), P (AlgebraicGeometry.Scheme.affineBasicOpen X ↑f)) → P U) (hS : ⋃ (i : ↑S), ↑↑↑i = Set.univ) (hS' : ∀ (U : ↑S), P ↑U) :
                    P V

                    Let P be a predicate on the affine open sets of X satisfying

                    1. If P holds on U, then P holds on the basic open set of every section on U.
                    2. If P holds for a family of basic open sets covering U, then P holds for U.
                    3. There exists an affine open cover of X each satisfying P.

                    Then P holds for every affine open of X.

                    This is also known as the Affine communication lemma in [The rising sea][RisingSea].