Documentation

Atlas.ArithmeticGeometry.code.Conics

theorem holzer_theorem (a b c : ) (ha : Squarefree a) (hb : Squarefree b) (hc : Squarefree c) (hab : IsCoprime a b) (hac : IsCoprime a c) (hbc : IsCoprime b c) (hrat : ∃ (x : ) (y : ) (z : ), (x 0 y 0 z 0) a * x ^ 2 + b * y ^ 2 + c * z ^ 2 = 0) :
∃ (x₀ : ) (y₀ : ) (z₀ : ), (x₀ 0 y₀ 0 z₀ 0) a * x₀ ^ 2 + b * y₀ ^ 2 + c * z₀ ^ 2 = 0 x₀ ^ 2 |b * c| y₀ ^ 2 |a * c| z₀ ^ 2 |a * b|

Holzer's theorem (Theorem 2.5): if the ternary diagonal form $ax^2 + by^2 + cz^2 = 0$ has a nontrivial rational solution (with $a, b, c$ pairwise coprime and squarefree), then it has an integer solution bounded by $x_0^2 \leq |bc|$, $y_0^2 \leq |ac|$, $z_0^2 \leq |ab|$.

theorem ternary_isIsotropic_iff (w : Fin 3) :
QuadraticMap.IsIsotropic (diagQuadForm 3 w) ∃ (x : ) (y : ) (z : ), ¬(x = 0 y = 0 z = 0) w 0 * x ^ 2 + w 1 * y ^ 2 + w 2 * z ^ 2 = 0

A diagonal ternary quadratic form $w_0 x^2 + w_1 y^2 + w_2 z^2$ is isotropic over $\mathbb{Q}$ iff there is a nontrivial rational solution $(x, y, z)$ with $w_0 x^2 + w_1 y^2 + w_2 z^2 = 0$.

theorem legendre_real_isotropic (a b c : ) (hsign : ¬(0 < a 0 < b 0 < c) ¬(a < 0 b < 0 c < 0)) :

Real isotropy for Legendre: the diagonal form $ax^2 + by^2 + cz^2$ has a nontrivial real solution iff $a, b, c$ do not all have the same sign.

theorem neg_product_has_padic_sqrt_of_cong (u v w : ) (p : ) [hp : Fact (Nat.Prime p)] (hcop_wu : IsCoprime w u) (hcop_wv : IsCoprime w v) (hcong : ∃ (x : ), x ^ 2 -(u * v) [ZMOD w]) (hdvd : p w) (hodd : p 2) :
∃ (t : ℚ_[p]), t ^ 2 = -((algebraMap ℚ_[p]) u * (algebraMap ℚ_[p]) v)

Hensel-lifting square root: if $-uv$ is a square mod $w$, and an odd prime $p$ divides $w$ but not $u, v$, then $-uv$ is a square in $\mathbb{Q}_p$.

theorem algebraMap_intCast_ne_zero' {p : } [Fact (Nat.Prime p)] (n : ) (hn : n 0) :

A nonzero integer maps to a nonzero element of $\mathbb{Q}_p$.

theorem eval_diagQuadFormOver_3 {p : } [Fact (Nat.Prime p)] (q₀ q₁ q₂ : ) (v₀ v₁ v₂ : ℚ_[p]) (h : (algebraMap ℚ_[p]) q₀ * (v₀ * v₀) + (algebraMap ℚ_[p]) q₁ * (v₁ * v₁) + (algebraMap ℚ_[p]) q₂ * (v₂ * v₂) = 0) :
(diagQuadFormOver ℚ_[p] 3 ![q₀, q₁, q₂]) ![v₀, v₁, v₂] = 0

Unfolding the ternary diagonal quadratic form over $\mathbb{Q}_p$ at the vector $(v_0, v_1, v_2)$ in terms of the underlying multiplication expression.

theorem legendre_padic_isotropic_at_dividing_prime (a b c : ) (ha : Squarefree a) (hb : Squarefree b) (hc : Squarefree c) (hab : IsCoprime a b) (hac : IsCoprime a c) (hbc : IsCoprime b c) (hX : ∃ (X : ), X ^ 2 -b * c [ZMOD a]) (hY : ∃ (Y : ), Y ^ 2 -c * a [ZMOD b]) (hZ : ∃ (Z : ), Z ^ 2 -a * b [ZMOD c]) (p : ) [Fact (Nat.Prime p)] (hdvd : p a p b p c) (hp_odd : p 2) :

