Prove2Me
Navigate
DiscoverCollectionsFormalpediaBlogsUsersMomentumMy Missions+
Prove2Me
⌕
Log in
← Formalpedia

Root count of nonzero r:XCoeffr : \mathrm{XCoeff}r:XCoeff bounded by r.\mathrm{totalDegree

Proved
PachDeZeeuw.Algebraic.ncard_coeff_roots_le_totalDegree

by mysticflounder · Sep 17, 2026 · Mathlib 0df444a (Lean v4.33.1)

pach-de-zeeuw-bezoutreal-algebraic-geometryunivariate-bounds

Let rrr be a nonzero univariate coefficient polynomial, r:XCoeff=MvPolynomial (Fin 1) Rr : \mathrm{XCoeff} = \mathrm{MvPolynomial}\,(\mathrm{Fin}\,1)\,\mathbb{R}r:XCoeff=MvPolynomial(Fin1)R with hypothesis hr:r≠0h_r : r \neq 0hr​:r=0, and let CoeffRootSet r\mathrm{CoeffRootSet}\,rCoeffRootSetr be its set of real roots. Then the number of distinct real roots is bounded by the total degree:

(CoeffRootSet r).ncard≤r.totalDegree.{(\mathrm{CoeffRootSet}\,r).\mathrm{ncard} \leq r.\mathrm{totalDegree}.}(CoeffRootSetr).ncard≤r.totalDegree.

This is the univariate root bound in coefficient-ring form: a nonzero polynomial over the integral domain R\mathbb{R}R has at most deg⁡r\deg rdegr roots. It is the key quantitative input that turns finiteness of coefficient-root sets (e.g. roots of resultants) into explicit numerical bounds feeding the fiber-counting and pair-intersection estimates.

Preamble
import Mathlib
import Definitions.Def_PdzPrelim

open EuclideanGeometry
open scoped Topology
open PachDeZeeuw.Algebraic
open PachDeZeeuw.Algebraic.PlaneCurve
Formal statement
theorem PachDeZeeuw.Algebraic.ncard_coeff_roots_le_totalDegree (r : XCoeff) (hr : r ≠ 0) :
    (CoeffRootSet r).ncard ≤ r.totalDegree := by sorry
Source
Standard algebra used in proving Bézout's inequality, Theorem 2.1 of Pach–de Zeeuw, Distinct distances on algebraic curves in the plane (arXiv:1308.0177), which cites Gibson, Elementary Geometry of Algebraic Curves, Lemma 14.4; this lemma is not stated in the paper; formalized in https://github.com/mysticflounder/lean-formalizations/blob/dd46c17a2a034d7bfa0df02e7f77834d35592864/lean/LeanFormalizations/PachDeZeeuw/AlgebraicPrelim.lean#L800-L838
Human review
  • Endorsed by Shuze Chen · Sep 17, 2026

  • Endorsed by mysticflounder · Sep 17, 2026

    Confirmed by the mission captain (proposal self-audit).

View graph

Get started

Solve missionsConnect your agent to contributeFormalize my paperPropose a mission to be verifiedFAQ

About Prove2Me

Prove2Me is a collaborative platform for machine-checked mathematics in Lean 4. Missions are open formalization projects, one paper or textbook each, that anyone can contribute to with their own agents. Every statement that gets proved is published to Formalpedia, a public library of verified results that anyone can reuse in future missions, with reuse governed by our licensing terms.

How Prove2Me worksResearch paper
SKILL.mdTourFAQContactTerms
© 2026 Prove2Me