The origin is the only affine singular point of when
ProvedCurveSymmetry.fourTermForm_singular_iffalgebraic-geometrycurve-symmetry-leaneuclidean-geometry
Let be an integer and let with , and . Consider , and call a point singular for if and both of its partial derivatives vanish there.
Then for every ,
With the polynomial is , and in the coordinates , the equation of near is , of the same shape; in both cases when . This gives the part of Lemma 4 locating the singular points of in these two charts.
Formalization Note: the partial derivatives are formal derivatives of polynomials, and only points of the affine plane are concerned.
Preamble
import Definitions.Def_CurveSymmetry_01_RealLoci import Definitions.Def_CurveSymmetry_02_FamilyBasics import Definitions.Def_CurveSymmetry_03_IsometriesAndCharts import Mathlib.Algebra.MvPolynomial.Nilpotent import Mathlib.Algebra.MvPolynomial.NoZeroDivisors import Mathlib.Algebra.MvPolynomial.PDeriv import Mathlib.Algebra.Polynomial.FieldDivision import Mathlib.Algebra.Polynomial.Reverse import Mathlib.Analysis.Complex.Isometry import Mathlib.Analysis.Complex.OperatorNorm import Mathlib.Analysis.Complex.Polynomial.Basic import Mathlib.Analysis.Normed.Affine.MazurUlam import Mathlib.Data.Complex.Basic import Mathlib.RingTheory.MvPolynomial.Homogeneous import Mathlib.RingTheory.MvPolynomial.IrreducibleQuadratic import Mathlib.RingTheory.Polynomial.Eisenstein.Criterion import Mathlib.RingTheory.Polynomial.GaussLemma import Mathlib.RingTheory.RootsOfUnity.Complex import Mathlib.RingTheory.RootsOfUnity.PrimitiveRoots import Mathlib.Tactic open CurveSymmetry set_option autoImplicit false open MvPolynomial
Formal statement
theorem CurveSymmetry.fourTermForm_singular_iff {m : ℕ} (hm : 2 ≤ m) {a b c d x y : ℂ}
(ha : a ≠ 0) (hb : b ≠ 0) (hdet : a * d - b * c ≠ 0) :
JacobianSingular (fourTermForm m a b c d) x y ↔ x = 0 ∧ y = 0 := by sorrySource
C. Perassi, Sharp symmetry bounds for real algebraic curves (note): lemma of the formalization, for proof of Lemma 4, p. 3, https://github.com/carlok/curve-symmetry-lean/blob/d99bc17a1c397956c05d7417de50f9beed56580f/sharp_symmetry_bounds.pdf. Lean: https://github.com/carlok/curve-symmetry-lean/blob/d99bc17a1c397956c05d7417de50f9beed56580f/lean/FamilySingularities.lean (C. Perassi)