$p$-adic isotropy at an odd prime $p$ dividing one of $a, b, c$: Legendre's congruence conditions imply isotropy over $\mathbb{Q}_p$.

theorem odd_mixed_sign_2adic_isotropic_ax (a b c : ) (ha_odd : ¬2 a) (hb_odd : ¬2 b) (hc_odd : ¬2 c) (hsign : ¬(0 < a 0 < b 0 < c) ¬(a < 0 b < 0 c < 0)) (hc_sf : Squarefree c) (hab : IsCoprime a b) (hac : IsCoprime a c) (hbc : IsCoprime b c) (hX : ∃ (X : ), X ^ 2 -b * c [ZMOD a]) [Fact (Nat.Prime 2)] :

Axiomatized $2$-adic isotropy when all three coefficients are odd and have mixed signs: under the congruence and coprimality hypotheses, the form is isotropic over $\mathbb{Q}_2$.

theorem legendre_padic_isotropic_at_two_ax (a b c : ) (ha : Squarefree a) (hb : Squarefree b) (hc : Squarefree c) (hab : IsCoprime a b) (hac : IsCoprime a c) (hbc : IsCoprime b c) (hX : ∃ (X : ), X ^ 2 -b * c [ZMOD a]) (hY : ∃ (Y : ), Y ^ 2 -c * a [ZMOD b]) (hZ : ∃ (Z : ), Z ^ 2 -a * b [ZMOD c]) (hsign : ¬(0 < a 0 < b 0 < c) ¬(a < 0 b < 0 c < 0)) [Fact (Nat.Prime 2)] :

Axiomatized $2$-adic isotropy in the Legendre setting: under all of Legendre's hypotheses, the form is isotropic over $\mathbb{Q}_2$.

theorem legendre_padic_isotropic_at_two (a b c : ) (ha : Squarefree a) (hb : Squarefree b) (hc : Squarefree c) (hab : IsCoprime a b) (hac : IsCoprime a c) (hbc : IsCoprime b c) (hX : ∃ (X : ), X ^ 2 -b * c [ZMOD a]) (hY : ∃ (Y : ), Y ^ 2 -c * a [ZMOD b]) (hZ : ∃ (Z : ), Z ^ 2 -a * b [ZMOD c]) (hsign : ¬(0 < a 0 < b 0 < c) ¬(a < 0 b < 0 c < 0)) [Fact (Nat.Prime 2)] :

$2$-adic isotropy in the Legendre setting (wrapper around the axiomatized version).

theorem legendre_padic_isotropic (a b c : ) (ha : Squarefree a) (hb : Squarefree b) (hc : Squarefree c) (hab : IsCoprime a b) (hac : IsCoprime a c) (hbc : IsCoprime b c) (hX : ∃ (X : ), X ^ 2 -b * c [ZMOD a]) (hY : ∃ (Y : ), Y ^ 2 -c * a [ZMOD b]) (hZ : ∃ (Z : ), Z ^ 2 -a * b [ZMOD c]) (hsign : ¬(0 < a 0 < b 0 < c) ¬(a < 0 b < 0 c < 0)) (p : ) [Fact (Nat.Prime p)] :

Full $p$-adic isotropy in the Legendre setting: assuming all of Legendre's congruence and sign hypotheses, the form is isotropic over every $\mathbb{Q}_p$.

theorem legendre_necessity_mod_sq_aux (a b c : ) (ha : Squarefree a) (hac : IsCoprime a c) (n : ) (P Q R : ) :
P.natAbs + Q.natAbs + R.natAbs = n¬(P = 0 Q = 0 R = 0) → a * P ^ 2 + b * Q ^ 2 + c * R ^ 2 = 0∃ (X : ), X ^ 2 -b * c [ZMOD a]

Auxiliary necessity lemma: from a nontrivial integer solution to $aP^2 + bQ^2 + cR^2 = 0$ (with $a$ squarefree, $\gcd(a, c) = 1$) one extracts an integer $X$ with $X^2 \equiv -bc \pmod{a}$. Proved by strong induction on $|P| + |Q| + |R|$, descending via prime factors.

