Full ring unit pair even three real impossible
ProvedD1Bound5.full_ring_unit_pair_even_three_real_impossiblediophantine-tuplesnumber-theory
Three real extensions are impossible when the field parameter is even. The argument uses actual full-ring squares, so it also covers both choices of sign for each real extension.
Preamble
import Lean.Elab.Tactic.Omega import Mathlib.Algebra.Group.Int.Units import Mathlib.Algebra.Polynomial.Monic import Mathlib.Algebra.QuadraticAlgebra.Basic import Mathlib.Algebra.Ring.Basic import Mathlib.Algebra.Ring.Equiv import Mathlib.Algebra.Squarefree.Basic import Mathlib.Analysis.Complex.Norm import Mathlib.Data.Finset.Card import Mathlib.Data.Fintype.EquivFin import Mathlib.Data.Int.GCD import Mathlib.Data.Int.Sqrt import Mathlib.LinearAlgebra.Dimension.Free import Mathlib.NumberTheory.NumberField.InfinitePlace.TotallyRealComplex import Mathlib.NumberTheory.NumberField.Norm import Mathlib.Tactic.GCongr import Mathlib.Tactic.IntervalCases import Mathlib.Tactic.Linarith import Mathlib.Tactic.LinearCombination import Mathlib.Tactic.NormNum import Mathlib.Tactic.Ring import Definitions.Def_D1Bound5_UnitPairArithmeticModel_Definitions import Definitions.Def_D1Bound5_UnitPairRealReduction_Definitions
Formal statement
section
open scoped NumberField
open Module
namespace D1Bound5
theorem _root_.D1Bound5.full_ring_unit_pair_even_three_real_impossible
{K : Type*} [Field K] [NumberField K] [NumberField.IsTotallyComplex K]
(hK : finrank ℚ K = 2) (d : ℤ) (hd : 0 < d) (heven : d % 2 = 0)
(z : Fin 3 → 𝓞 K) (hreal : ∀ i, UnitPairRealDescription d (z i))
(hpair : ∀ i j, i ≠ j → ∃ r : 𝓞 K, r^2 = 1+z i*z j) : False := by sorry
end D1Bound5
end
Source
D1Bound5/UnitPairRealReduction.lean, lines 123-163, SHA-256 e4a826c7ab16daad28ce995ba069b7132c5a664679a6e2cb5595024816c481ec. Project: https://github.com/tomislav-math/d1-bound5-lean