A homogeneous representative of a projective regular function: a pair of homogeneous polynomials $(\text{num}, \text{den})$ of the same degree on $\mathbb{P}^n$, with $\text{den} \neq 0$, representing the rational function $\text{num}/\text{den}$.
- num : MvPolynomial (Fin (n + 1)) k
- den : MvPolynomial (Fin (n + 1)) k
- deg : ℕ
- num_homog : self.num.IsHomogeneous self.deg
- den_homog : self.den.IsHomogeneous self.deg
Instances For
A homogeneous representative is defined at a projective point $P$ if its denominator does not vanish at $P$.
Instances For
Evaluate a homogeneous representative $\text{num}/\text{den}$ at a projective point $P$. Well-defined when the denominator is nonzero.
Instances For
Two homogeneous representatives are equivalent on a set $X$ iff $\text{num}_1 \cdot \text{den}_2 - \text{num}_2 \cdot \text{den}_1$ vanishes on $X$ (i.e., they define the same rational function on $X$).
Instances For
Reflexivity: any homogeneous representative is equivalent to itself on $X$.
Symmetry of equivOn: if $r_1 \sim r_2$ on $X$ then $r_2 \sim r_1$ on $X$.
Transitivity of equivOn, using primality of the vanishing ideal of $X$ (an irreducibility hypothesis) plus a nondegeneracy condition on $r_2$.
Axiom: the vanishing ideal of a projective variety $X$ is prime — if $pq$ vanishes on $X$, then $p$ vanishes on $X$ or $q$ does. Used implicitly throughout for irreducibility arguments.
Cleaner transitivity statement: on a projective variety $X$, equivOn is transitive (the irreducibility hypothesis is inherited from the variety).
Two equivalent homogeneous representatives evaluate to the same value at any common point of definition.
A projective rational function on a set $X \subseteq \mathbb{P}^n_k$: an equivalence class of homogeneous representatives, packaged as a maximal nonempty set of mutually equivalent HomogeneousReps.
- reps : Set (HomogeneousRep n k)
- reps_equiv (r₁ : HomogeneousRep n k) : r₁ ∈ self.reps → ∀ r₂ ∈ self.reps, HomogeneousRep.equivOn k r₁ r₂ X
- reps_maximal (r : HomogeneousRep n k) : (∃ r₀ ∈ self.reps, HomogeneousRep.equivOn k r r₀ X) → r ∈ self.reps
Instances For
The denominator of any representative of a projective rational function does not vanish identically on $X$ (else the function would be undefined everywhere).
A projective rational function is regular at a point $P \in X$ iff some representative is defined at $P$.
Instances For
The regular domain (locus of regularity) of a projective rational function: all points of $X$ where some representative is defined.
Instances For
Unfolding lemma: $P$ is in the regular domain of $r$ iff $P \in X$ and $r$ is regular at $P$.
Evaluate a projective rational function $r$ at a point $P$ in its regular domain by choosing any representative defined at $P$ and evaluating it.
Instances For
The value of $r$ at $P$ agrees with the value computed from any representative defined at $P$.
A tuple representative of a rational map $X \dashrightarrow Y$ between projective varieties: an $(n+1)$-tuple of homogeneous polynomials of common degree, not all vanishing on $X$, whose evaluation lands in $Y$ (as a projective point).
- polys : Fin (n + 1) → MvPolynomial (Fin (m + 1)) k
- deg : ℕ
- polys_homog (i : Fin (n + 1)) : (self.polys i).IsHomogeneous self.deg
- image_in_Y (P : Projectivization k (Fin (m + 1) → k)) : P ∈ X → (∃ (i : Fin (n + 1)), (MvPolynomial.eval P.rep) (self.polys i) ≠ 0) → ∀ (f : MvPolynomial (Fin (n + 1)) k), (∀ Q ∈ Y, (MvPolynomial.eval Q.rep) f = 0) → (MvPolynomial.eval fun (j : Fin (n + 1)) => (MvPolynomial.eval P.rep) (self.polys j)) f = 0
Instances For
A tuple representative is defined at $P$ iff at least one coordinate polynomial is nonzero at $P$.
Instances For
The vector of values $(\varphi_0(P), \dots, \varphi_n(P))$ of a tuple representative at $P$.
Instances For
Two tuple representatives are equivalent on $X$ iff $\varphi_i \psi_j - \varphi_j \psi_i$ vanishes on $X$ for all $i, j$ (i.e., they define the same projective point at every point of $X$).
Instances For
Reflexivity of tuple equivalence.
Symmetry of tuple equivalence.
Transitivity of tuple equivalence on $X$, using primality of the vanishing ideal plus a nondegeneracy hypothesis on $\psi$.
Cleaner transitivity statement: on a projective variety $X$, equivOn is transitive (using primality of the vanishing ideal).
A projective rational map $X \dashrightarrow Y$: an equivalence class of RationalMapTupleReps, packaged as a maximal nonempty equivalence class.
- reps : Set (RationalMapTupleRep m n k X Y)
- reps_equiv (φ₁ : RationalMapTupleRep m n k X Y) : φ₁ ∈ self.reps → ∀ φ₂ ∈ self.reps, RationalMapTupleRep.equivOn k φ₁ φ₂
- reps_maximal (φ : RationalMapTupleRep m n k X Y) : (∃ φ₀ ∈ self.reps, RationalMapTupleRep.equivOn k φ φ₀) → φ ∈ self.reps
Instances For
A projective rational map is regular at $P \in X$ iff some representative is defined at $P$.
Instances For
The regular domain of a projective rational map: the locus of points of $X$ where it is regular.
Instances For
Unfolding lemma: $P$ is in the regular domain of $\varphi$ iff $P \in X$ and $\varphi$ is regular at $P$.
A projective rational map is a morphism iff it is regular at every point of its domain $X$.
Instances For
A projective morphism $X \to Y$: a projective rational map that is regular everywhere on $X$.
- toRatMap : ProjectiveRationalMap m n k X Y
- is_morphism : ProjectiveRationalMap.IsMorphism k self.toRatMap
Instances For
The image of a projective rational map $\varphi: X \dashrightarrow Y$: points $Q \in Y$ that arise as $\varphi(P)$ for some $P$ in the regular domain.
Instances For
$S$ is Zariski-dense in $Y$ iff any polynomial vanishing on $S$ also vanishes on $Y$ (i.e., $S$'s Zariski closure contains $Y$).
Instances For
A projective rational map $\varphi: X \dashrightarrow Y$ is dominant iff its image is Zariski-dense in $Y$.
Instances For
Evaluation commutes with bind₁: evaluating $\text{bind}_1 f\, p$ at $v$ equals evaluating $p$ at the vector $i \mapsto \text{eval}\, v\, (f\, i)$.
If $p$ is homogeneous of degree $d_p$ and each $f_i$ is homogeneous of degree $d_f$, then $\text{bind}_1 f\, p$ is homogeneous of degree $d_f \cdot d_p$.
The pullback of a polynomial that doesn't vanish identically on $Y$ via a dominant rational map is nonzero: a key nondegeneracy fact for defining the pullback ring homomorphism.
Construct the pullback of a homogeneous representative on $Y$ via a dominant rational map $\varphi: X \dashrightarrow Y$: composition of the rational function with $\varphi$ yields a new homogeneous representative on $X$.
Instances For
The pullback of projective rational functions along a dominant rational map: $\varphi^*: k(Y) \to k(X)$, sending $r$ to its composition with $\varphi$.
Instances For
Scaling lemma for homogeneous polynomials: if $p$ is homogeneous of degree $d$, then $p(c \cdot v) = c^d \cdot p(v)$.
Compatibility: for $P \in X$ in the regular domain of $\varphi^* r$, there is a corresponding $Q = \varphi(P) \in Y$ in the regular domain of $r$ such that $(\varphi^* r)(P) = r(Q)$.
Extensionality for projective rational functions: two projective rational functions on $X$ are equal iff they agree at every common point of their regular domains.
Pullback respects equality of projective rational functions: $r_1 = r_2$ (in the evaluation sense) implies $\varphi^* r_1 = \varphi^* r_2$.
Pullback is multiplicative on values: if $r_1 r_2 = r_{1 \cdot 2}$ (pointwise on $Y$) then $\varphi^*(r_{1 \cdot 2}) = \varphi^* r_1 \cdot \varphi^* r_2$ (pointwise on $X$).
Pullback is additive on values: if $r_1 + r_2 = r_{1+2}$ (pointwise on $Y$) then $\varphi^*(r_{1+2}) = \varphi^* r_1 + \varphi^* r_2$ (pointwise on $X$).
Pullback preserves constants: if $r$ has constant value $c$ on $Y$, then $\varphi^* r$ has the same constant value $c$ on $X$.
A function-field homomorphism $k(Y) \to k(X)$ as data: a map on ProjectiveRatFun that is well-defined modulo equality of evaluations and that preserves the field structure (addition, multiplication, constants) in the pointwise evaluation sense.
- toFun : ProjectiveRegularFunction.ProjectiveRatFun n k Y → ProjectiveRegularFunction.ProjectiveRatFun m k X
- map_eq (r₁ r₂ : ProjectiveRegularFunction.ProjectiveRatFun n k Y) : (∀ P ∈ Y, ∀ (hP₁ : P ∈ ProjectiveRegularFunction.ProjectiveRatFun.regularDomain k r₁) (hP₂ : P ∈ ProjectiveRegularFunction.ProjectiveRatFun.regularDomain k r₂), ProjectiveRegularFunction.ProjectiveRatFun.evalAt k r₁ P hP₁ = ProjectiveRegularFunction.ProjectiveRatFun.evalAt k r₂ P hP₂) → self.toFun r₁ = self.toFun r₂
- map_mul_eval (r₁ r₂ r₁r₂ : ProjectiveRegularFunction.ProjectiveRatFun n k Y) : (∀ P ∈ Y, ∀ (hP₁ : P ∈ ProjectiveRegularFunction.ProjectiveRatFun.regularDomain k r₁) (hP₂ : P ∈ ProjectiveRegularFunction.ProjectiveRatFun.regularDomain k r₂) (hP₁₂ : P ∈ ProjectiveRegularFunction.ProjectiveRatFun.regularDomain k r₁r₂), ProjectiveRegularFunction.ProjectiveRatFun.evalAt k r₁r₂ P hP₁₂ = ProjectiveRegularFunction.ProjectiveRatFun.evalAt k r₁ P hP₁ * ProjectiveRegularFunction.ProjectiveRatFun.evalAt k r₂ P hP₂) → ∀ P ∈ X, ∀ (hPθ₁ : P ∈ ProjectiveRegularFunction.ProjectiveRatFun.regularDomain k (self.toFun r₁)) (hPθ₂ : P ∈ ProjectiveRegularFunction.ProjectiveRatFun.regularDomain k (self.toFun r₂)) (hPθ₁₂ : P ∈ ProjectiveRegularFunction.ProjectiveRatFun.regularDomain k (self.toFun r₁r₂)), ProjectiveRegularFunction.ProjectiveRatFun.evalAt k (self.toFun r₁r₂) P hPθ₁₂ = ProjectiveRegularFunction.ProjectiveRatFun.evalAt k (self.toFun r₁) P hPθ₁ * ProjectiveRegularFunction.ProjectiveRatFun.evalAt k (self.toFun r₂) P hPθ₂
- map_add_eval (r₁ r₂ r₁r₂ : ProjectiveRegularFunction.ProjectiveRatFun n k Y) : (∀ P ∈ Y, ∀ (hP₁ : P ∈ ProjectiveRegularFunction.ProjectiveRatFun.regularDomain k r₁) (hP₂ : P ∈ ProjectiveRegularFunction.ProjectiveRatFun.regularDomain k r₂) (hP₁₂ : P ∈ ProjectiveRegularFunction.ProjectiveRatFun.regularDomain k r₁r₂), ProjectiveRegularFunction.ProjectiveRatFun.evalAt k r₁r₂ P hP₁₂ = ProjectiveRegularFunction.ProjectiveRatFun.evalAt k r₁ P hP₁ + ProjectiveRegularFunction.ProjectiveRatFun.evalAt k r₂ P hP₂) → ∀ P ∈ X, ∀ (hPθ₁ : P ∈ ProjectiveRegularFunction.ProjectiveRatFun.regularDomain k (self.toFun r₁)) (hPθ₂ : P ∈ ProjectiveRegularFunction.ProjectiveRatFun.regularDomain k (self.toFun r₂)) (hPθ₁₂ : P ∈ ProjectiveRegularFunction.ProjectiveRatFun.regularDomain k (self.toFun r₁r₂)), ProjectiveRegularFunction.ProjectiveRatFun.evalAt k (self.toFun r₁r₂) P hPθ₁₂ = ProjectiveRegularFunction.ProjectiveRatFun.evalAt k (self.toFun r₁) P hPθ₁ + ProjectiveRegularFunction.ProjectiveRatFun.evalAt k (self.toFun r₂) P hPθ₂
- map_const_eval (c : k) (const_c : ProjectiveRegularFunction.ProjectiveRatFun n k Y) : (∀ P ∈ Y, ∀ (hP : P ∈ ProjectiveRegularFunction.ProjectiveRatFun.regularDomain k const_c), ProjectiveRegularFunction.ProjectiveRatFun.evalAt k const_c P hP = c) → ∀ P ∈ X, ∀ (hP : P ∈ ProjectiveRegularFunction.ProjectiveRatFun.regularDomain k (self.toFun const_c)), ProjectiveRegularFunction.ProjectiveRatFun.evalAt k (self.toFun const_c) P hP = c
Instances For
The projective rational function on $Y \subseteq \mathbb{P}^n$ given by the $i$-th coordinate $x_i/x_0$.
Instances For
The chosen homogeneous representative of $\theta(x_i/x_0) \in k(X)$ given a function-field homomorphism $\theta: k(Y) \to k(X)$.
Instances For
The common degree shared by all the induced polynomials: the sum of the degrees of the coordinate representatives. Used to put all $\theta(x_i/x_0)$ on a common denominator.
Instances For
The $i$-th coordinate polynomial of the projective map induced by $\theta$: the $i$-th numerator times the product of all other denominators (clearing denominators to common degree).
Instances For
Each induced polynomial is homogeneous of the common induced degree.
The induced polynomials are not all vanishing on $X$: at some point $P \in X$ and some coordinate $i$, the induced polynomial is nonzero.
The induced polynomials land in $Y$: for any $P \in X$ where they don't all vanish, the resulting point $(\text{inducedPoly}_j(P))_j$ lies on the projective variety $Y$.
Given a function-field homomorphism $\theta: k(Y) \to k(X)$, construct the corresponding projective rational map $X \dashrightarrow Y$ using the induced coordinate polynomials.
Instances For
The projective rational map induced by a function-field homomorphism is automatically dominant.
Package the pullback of a dominant rational map together with its compatibility with addition, multiplication, constants, and equality into a ProjectiveFunctionFieldHom.
Instances For
The toFun of the packaged pullback hom is the underlying pullback map.
Theorem 15.18, part (iii) — functoriality of the pullback: $(\psi \circ \varphi)^* = \varphi^* \circ \psi^*$ on projective rational functions, under a compatibility hypothesis between the compositional and direct representatives.
Corollary 15.9, projective roundtrip for maps: starting from a dominant rational map $\varphi$, taking the pullback hom, then re-inducing a projective map recovers an equivalent map (same tuple-class).
Key compatibility: the pullback of the projective map induced by a function-field hom $\theta$ agrees pointwise with $\theta$ on values.
Corollary 15.9, projective roundtrip for morphisms: starting from a function-field hom $\theta$, inducing the projective map and pulling back recovers $\theta$ exactly.
Bundles the contravariant equivalence between dominant projective rational maps $X \dashrightarrow Y$ and function-field homomorphisms $k(Y) \to k(X)$: a pullback in one direction, an induced map in the other, plus the two roundtrip identities and a functoriality compatibility.
- pullback (φ : ProjectiveRatMap.ProjectiveRationalMap m n k X Y) : ProjectiveRatMap.ProjectiveRationalMap.IsDominant k φ → ProjectiveFunctionFieldHom m n k X Y
- inducedMap : ProjectiveFunctionFieldHom m n k X Y → { φ : ProjectiveRatMap.ProjectiveRationalMap m n k X Y // ProjectiveRatMap.ProjectiveRationalMap.IsDominant k φ }
- roundtrip_maps (φ : ProjectiveRatMap.ProjectiveRationalMap m n k X Y) (hdom : ProjectiveRatMap.ProjectiveRationalMap.IsDominant k φ) : let φ' := ↑(self.inducedMap (self.pullback φ hdom)); ∀ rep₁ ∈ φ.reps, ∀ rep₂ ∈ φ'.reps, ProjectiveRatMap.RationalMapTupleRep.equivOn k rep₁ rep₂
- roundtrip_morphisms (θ : ProjectiveFunctionFieldHom m n k X Y) : let φ := ↑(self.inducedMap θ); let hdom := ⋯; ∀ (r : ProjectiveRegularFunction.ProjectiveRatFun n k Y), (self.pullback φ hdom).toFun r = θ.toFun r
- functorial {l : ℕ} {Z : Set (Projectivization k (Fin (l + 1) → k))} (φ : ProjectiveRatMap.ProjectiveRationalMap m n k X Y) (ψ : ProjectiveRatMap.ProjectiveRationalMap n l k Y Z) (hdomφ : ProjectiveRatMap.ProjectiveRationalMap.IsDominant k φ) (hdomψ : ProjectiveRatMap.ProjectiveRationalMap.IsDominant k ψ) (ψφ : ProjectiveRatMap.ProjectiveRationalMap m l k X Z) (hdomψφ : ProjectiveRatMap.ProjectiveRationalMap.IsDominant k ψφ) (hcomp : ∀ P ∈ X, ∀ repφ ∈ φ.reps, ∀ repψ ∈ ψ.reps, ∀ repψφ ∈ ψφ.reps, ProjectiveRatMap.RationalMapTupleRep.isDefinedAt k repφ P → ProjectiveRatMap.RationalMapTupleRep.isDefinedAt k repψφ P → ∀ (i j : Fin (l + 1)), ProjectiveRatMap.RationalMapTupleRep.evalVec k repψφ P i * (MvPolynomial.eval (ProjectiveRatMap.RationalMapTupleRep.evalVec k repφ P)) (repψ.polys j) = ProjectiveRatMap.RationalMapTupleRep.evalVec k repψφ P j * (MvPolynomial.eval (ProjectiveRatMap.RationalMapTupleRep.evalVec k repφ P)) (repψ.polys i)) (r : ProjectiveRegularFunction.ProjectiveRatFun l k Z) : dominantProjectiveRationalMapPullback k ψφ hdomψφ r = dominantProjectiveRationalMapPullback k φ hdomφ (dominantProjectiveRationalMapPullback k ψ hdomψ r)
Instances For
Theorem 15.18: For projective varieties $X, Y$ over an algebraically closed field $k$, there is a contravariant equivalence between dominant projective rational maps $X \dashrightarrow Y$ and $k$-algebra homomorphisms $k(Y) \to k(X)$.