Mazur 13 port: localU_coeff_two_isUnit_of_mem_nonsimple
ProvedMazurProof.N13GlobalKummerSimpleRootParity.localU_coeff_two_isUnit_of_mem_nonsimplehuang-flt-portmazur-full-torsionmazur-n13-portorder13
In the nonsimple branch, local primitivity forces the leading coefficient to be a unit. This isolates the sole remaining local case.
This lemma is one step of a machine-checked proof that the genus-two curve
(a model of ) has no rational affine points other than the cusps , which gives the case of Mazur's torsion theorem. The proof is Xiang Huang's Lean development, ported to this Mathlib and split into one node per large lemma; definitions live in the layered entries MazurN13_L0, MazurN13_L1, ….
Preamble
import Mathlib import Definitions.Def_MazurN13_L4 set_option backward.isDefEq.respectTransparency false set_option backward.isDefEq.respectTransparency.types false open MazurProof MazurProof.N13GlobalKummerSimpleRootParity open Polynomial open IsDedekindDomain open IsDedekindDomain.HeightOneSpectrum open scoped nonZeroDivisors open N13GlobalKummerNormalization open N13GlobalKummerIdealSquare open N13GoodPrimeSimpleRoot attribute [local instance] MazurProof.N13GlobalKummerSimpleRootParity.fieldL attribute [local instance] MazurProof.N13GlobalKummerSimpleRootParity.dedekindO attribute [local instance] MazurProof.N13GlobalKummerSimpleRootParity.fractionRingOL attribute [local instance] MazurProof.N13GlobalKummerSimpleRootParity.charZeroL attribute [local instance] MazurProof.N13GlobalKummerSimpleRootParity.charZeroCompletion
Formal statement
theorem MazurProof.N13GlobalKummerSimpleRootParity.localU_coeff_two_isUnit_of_mem_nonsimple (D : N13LowDegreeKummerHom.LowRep) (P : HeightOneSpectrum O) (hmem : normalizedKummerInteger D ∈ P.asIdeal) (hnonsimple : ¬ IsUnit ((localU D P).derivative.eval (localTheta P))) : IsUnit ((localU D P).coeff 2) := by sorry
Source
Xiang Huang, FLT fork, https://github.com/xiangyazi24/FLT/blob/51bbb4f/FLT/Assumptions/MazurProof/N13GlobalKummerSimpleRootParity.lean#L359