Documentation

Mathlib.AlgebraicGeometry.RationalMap

Rational maps between schemes #

Main definitions #

A partial map from X to Y (X.PartialMap Y) is a morphism into Y defined on a dense open subscheme of X.

  • domain : X.Opens

    The domain of definition of a partial map.

  • dense_domain : Dense self.domain
  • hom : self.domain Y

    The underlying morphism of a partial map.

Instances For
    theorem AlgebraicGeometry.Scheme.PartialMap.ext_iff {X : AlgebraicGeometry.Scheme} {Y : AlgebraicGeometry.Scheme} (f : X.PartialMap Y) (g : X.PartialMap Y) :
    f = g ∃ (e : f.domain = g.domain), f.hom = CategoryTheory.CategoryStruct.comp (X.isoOfEq e).hom g.hom
    theorem AlgebraicGeometry.Scheme.PartialMap.ext {X : AlgebraicGeometry.Scheme} {Y : AlgebraicGeometry.Scheme} (f : X.PartialMap Y) (g : X.PartialMap Y) (e : f.domain = g.domain) (H : f.hom = CategoryTheory.CategoryStruct.comp (X.isoOfEq e).hom g.hom) :
    f = g
    @[simp]
    theorem AlgebraicGeometry.Scheme.PartialMap.restrict_hom {X : AlgebraicGeometry.Scheme} {Y : AlgebraicGeometry.Scheme} (f : X.PartialMap Y) (U : X.Opens) (hU : Dense U) (hU' : U f.domain) :
    (f.restrict U hU hU').hom = CategoryTheory.CategoryStruct.comp (X.homOfLE hU') f.hom
    theorem AlgebraicGeometry.Scheme.PartialMap.restrict_domain {X : AlgebraicGeometry.Scheme} {Y : AlgebraicGeometry.Scheme} (f : X.PartialMap Y) (U : X.Opens) (hU : Dense U) (hU' : U f.domain) :
    (f.restrict U hU hU').domain = U
    noncomputable def AlgebraicGeometry.Scheme.PartialMap.restrict {X : AlgebraicGeometry.Scheme} {Y : AlgebraicGeometry.Scheme} (f : X.PartialMap Y) (U : X.Opens) (hU : Dense U) (hU' : U f.domain) :
    X.PartialMap Y

    The restriction of a partial map to a smaller domain.

    Equations
    Instances For
      @[simp]
      theorem AlgebraicGeometry.Scheme.PartialMap.restrict_id {X : AlgebraicGeometry.Scheme} {Y : AlgebraicGeometry.Scheme} (f : X.PartialMap Y) :
      f.restrict f.domain = f
      theorem AlgebraicGeometry.Scheme.PartialMap.restrict_id_hom {X : AlgebraicGeometry.Scheme} {Y : AlgebraicGeometry.Scheme} (f : X.PartialMap Y) :
      (f.restrict f.domain ).hom = f.hom
      @[simp]
      theorem AlgebraicGeometry.Scheme.PartialMap.restrict_restrict {X : AlgebraicGeometry.Scheme} {Y : AlgebraicGeometry.Scheme} (f : X.PartialMap Y) (U : X.Opens) (hU : Dense U) (hU' : U f.domain) (V : X.Opens) (hV : Dense V) (hV' : V U) :
      (f.restrict U hU hU').restrict V hV hV' = f.restrict V hV
      theorem AlgebraicGeometry.Scheme.PartialMap.restrict_restrict_hom {X : AlgebraicGeometry.Scheme} {Y : AlgebraicGeometry.Scheme} (f : X.PartialMap Y) (U : X.Opens) (hU : Dense U) (hU' : U f.domain) (V : X.Opens) (hV : Dense V) (hV' : V U) :
      ((f.restrict U hU hU').restrict V hV hV').hom = (f.restrict V hV ).hom
      @[simp]
      theorem AlgebraicGeometry.Scheme.PartialMap.compHom_domain {X : AlgebraicGeometry.Scheme} {Y : AlgebraicGeometry.Scheme} {Z : AlgebraicGeometry.Scheme} (f : X.PartialMap Y) (g : Y Z) :
      (f.compHom g).domain = f.domain

      The composition of a partial map and a morphism on the right.

      Equations
      Instances For

        A scheme morphism as a partial map.

        Equations
        Instances For
          noncomputable def AlgebraicGeometry.Scheme.PartialMap.fromSpecStalkOfMem {X : AlgebraicGeometry.Scheme} {Y : AlgebraicGeometry.Scheme} (f : X.PartialMap Y) {x : X.toPresheafedSpace} (hx : x f.domain) :
          AlgebraicGeometry.Spec (X.presheaf.stalk x) Y

          If x is in the domain of a partial map f, then f restricts to a map from Spec 𝒪_x.

          Equations
          Instances For
            @[reducible, inline]
            noncomputable abbrev AlgebraicGeometry.Scheme.PartialMap.fromFunctionField {X : AlgebraicGeometry.Scheme} {Y : AlgebraicGeometry.Scheme} [IrreducibleSpace X.toPresheafedSpace] (f : X.PartialMap Y) :
            AlgebraicGeometry.Spec X.functionField Y

            A partial map restricts to a map from Spec K(X).

            Equations
            • f.fromFunctionField = f.fromSpecStalkOfMem
            Instances For
              theorem AlgebraicGeometry.Scheme.PartialMap.fromSpecStalkOfMem_restrict {X : AlgebraicGeometry.Scheme} {Y : AlgebraicGeometry.Scheme} (f : X.PartialMap Y) {U : X.Opens} (hU : Dense U) (hU' : U f.domain) {x : X.toPresheafedSpace} (hx : x U) :
              (f.restrict U hU hU').fromSpecStalkOfMem hx = f.fromSpecStalkOfMem
              theorem AlgebraicGeometry.Scheme.PartialMap.fromFunctionField_restrict {X : AlgebraicGeometry.Scheme} {Y : AlgebraicGeometry.Scheme} (f : X.PartialMap Y) [IrreducibleSpace X.toPresheafedSpace] {U : X.Opens} (hU : Dense U) (hU' : U f.domain) :
              (f.restrict U hU hU').fromFunctionField = f.fromFunctionField
              noncomputable def AlgebraicGeometry.Scheme.PartialMap.ofFromSpecStalk {X : AlgebraicGeometry.Scheme} {Y : AlgebraicGeometry.Scheme} {S : AlgebraicGeometry.Scheme} (sX : X S) (sY : Y S) [IrreducibleSpace X.toPresheafedSpace] [AlgebraicGeometry.LocallyOfFiniteType sY] {x : X.toPresheafedSpace} [X.IsGermInjectiveAt x] (φ : AlgebraicGeometry.Spec (X.presheaf.stalk x) Y) (h : CategoryTheory.CategoryStruct.comp φ sY = CategoryTheory.CategoryStruct.comp (X.fromSpecStalk x) sX) :
              X.PartialMap Y

              Given S-schemes X and Y such that Y is locally of finite type and X is irreducible germ-injective at x (e.g. when X is integral), any S-morphism Spec 𝒪ₓ ⟶ Y spreads out to a partial map from X to Y.

              Equations
              Instances For
                theorem AlgebraicGeometry.Scheme.PartialMap.mem_domain_ofFromSpecStalk {X : AlgebraicGeometry.Scheme} {Y : AlgebraicGeometry.Scheme} {S : AlgebraicGeometry.Scheme} (sX : X S) (sY : Y S) [IrreducibleSpace X.toPresheafedSpace] [AlgebraicGeometry.LocallyOfFiniteType sY] {x : X.toPresheafedSpace} [X.IsGermInjectiveAt x] (φ : AlgebraicGeometry.Spec (X.presheaf.stalk x) Y) (h : CategoryTheory.CategoryStruct.comp φ sY = CategoryTheory.CategoryStruct.comp (X.fromSpecStalk x) sX) :
                theorem AlgebraicGeometry.Scheme.PartialMap.fromSpecStalkOfMem_ofFromSpecStalk {X : AlgebraicGeometry.Scheme} {Y : AlgebraicGeometry.Scheme} {S : AlgebraicGeometry.Scheme} (sX : X S) (sY : Y S) [IrreducibleSpace X.toPresheafedSpace] [AlgebraicGeometry.LocallyOfFiniteType sY] {x : X.toPresheafedSpace} [X.IsGermInjectiveAt x] (φ : AlgebraicGeometry.Spec (X.presheaf.stalk x) Y) (h : CategoryTheory.CategoryStruct.comp φ sY = CategoryTheory.CategoryStruct.comp (X.fromSpecStalk x) sX) :
                (AlgebraicGeometry.Scheme.PartialMap.ofFromSpecStalk sX sY φ h).fromSpecStalkOfMem = φ
                @[simp]
                theorem AlgebraicGeometry.Scheme.PartialMap.fromSpecStalkOfMem_compHom {X : AlgebraicGeometry.Scheme} {Y : AlgebraicGeometry.Scheme} {Z : AlgebraicGeometry.Scheme} (f : X.PartialMap Y) (g : Y Z) (x : X.toPresheafedSpace) (hx : x (f.compHom g).domain) :
                (f.compHom g).fromSpecStalkOfMem hx = CategoryTheory.CategoryStruct.comp (f.fromSpecStalkOfMem hx) g
                noncomputable def AlgebraicGeometry.Scheme.PartialMap.equiv {X : AlgebraicGeometry.Scheme} {Y : AlgebraicGeometry.Scheme} (f : X.PartialMap Y) (g : X.PartialMap Y) :

                Two partial maps are equivalent if they are equal on a dense open subscheme.

                Equations
                • f.equiv g = ∃ (W : X.Opens) (hW : Dense W) (hWl : W f.domain) (hWr : W g.domain), (f.restrict W hW hWl).hom = (g.restrict W hW hWr).hom
                Instances For
                  Equations
                  • AlgebraicGeometry.Scheme.PartialMap.instSetoid = { r := AlgebraicGeometry.Scheme.PartialMap.equiv, iseqv := }
                  theorem AlgebraicGeometry.Scheme.PartialMap.restrict_equiv {X : AlgebraicGeometry.Scheme} {Y : AlgebraicGeometry.Scheme} (f : X.PartialMap Y) (U : X.Opens) (hU : Dense U) (hU' : U f.domain) :
                  (f.restrict U hU hU').equiv f
                  theorem AlgebraicGeometry.Scheme.PartialMap.equiv_of_fromSpecStalkOfMem_eq {X : AlgebraicGeometry.Scheme} {Y : AlgebraicGeometry.Scheme} [IrreducibleSpace X.toPresheafedSpace] {x : X.toPresheafedSpace} [X.IsGermInjectiveAt x] (f : X.PartialMap Y) (g : X.PartialMap Y) (hxf : x f.domain) (hxg : x g.domain) (H : f.fromSpecStalkOfMem hxf = g.fromSpecStalkOfMem hxg) :
                  f.equiv g

                  A rational map from X to Y (X ⤏ Y) is an equivalence class of partial maps, where two partial maps are equivalent if they are equal on a dense open subscheme.

                  Equations
                  Instances For

                    The notation for rational maps.

                    Equations
                    Instances For

                      A partial map as a rational map.

                      Equations
                      • f.toRationalMap = f
                      Instances For
                        @[reducible, inline]

                        A scheme morphism as a rational map.

                        Equations
                        • f.toRationalMap = f.toPartialMap.toRationalMap
                        Instances For
                          theorem AlgebraicGeometry.Scheme.RationalMap.exists_rep {X : AlgebraicGeometry.Scheme} {Y : AlgebraicGeometry.Scheme} (f : X.RationalMap Y) :
                          ∃ (g : X.PartialMap Y), g.toRationalMap = f
                          theorem AlgebraicGeometry.Scheme.PartialMap.toRationalMap_eq_iff {X : AlgebraicGeometry.Scheme} {Y : AlgebraicGeometry.Scheme} {f : X.PartialMap Y} {g : X.PartialMap Y} :
                          f.toRationalMap = g.toRationalMap f.equiv g
                          @[simp]
                          theorem AlgebraicGeometry.Scheme.PartialMap.restrict_toRationalMap {X : AlgebraicGeometry.Scheme} {Y : AlgebraicGeometry.Scheme} (f : X.PartialMap Y) (U : X.Opens) (hU : Dense U) (hU' : U f.domain) :
                          (f.restrict U hU hU').toRationalMap = f.toRationalMap

                          The composition of a rational map and a morphism on the right.

                          Equations
                          • f.compHom g = Quotient.map (fun (x : X.PartialMap Y) => x.compHom g) f
                          Instances For
                            @[simp]
                            theorem AlgebraicGeometry.Scheme.RationalMap.compHom_toRationalMap {X : AlgebraicGeometry.Scheme} {Y : AlgebraicGeometry.Scheme} {Z : AlgebraicGeometry.Scheme} (f : X.PartialMap Y) (g : Y Z) :
                            (f.compHom g).toRationalMap = f.toRationalMap.compHom g
                            noncomputable def AlgebraicGeometry.Scheme.RationalMap.fromFunctionField {X : AlgebraicGeometry.Scheme} {Y : AlgebraicGeometry.Scheme} [IrreducibleSpace X.toPresheafedSpace] (f : X.RationalMap Y) :
                            AlgebraicGeometry.Spec X.functionField Y

                            A rational map restricts to a map from Spec K(X).

                            Equations
                            • f.fromFunctionField = Quotient.lift AlgebraicGeometry.Scheme.PartialMap.fromFunctionField f
                            Instances For
                              @[simp]
                              theorem AlgebraicGeometry.Scheme.RationalMap.fromFunctionField_toRationalMap {X : AlgebraicGeometry.Scheme} {Y : AlgebraicGeometry.Scheme} [IrreducibleSpace X.toPresheafedSpace] (f : X.PartialMap Y) :
                              f.toRationalMap.fromFunctionField = f.fromFunctionField

                              Given S-schemes X and Y such that Y is locally of finite type and X is integral, any S-morphism Spec K(X) ⟶ Y spreads out to a rational map from X to Y.

                              Equations
                              Instances For
                                theorem AlgebraicGeometry.Scheme.RationalMap.eq_of_fromFunctionField_eq {X : AlgebraicGeometry.Scheme} {Y : AlgebraicGeometry.Scheme} [AlgebraicGeometry.IsIntegral X] (f : X.RationalMap Y) (g : X.RationalMap Y) (H : f.fromFunctionField = g.fromFunctionField) :
                                f = g

                                Given S-schemes X and Y such that Y is locally of finite type and X is integral, S-morphisms Spec K(X) ⟶ Y correspond bijectively to S-rational maps from X to Y.

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