theorem legendre_necessity (a b c : ) (ha : Squarefree a) (hb : Squarefree b) (hc : Squarefree c) (hab : IsCoprime a b) (hac : IsCoprime a c) (hbc : IsCoprime b c) (x y z : ) (hne : ¬(x = 0 y = 0 z = 0)) (heq : a * x ^ 2 + b * y ^ 2 + c * z ^ 2 = 0) :
(∃ (X : ), X ^ 2 -b * c [ZMOD a]) (∃ (Y : ), Y ^ 2 -c * a [ZMOD b]) ∃ (Z : ), Z ^ 2 -a * b [ZMOD c]

Necessity direction of Legendre's theorem: a nontrivial rational solution to $ax^2 + by^2 + cz^2 = 0$ implies the three congruence conditions (clearing denominators reduces to the auxiliary lemma).

theorem legendre_theorem (a b c : ) (ha : Squarefree a) (hb : Squarefree b) (hc : Squarefree c) (hab : IsCoprime a b) (hac : IsCoprime a c) (hbc : IsCoprime b c) (hsign : ¬(0 < a 0 < b 0 < c) ¬(a < 0 b < 0 c < 0)) :
(∃ (x : ) (y : ) (z : ), ¬(x = 0 y = 0 z = 0) a * x ^ 2 + b * y ^ 2 + c * z ^ 2 = 0) (∃ (X : ), X ^ 2 -b * c [ZMOD a]) (∃ (Y : ), Y ^ 2 -c * a [ZMOD b]) ∃ (Z : ), Z ^ 2 -a * b [ZMOD c]

Legendre's theorem (Theorem 2.6): for squarefree pairwise coprime integers $a, b, c$ with mixed signs, the equation $ax^2 + by^2 + cz^2 = 0$ has a nontrivial rational solution iff $-bc$ is a square mod $a$, $-ca$ is a square mod $b$, and $-ab$ is a square mod $c$.

@[reducible]

In a field $K$ with $\operatorname{char}(K) \neq 2$, the element $2$ is invertible.

