Documentation

Atlas.ArithmeticGeometry.code.Varieties

def IsAffineVariety (k : Type u_1) [Field k] (n : ) (V : Set (AffineSpace_k k n)) :

An affine variety is an irreducible algebraic subset of affine $n$-space (Definition 12.7).

Instances For
    theorem IsAffineVariety.isAlgebraicSubset (k : Type u_1) [Field k] {n : } {V : Set (AffineSpace_k k n)} (h : IsAffineVariety k n V) :

    An affine variety is in particular an algebraic subset.

    theorem IsAffineVariety.nonempty (k : Type u_1) [Field k] {n : } {V : Set (AffineSpace_k k n)} (h : IsAffineVariety k n V) :

    An affine variety is nonempty (since irreducible algebraic sets are required to be nonempty).

    The coordinate ring $\bar{k}[V]$ of an affine variety $V$ is an integral domain.

    noncomputable def functionFieldBar (k : Type u_1) [Field k] {n : } (V : Set (AffineSpace_k k n)) (hV : IsAffineVariety k n V) :
    Type u_1

    The function field $\bar{k}(V)$ of an affine variety, defined as the fraction field of the coordinate ring $\bar{k}[V]$.

    Instances For
      @[reducible]
      noncomputable def functionFieldBar.instField (k : Type u_1) [Field k] {n : } {V : Set (AffineSpace_k k n)} (hV : IsAffineVariety k n V) :

      The function field $\bar{k}(V)$ is a field.

      Instances For
        @[implicit_reducible]
        noncomputable instance instFieldFunctionFieldBar (k : Type u_1) [Field k] {n : } {V : Set (AffineSpace_k k n)} (hV : IsAffineVariety k n V) :
        @[reducible]
        noncomputable def functionFieldBar.instAlgebra (k : Type u_1) [Field k] {n : } {V : Set (AffineSpace_k k n)} (hV : IsAffineVariety k n V) :

        The function field $\bar{k}(V)$ is an algebra over the algebraic closure $\bar{k}$.

        Instances For
          @[implicit_reducible]
          noncomputable instance instAlgebraAlgebraicClosureFunctionFieldBar (k : Type u_1) [Field k] {n : } {V : Set (AffineSpace_k k n)} (hV : IsAffineVariety k n V) :
          noncomputable def functionField_k (k : Type u_1) [Field k] {n : } (V : Set (AffineSpace_k k n)) (_hV : IsAffineVariety k n V) (_hdom : IsDomain (AffineCoordinateRing V)) :
          Type u_1

          The $k$-rational function field $k(V)$ of an affine variety, defined as the fraction field of the $k$-coordinate ring $k[V]$ when it is a domain.

          Instances For
            @[implicit_reducible]
            noncomputable instance instFieldFunctionField_k (k : Type u_1) [Field k] {n : } {V : Set (AffineSpace_k k n)} (_hV : IsAffineVariety k n V) (hdom : IsDomain (AffineCoordinateRing V)) :
            Field (functionField_k k V _hV hdom)
            noncomputable def varietyDim (k : Type u_1) [Field k] {n : } (V : Set (AffineSpace_k k n)) (hV : IsAffineVariety k n V) :

            The dimension of an affine variety $V$ is the transcendence degree of its function field $\bar{k}(V)$ over $\bar{k}$ (Definition 12.21).

            Instances For
              def IsAlgebraicSetAffine (k : Type u_1) [Field k] (n : ) (V : Set (AffineSpace_k k n)) :

              A subset $V \subseteq \mathbb{A}^n$ is an algebraic set if it is the zero locus $\mathcal{V}(S)$ of some set $S$ of polynomials.

              Instances For
                def algebraicSetsCollection (k : Type u_1) [Field k] (n : ) :

                The collection of all algebraic subsets of $\mathbb{A}^n$, used as the closed sets of the Zariski topology.

                Instances For

                  The empty set is an algebraic set, namely $\mathcal{V}(\{1\})$.

                  An arbitrary intersection of algebraic sets is again algebraic.

                  The union of two algebraic sets is algebraic: $\mathcal{V}(S) \cup \mathcal{V}(T) = \mathcal{V}(ST)$.

                  @[reducible]

                  The Zariski topology on $\mathbb{A}^n_k$, whose closed sets are the algebraic sets.

                  Instances For

                    A subset of $\mathbb{A}^n_k$ is closed in the Zariski topology iff it is an algebraic set.

                    noncomputable def polyMapEval (k : Type u_1) [Field k] (m n : ) (polys : Fin nMvPolynomial (Fin m) (AlgebraicClosure k)) (P : AffineSpace_k k m) :

                    Evaluate a tuple of polynomials at a point, giving a map $\mathbb{A}^m \to \mathbb{A}^n$.

                    Instances For

                      Evaluating $g \circ f$ at $P$ equals evaluating $g$ at $f(P)$, where $f$ is given by a tuple of polynomials.

                      theorem polyMapEval_bind₁ (k : Type u_1) [Field k] {m n r : } (P : AffineSpace_k k m) (f : Fin nMvPolynomial (Fin m) (AlgebraicClosure k)) (g : Fin rMvPolynomial (Fin n) (AlgebraicClosure k)) :
                      polyMapEval k m r (fun (j : Fin r) => (MvPolynomial.bind₁ f) (g j)) P = polyMapEval k n r g (polyMapEval k m n f P)

                      Polynomial maps compose: $(g \circ f)(P) = g(f(P))$.

                      structure AffineMorphism (k : Type u_1) [Field k] (m n : ) (X : Set (AffineSpace_k k m)) (Y : Set (AffineSpace_k k n)) :
                      Type u_1

                      A morphism of affine varieties $X \to Y$ is given by an $n$-tuple of polynomials whose induced map sends $X$ into $Y$.

                      Instances For
                        noncomputable def AffineMorphism.toFun (k : Type u_1) [Field k] {m n : } {X : Set (AffineSpace_k k m)} {Y : Set (AffineSpace_k k n)} (φ : AffineMorphism k m n X Y) (P : AffineSpace_k k m) :

                        The underlying set-theoretic map of an affine morphism.

                        Instances For
                          theorem AffineMorphism.image_mem (k : Type u_1) [Field k] {m n : } {X : Set (AffineSpace_k k m)} {Y : Set (AffineSpace_k k n)} (φ : AffineMorphism k m n X Y) {P : AffineSpace_k k m} (hP : P X) :
                          toFun k φ P Y

                          The image of any point of $X$ under an affine morphism lies in $Y$.

                          noncomputable def AffineMorphism.id (k : Type u_1) [Field k] {n : } (X : Set (AffineSpace_k k n)) :
                          AffineMorphism k n n X X

                          The identity affine morphism on $X$, given by the coordinate polynomials $X_1, \ldots, X_n$.

                          Instances For
                            noncomputable def AffineMorphism.comp (k : Type u_1) [Field k] {m n r : } {X : Set (AffineSpace_k k m)} {Y : Set (AffineSpace_k k n)} {Z : Set (AffineSpace_k k r)} (g : AffineMorphism k n r Y Z) (f : AffineMorphism k m n X Y) :
                            AffineMorphism k m r X Z

                            Composition of affine morphisms $g \circ f : X \to Z$.

                            Instances For
                              theorem AffineMorphism.toFun_id (k : Type u_1) [Field k] {n : } {X : Set (AffineSpace_k k n)} (P : AffineSpace_k k n) :
                              toFun k (id k X) P = P

                              The identity morphism evaluates to the identity function.

                              theorem AffineMorphism.toFun_comp (k : Type u_1) [Field k] {m n r : } {X : Set (AffineSpace_k k m)} {Y : Set (AffineSpace_k k n)} {Z : Set (AffineSpace_k k r)} (g : AffineMorphism k n r Y Z) (f : AffineMorphism k m n X Y) (P : AffineSpace_k k m) :
                              toFun k (comp k g f) P = toFun k g (toFun k f P)

                              The underlying function of the composite of two affine morphisms is the composite of their underlying functions.

                              def IsOpenInVariety (k : Type u_1) [Field k] (m : ) (X U : Set (AffineSpace_k k m)) :

                              A subset $U$ of a variety $X$ is open in $X$ iff $U = X \cap W$ for some Zariski-open $W$.

                              Instances For
                                def IsDenseInVariety (k : Type u_1) [Field k] (m : ) (X U : Set (AffineSpace_k k m)) :

                                A subset $U$ is dense in the variety $X$ iff $X$ is contained in the Zariski closure of $U$.

                                Instances For
                                  noncomputable def ratFunEval (k : Type u_1) [Field k] (m : ) (num denom : MvPolynomial (Fin m) (AlgebraicClosure k)) (P : AffineSpace_k k m) :

                                  Evaluate a rational function $\mathrm{num}/\mathrm{denom}$ at a point $P$.

                                  Instances For
                                    noncomputable def ratMapEval (k : Type u_1) [Field k] (m n : ) (nums denoms : Fin nMvPolynomial (Fin m) (AlgebraicClosure k)) (P : AffineSpace_k k m) :

                                    Evaluate a rational map $\mathbb{A}^m \dashrightarrow \mathbb{A}^n$ given by tuples of numerators and denominators.

                                    Instances For
                                      def ratMapDom (k : Type u_1) [Field k] (m n : ) (X : Set (AffineSpace_k k m)) (denoms : Fin nMvPolynomial (Fin m) (AlgebraicClosure k)) :

                                      The domain of definition of a rational map: points of $X$ where every denominator is nonzero.

                                      Instances For
                                        theorem ratMapDom_subset (k : Type u_1) [Field k] {m n : } (X : Set (AffineSpace_k k m)) (denoms : Fin nMvPolynomial (Fin m) (AlgebraicClosure k)) :
                                        ratMapDom k m n X denoms X

                                        The domain of a rational map is a subset of $X$.

                                        theorem ratMapEval_eq_polyMapEval_of_denom_one (k : Type u_1) [Field k] {m n : } (polys : Fin nMvPolynomial (Fin m) (AlgebraicClosure k)) (P : AffineSpace_k k m) :
                                        ratMapEval k m n polys (fun (x : Fin n) => 1) P = polyMapEval k m n polys P

                                        A rational map with all denominators equal to $1$ reduces to a polynomial map.

                                        theorem ratMapDom_of_denom_one (k : Type u_1) [Field k] {m n : } (X : Set (AffineSpace_k k m)) :
                                        (ratMapDom k m n X fun (x : Fin n) => 1) = X

                                        If all denominators are $1$, the domain of the rational map is all of $X$.

                                        structure RationalMap (k : Type u_1) [Field k] (m n : ) (X : Set (AffineSpace_k k m)) (Y : Set (AffineSpace_k k n)) :
                                        Type u_1

                                        A rational map $X \dashrightarrow Y$ between affine varieties: a tuple of numerators/denominators, defined on an open dense subset of $X$, sending its domain into $Y$.

                                        Instances For
                                          def RationalMap.dom (k : Type u_1) [Field k] {m n : } {X : Set (AffineSpace_k k m)} {Y : Set (AffineSpace_k k n)} (φ : RationalMap k m n X Y) :

                                          The domain of definition of a rational map.

                                          Instances For
                                            noncomputable def RationalMap.toFun (k : Type u_1) [Field k] {m n : } {X : Set (AffineSpace_k k m)} {Y : Set (AffineSpace_k k n)} (φ : RationalMap k m n X Y) (P : AffineSpace_k k m) :

                                            The underlying partial function of a rational map.

                                            Instances For
                                              theorem RationalMap.image_mem (k : Type u_1) [Field k] {m n : } {X : Set (AffineSpace_k k m)} {Y : Set (AffineSpace_k k n)} (φ : RationalMap k m n X Y) {P : AffineSpace_k k m} (hP : P dom k φ) :
                                              toFun k φ P Y

                                              The image of a point in the domain of a rational map lies in $Y$.

                                              noncomputable def AffineMorphism.toRationalMap (k : Type u_1) [Field k] {m n : } {X : Set (AffineSpace_k k m)} {Y : Set (AffineSpace_k k n)} (φ : AffineMorphism k m n X Y) :
                                              RationalMap k m n X Y

                                              Every affine morphism is a rational map (with all denominators equal to $1$).

                                              Instances For
                                                @[simp]
                                                theorem AffineMorphism.toRationalMap_dom (k : Type u_1) [Field k] {m n : } {X : Set (AffineSpace_k k m)} {Y : Set (AffineSpace_k k n)} (φ : AffineMorphism k m n X Y) :

                                                The domain of the rational map associated to an affine morphism is all of $X$.

                                                def RationalMap.IsRegular (k : Type u_1) [Field k] {m n : } {X : Set (AffineSpace_k k m)} {Y : Set (AffineSpace_k k n)} (φ : RationalMap k m n X Y) :

                                                A rational map is regular if its domain of definition is the entire source variety.

                                                Instances For
                                                  def RationalMap.toAffineMorphism (k : Type u_1) [Field k] {m n : } {X : Set (AffineSpace_k k m)} {Y : Set (AffineSpace_k k n)} (φ : RationalMap k m n X Y) (hreg : IsRegular k φ) (polys : Fin nMvPolynomial (Fin m) (AlgebraicClosure k)) (hpolys : PX, polyMapEval k m n polys P = ratMapEval k m n φ.nums φ.denoms P) :
                                                  AffineMorphism k m n X Y

                                                  Convert a regular rational map to an affine morphism, given an explicit choice of polynomials agreeing with $\varphi$ on $X$.

                                                  Instances For
                                                    theorem AffineMorphism.toRationalMap_isRegular (k : Type u_1) [Field k] {m n : } {X : Set (AffineSpace_k k m)} {Y : Set (AffineSpace_k k n)} (φ : AffineMorphism k m n X Y) :

                                                    The rational map associated to an affine morphism is regular.

                                                    theorem AffineMorphism.toRationalMap_toFun_eq (k : Type u_1) [Field k] {m n : } {X : Set (AffineSpace_k k m)} {Y : Set (AffineSpace_k k n)} (f : AffineMorphism k m n X Y) (P : AffineSpace_k k m) :

                                                    The underlying function of the rational map associated to an affine morphism agrees with that of the morphism.

                                                    def IsRegularAtPoint (k : Type u_1) [Field k] {m : } (X : Set (AffineSpace_k k m)) (num denom : MvPolynomial (Fin m) (AlgebraicClosure k)) (P : AffineSpace_k k m) :

                                                    A rational function $\mathrm{num}/\mathrm{denom}$ is regular at $P \in X$ if some equivalent representation $g/h$ has $g(P) \neq 0$, modulo the vanishing ideal of $X$.

                                                    Instances For
                                                      def RationalFunctionDom (k : Type u_1) [Field k] {m : } (X : Set (AffineSpace_k k m)) (num denom : MvPolynomial (Fin m) (AlgebraicClosure k)) :

                                                      The domain of definition of a rational function $\mathrm{num}/\mathrm{denom}$ on $X$.

                                                      Instances For
                                                        def RationalFunctionLiesInCoordinateRing (k : Type u_1) [Field k] {m : } (X : Set (AffineSpace_k k m)) (num denom : MvPolynomial (Fin m) (AlgebraicClosure k)) :

                                                        A rational function $\mathrm{num}/\mathrm{denom}$ lies in the coordinate ring of $X$ if it is congruent to a polynomial modulo the vanishing ideal.

                                                        Instances For
                                                          theorem regular_rational_function_is_polynomial (k : Type u_2) [Field k] {m : } {X : Set (AffineSpace_k k m)} (hX : IsAffineVariety k m X) (num denom : MvPolynomial (Fin m) (AlgebraicClosure k)) (_hdenom_ne_zero : denom 0) (hdenom_nonvanishing : PX, (MvPolynomial.eval P) denom 0) :
                                                          ∃ (poly : MvPolynomial (Fin m) (AlgebraicClosure k)), PX, (MvPolynomial.eval P) poly = (MvPolynomial.eval P) num / (MvPolynomial.eval P) denom

                                                          On an affine variety $X$, a rational function whose denominator vanishes nowhere on $X$ agrees pointwise with a polynomial: there is $p \in \bar{k}[X_1, \ldots, X_m]$ with $p(P) = \mathrm{num}(P)/\mathrm{denom}(P)$ for all $P \in X$.

                                                          theorem regular_rational_map_is_morphism (k : Type u_1) [Field k] {m n : } {X : Set (AffineSpace_k k m)} {Y : Set (AffineSpace_k k n)} (hX : IsAffineVariety k m X) (φ : RationalMap k m n X Y) (hreg : RationalMap.IsRegular k φ) :
                                                          ∃ (f : AffineMorphism k m n X Y), PX, AffineMorphism.toFun k f P = RationalMap.toFun k φ P

                                                          A regular rational map between affine varieties extends to an affine morphism that agrees with it pointwise on $X$.

                                                          def RationalMap.IsDominant (k : Type u_1) [Field k] {m n : } {X : Set (AffineSpace_k k m)} {Y : Set (AffineSpace_k k n)} (φ : RationalMap k m n X Y) :

                                                          A rational map $\varphi : X \dashrightarrow Y$ is dominant if its image is Zariski-dense in $Y$.

                                                          Instances For
                                                            def RationalMap.compDom (k : Type u_1) [Field k] {m n r : } {X : Set (AffineSpace_k k m)} {Y : Set (AffineSpace_k k n)} {Z : Set (AffineSpace_k k r)} (φ : RationalMap k n r Y Z) (ψ : RationalMap k m n X Y) :

                                                            The domain on which the composition $\varphi \circ \psi$ of rational maps is defined.

                                                            Instances For
                                                              def IsBirationallyEquivalent (k : Type u_1) [Field k] {m n : } (X : Set (AffineSpace_k k m)) (Y : Set (AffineSpace_k k n)) :

                                                              Two affine varieties $X, Y$ are birationally equivalent if there exist dominant rational maps $\varphi : X \dashrightarrow Y$ and $\psi : Y \dashrightarrow X$ that are mutually inverse where both compositions are defined.

                                                              Instances For
                                                                def IsStrictVarietyChain (k : Type u_1) [Field k] {n : } (V : Set (AffineSpace_k k n)) (d : ) (chain : Fin (d + 1)Set (AffineSpace_k k n)) :

                                                                A strict chain $V_0 \subsetneq V_1 \subsetneq \cdots \subsetneq V_d = V$ of affine subvarieties of $V$.

                                                                Instances For
                                                                  noncomputable def geometricDim (k : Type u_1) [Field k] {n : } (V : Set (AffineSpace_k k n)) :

                                                                  The geometric dimension of an affine variety $V$ is the supremum of $d$ for which there exists a strict chain of affine subvarieties of length $d$ ending at $V$.

                                                                  Instances For