Instances For

    A quadratic form $Q$ is geometrically irreducible if its associated bilinear form is left-nondegenerate (separating). This makes the associated conic absolutely irreducible.

    Instances For
      def generalConicQuadForm {K : Type u_1} [Field K] (a b c d e f : K) :
      QuadraticForm K (Fin 3K)

      The quadratic form $ax^2 + by^2 + cz^2 + dxy + exz + fyz$ on $K^3$, encoded as the matrix $\begin{pmatrix} a & d/2 & e/2 \\ d/2 & b & f/2 \\ e/2 & f/2 & c \end{pmatrix}$.

      Instances For
        theorem general_conic_diagonalizes_units {K : Type u_1} [Field K] [Invertible 2] (a b c d e f : K) (hnd : LinearMap.SeparatingLeft (QuadraticMap.associated (generalConicQuadForm a b c d e f))) :
        ∃ (w : Fin (Module.finrank K (Fin 3K))Kˣ), QuadraticMap.Equivalent (generalConicQuadForm a b c d e f) (QuadraticMap.weightedSumSquares K fun (i : Fin (Module.finrank K (Fin 3K))) => (w i))

        Theorem 2.1 (diagonalization): any nondegenerate general conic over a field with $\operatorname{char} \neq 2$ is equivalent to a diagonal weighted sum of squares with nonzero (unit) coefficients.

        def generalConicForm {K : Type u_1} [Field K] (a b c d e f : K) :
        QuadraticForm K (Fin 3K)

        Alias for generalConicQuadForm: the general ternary quadratic form $ax^2 + by^2 + cz^2 + dxy + exz + fyz$.

        Instances For
          def stereoForward {K : Type u_2} [Field K] (a b x₀ y₀ z₀ U V : K) :
          Fin 3K

          Stereographic projection (forward map): given a base point $(x_0, y_0, z_0)$ on the diagonal conic $aX^2 + bY^2 + cZ^2 = 0$, this maps $(U, V) \in \mathbb{P}^1$ to a point on the conic via a quadratic formula.

          Instances For
            def stereoBackward {K : Type u_2} [Field K] (x₀ y₀ z₀ : K) (v : Fin 3K) :
            Fin 2K

            Stereographic projection (backward map): given a point $v = (X, Y, Z)$ on the conic, projects from the base point $(x_0, y_0, z_0)$ to a point in $\mathbb{P}^1$.

            Instances For
              theorem stereoForward_on_conic {K : Type u_2} [Field K] (a b c x₀ y₀ z₀ U V : K) (hpt : a * x₀ ^ 2 + b * y₀ ^ 2 + c * z₀ ^ 2 = 0) :
              a * stereoForward a b x₀ y₀ z₀ U V 0 ^ 2 + b * stereoForward a b x₀ y₀ z₀ U V 1 ^ 2 + c * stereoForward a b x₀ y₀ z₀ U V 2 ^ 2 = 0

              The stereographic forward map indeed lands on the conic: $a \cdot \varphi_0^2 + b \cdot \varphi_1^2 + c \cdot \varphi_2^2 = 0$.

              theorem stereo_bwd_fwd_0 {K : Type u_2} [Field K] (a b x₀ y₀ z₀ U V : K) :
              stereoBackward x₀ y₀ z₀ (stereoForward a b x₀ y₀ z₀ U V) 0 = 2 * z₀ * (a * x₀ * U + b * y₀ * V) * U

              Composition identity (0-th coordinate): the back-then-forward of $(U, V)$ scales $U$ by the linear factor $2 z_0 (a x_0 U + b y_0 V)$.

              theorem stereo_bwd_fwd_1 {K : Type u_2} [Field K] (a b x₀ y₀ z₀ U V : K) :
              stereoBackward x₀ y₀ z₀ (stereoForward a b x₀ y₀ z₀ U V) 1 = 2 * z₀ * (a * x₀ * U + b * y₀ * V) * V

              Composition identity (1st coordinate): the back-then-forward of $(U, V)$ scales $V$ by the same linear factor $2 z_0 (a x_0 U + b y_0 V)$.

              theorem stereo_fwd_bwd_0 {K : Type u_2} [Field K] (a b c x₀ y₀ z₀ x y z : K) (hpt : a * x₀ ^ 2 + b * y₀ ^ 2 + c * z₀ ^ 2 = 0) (honC : a * x ^ 2 + b * y ^ 2 + c * z ^ 2 = 0) :
              stereoForward a b x₀ y₀ z₀ (x * z₀ - x₀ * z) (y * z₀ - y₀ * z) 0 = 2 * z₀ ^ 2 * (a * x₀ * x + b * y₀ * y + c * z₀ * z) * x

              Composition identity (forward-then-backward, 0-th coordinate): the forward image of the backward projection of a point $(x, y, z)$ on the conic returns $x$ scaled by the bilinear pairing factor.

              theorem stereo_fwd_bwd_1 {K : Type u_2} [Field K] (a b c x₀ y₀ z₀ x y z : K) (hpt : a * x₀ ^ 2 + b * y₀ ^ 2 + c * z₀ ^ 2 = 0) (honC : a * x ^ 2 + b * y ^ 2 + c * z ^ 2 = 0) :
              stereoForward a b x₀ y₀ z₀ (x * z₀ - x₀ * z) (y * z₀ - y₀ * z) 1 = 2 * z₀ ^ 2 * (a * x₀ * x + b * y₀ * y + c * z₀ * z) * y

              Composition identity (forward-then-backward, 1st coordinate): analogous to the 0-th coordinate version, scaling $y$ by the same factor.

              theorem stereo_fwd_bwd_2 {K : Type u_2} [Field K] (a b c x₀ y₀ z₀ x y z : K) (hpt : a * x₀ ^ 2 + b * y₀ ^ 2 + c * z₀ ^ 2 = 0) (honC : a * x ^ 2 + b * y ^ 2 + c * z ^ 2 = 0) :
              stereoForward a b x₀ y₀ z₀ (x * z₀ - x₀ * z) (y * z₀ - y₀ * z) 2 = 2 * z₀ ^ 2 * (a * x₀ * x + b * y₀ * y + c * z₀ * z) * z

              Composition identity (forward-then-backward, 2nd coordinate): scales $z$ by the same factor.

              theorem stereoForward_smul {K : Type u_2} [Field K] (a b x₀ y₀ z₀ t U V : K) (i : Fin 3) :
              stereoForward a b x₀ y₀ z₀ (t * U) (t * V) i = t ^ 2 * stereoForward a b x₀ y₀ z₀ U V i

              Quadratic homogeneity: scaling the input $(U, V)$ by $t$ scales the stereographic forward map by $t^2$ (so it descends to projective space).

              def bilinScalar {K : Type u_2} [Field K] (a b c x₀ y₀ z₀ x y z : K) :
              K

              The bilinear pairing $\langle (x_0, y_0, z_0), (x, y, z) \rangle = a x_0 x + b y_0 y + c z_0 z$ associated to the diagonal conic; encodes the polarization of the quadratic form.

              Instances For
                theorem aux_u_eq_zero {K : Type u_2} [Field K] {a b c x₀ y₀ z₀ u v : K} (ha : a 0) (hb : b 0) (hc : c 0) (hz₀ : z₀ 0) (h2ne : 2 0) (hpt : a * x₀ ^ 2 + b * y₀ ^ 2 + c * z₀ ^ 2 = 0) (h1 : a * u ^ 2 + b * v ^ 2 = 0) (h2 : a * x₀ * u ^ 2 + 2 * b * y₀ * u * v - b * x₀ * v ^ 2 = 0) :
                u = 0

                Auxiliary: if both $au^2 + bv^2 = 0$ and a related polynomial vanish (with the standard nondegeneracy hypotheses), then $u = 0$. Used in bilinScalar_zero_iff_proportional.

                theorem bilinScalar_zero_iff_proportional {K : Type u_2} [Field K] (a b c x₀ y₀ z₀ x y z : K) (ha : a 0) (hb : b 0) (hc : c 0) (hz₀ : z₀ 0) (h2ne : 2 0) (hpt : a * x₀ ^ 2 + b * y₀ ^ 2 + c * z₀ ^ 2 = 0) (honC : a * x ^ 2 + b * y ^ 2 + c * z ^ 2 = 0) (hne : (x, y, z) (0, 0, 0)) (hscalar : bilinScalar a b c x₀ y₀ z₀ x y z = 0) :
                ∃ (t : K), x = t * x₀ y = t * y₀ z = t * z₀

                Tangent line criterion: a nonzero point $(x, y, z)$ on the diagonal conic with $\langle p_0, p \rangle = 0$ (i.e., on the tangent line at $p_0$) must be proportional to $p_0 = (x_0, y_0, z_0)$.

                theorem conic_P1_isomorphism {K : Type u_2} [Field K] (a b c x₀ y₀ z₀ : K) (ha : a 0) (hb : b 0) (hc : c 0) (hz₀ : z₀ 0) (h2ne : 2 0) (hpt : a * x₀ ^ 2 + b * y₀ ^ 2 + c * z₀ ^ 2 = 0) :
                (∀ (U V : K), a * stereoForward a b x₀ y₀ z₀ U V 0 ^ 2 + b * stereoForward a b x₀ y₀ z₀ U V 1 ^ 2 + c * stereoForward a b x₀ y₀ z₀ U V 2 ^ 2 = 0) (∀ (U V : K) (i : Fin 2), stereoBackward x₀ y₀ z₀ (stereoForward a b x₀ y₀ z₀ U V) i = 2 * z₀ * (a * x₀ * U + b * y₀ * V) * (fun (j : Fin 2) => match j with | 0 => U | 1 => V) i) (∀ (x y z : K), a * x ^ 2 + b * y ^ 2 + c * z ^ 2 = 0∀ (i : Fin 3), stereoForward a b x₀ y₀ z₀ (x * z₀ - x₀ * z) (y * z₀ - y₀ * z) i = 2 * z₀ ^ 2 * (a * x₀ * x + b * y₀ * y + c * z₀ * z) * (fun (j : Fin 3) => match j with | 0 => x | 1 => y | 2 => z) i) ∀ (x y z : K), a * x ^ 2 + b * y ^ 2 + c * z ^ 2 = 0(x, y, z) (0, 0, 0)bilinScalar a b c x₀ y₀ z₀ x y z = 0∃ (t : K), x = t * x₀ y = t * y₀ z = t * z₀

                Packaged isomorphism data for Theorem 2.3: the stereographic forward map lands on the conic, the back-then-forward and forward-then-backward maps are scalar multiples of the identity, and the tangent line through the base point intersects the conic only at the base point. Together these say the stereographic projection induces a bijection $\mathbb{P}^1 \cong $ conic.

                theorem fin2_ne_zero_iff {K : Type u_3} [Field K] (v : Fin 2K) :
                v 0 ¬(v 0 = 0 v 1 = 0)

                A function $v : \mathrm{Fin}\,2 \to K$ is nonzero iff not both coordinates $v(0), v(1)$ are zero.

                theorem stereoForward_ne_zero {K : Type u_2} [Field K] (a b c x₀ y₀ z₀ U V : K) (ha : a 0) (hb : b 0) (hc : c 0) (hz₀ : z₀ 0) (h2ne : 2 0) (hpt : a * x₀ ^ 2 + b * y₀ ^ 2 + c * z₀ ^ 2 = 0) (hUV : ¬(U = 0 V = 0)) :
                stereoForward a b x₀ y₀ z₀ U V 0

                The stereographic forward map sends any nonzero $(U, V)$ to a nonzero point of $K^3$. This is needed to descend the map to projective space.

                def DiagConicSet (K : Type u_3) [Field K] (a b c : K) :
                Set (Projectivization K (Fin 3K))

                The diagonal conic as a subset of $\mathbb{P}^2(K)$: the projective points $[x : y : z]$ satisfying $ax^2 + by^2 + cz^2 = 0$.

                Instances For
                  noncomputable def stereoForwardProj {K : Type u_2} [Field K] (a b c x₀ y₀ z₀ : K) (ha : a 0) (hb : b 0) (hc : c 0) (hz₀ : z₀ 0) (h2ne : 2 0) (hpt : a * x₀ ^ 2 + b * y₀ ^ 2 + c * z₀ ^ 2 = 0) :
                  Projectivization K (Fin 2K)Projectivization K (Fin 3K)

                  The projectivized stereographic forward map $\mathbb{P}^1(K) \to \mathbb{P}^2(K)$ induced by stereoForward, using the quadratic homogeneity to descend to projective space.

                  Instances For
                    theorem diagQuad_rep_iff {K : Type u_2} [Field K] (a b c : K) (v : Fin 3K) (hv : v 0) :
                    a * (Projectivization.mk K v hv).rep 0 ^ 2 + b * (Projectivization.mk K v hv).rep 1 ^ 2 + c * (Projectivization.mk K v hv).rep 2 ^ 2 = 0 a * v 0 ^ 2 + b * v 1 ^ 2 + c * v 2 ^ 2 = 0

                    The diagonal quadratic form $a X^2 + b Y^2 + c Z^2$ vanishes at the chosen representative of $[v] \in \mathbb{P}^2$ iff it vanishes at $v$ itself; this lets us pass between affine and projective conditions.

                    theorem stereoForwardProj_mem_conic {K : Type u_2} [Field K] (a b c x₀ y₀ z₀ : K) (ha : a 0) (hb : b 0) (hc : c 0) (hz₀ : z₀ 0) (h2ne : 2 0) (hpt : a * x₀ ^ 2 + b * y₀ ^ 2 + c * z₀ ^ 2 = 0) (Q : Projectivization K (Fin 2K)) :
                    stereoForwardProj a b c x₀ y₀ z₀ ha hb hc hz₀ h2ne hpt Q DiagConicSet K a b c

                    The projectivized stereographic forward map lands on the diagonal conic: for every $Q \in \mathbb{P}^1$, the image $\varphi(Q)$ lies in DiagConicSet.

                    theorem conic_isomorphic_to_P1 {K : Type u_2} [Field K] (a b c x₀ y₀ z₀ : K) (ha : a 0) (hb : b 0) (hc : c 0) (hz₀ : z₀ 0) (h2ne : 2 0) (hpt : a * x₀ ^ 2 + b * y₀ ^ 2 + c * z₀ ^ 2 = 0) :
                    ∃ (f : Projectivization K (Fin 2K)(DiagConicSet K a b c)), Function.Bijective f

                    Theorem 2.3 (bijective form): a smooth diagonal conic with a rational base point $(x_0, y_0, z_0)$ admits a bijection $\mathbb{P}^1(K) \to \mathrm{Conic}$ given by stereographic projection.

                    theorem conic_variety_isomorphic_to_P1 {K : Type u_2} [Field K] (a b c x₀ y₀ z₀ : K) (ha : a 0) (hb : b 0) (hc : c 0) (hz₀ : z₀ 0) (h2ne : 2 0) (hpt : a * x₀ ^ 2 + b * y₀ ^ 2 + c * z₀ ^ 2 = 0) :
                    Nonempty ((DiagConicSet K a b c) Projectivization K (Fin 2K))

                    Theorem 2.3 (equivalence form): the diagonal conic variety with a rational base point is in bijection with $\mathbb{P}^1$ — packaged as an Equiv (the bijection from conic_isomorphic_to_P1 upgraded to an isomorphism of sets).