Root sets and multiplicities #
This file records several facts about the roots of a polynomial, either in its coefficient field
or after base change to a domain E.
First, an explicit numbering of the root set of a separable polynomial enumerates its full root
multiset: separability makes the roots simple, so the multiset is the image of the numbering.
This lets root-product formulas be expressed as finite products indexed by Fin f.natDegree,
without choosing a global order on the root set.
Second, the root set of a product of polynomials whose base changes to E are nonzero is the
union of the root sets of the factors. This is the lemma that decomposes the roots of a
polynomial along a factorisation, for instance the roots of a monic integer polynomial along its
monic irreducible factors. The same holds for the distinct roots of a finite product.
Third, dividing a polynomial by the linear factor of a simple root removes exactly that root
from the root set. Here a only has to be a simple root in E: f a vanishes and f' a does
not vanish after mapping to E, so the map F → E need not be injective.
Fourth, translating the variable moves the roots: the roots of f(X + t) are the points x
with x + t a root of f, so x ↦ x + t is a bijection between the two root sets, and
f(X + t) is separable exactly when f is.
Fifth, if every root of a nonzero polynomial is among a family of points θ i, then its roots
are exactly the θ i in which it has positive multiplicity.
Finally, the roots of a polynomial gcd form the multiset intersection of the roots of its inputs. In characteristic zero this identifies the degree lost to the gcd with the derivative as the number of distinct roots.
Main results #
Polynomial.Separable.roots_map_eq_map_numbering: for a separable polynomial, a numbering of its root set enumerates its full root multiset after base change.Polynomial.rootSet_mul: the root set of a product of polynomials whose base changes toEare nonzero is the union of the root sets of the factors.Polynomial.roots_prod_toFinset: the distinct roots of a finite product of nonzero polynomials are those of the factors together.Polynomial.aroots_prod_toFinset: the distinct roots of a finite product of polynomials whose base changes toEare nonzero are those of the factors together.Polynomial.rootSet_divByMonic_X_sub_C: iff a = 0andf' a ≠ 0inE, then the roots off /ₘ (X - C a)are the roots offother thana.Polynomial.rootSet_comp_X_add_C: the roots off(X + t)are the roots offmoved by-t.Polynomial.rootSetCompXAddCEquiv: the bijectionx ↦ x + tfrom the roots off(X + t)to the roots off.Polynomial.separable_comp_X_add_C_iff:f(X + t)is separable exactly whenfis.Polynomial.isRoot_iff_of_rootMultiplicity: if every root of a nonzero polynomial is among theθ i, then its roots are theθ iin which it has positive multiplicity.Polynomial.rootMultiplicity_gcd: a root's multiplicity in a gcd is the minimum of its multiplicities in the two inputs.Polynomial.natDegree_sub_natDegree_gcd_derivative_eq_card_roots_toFinset: over an algebraically closed field of characteristic zero, degree minus the degree of the derivative gcd counts distinct roots.
A numbering of the root set of a separable polynomial enumerates the whole root multiset: separability makes the roots simple, so the multiset is the image of the numbering.
The root set of a product of polynomials is the union of the root sets of the factors,
provided neither factor vanishes after base change to E.
The distinct roots of a finite product of nonzero polynomials are those of the factors together.
The distinct roots in E of a finite product of polynomials are those of the factors together,
provided no factor vanishes after base change to E.
Removing the linear factor of a simple root a removes exactly that root: if, in E, f a
vanishes and f' a does not, then the roots of f /ₘ (X - C a) in E are the roots of f
other than a.
The roots of f(X + t) are the points x with x + t a root of f.
The bijection x ↦ x + t from the roots of f(X + t) to the roots of f.
Equations
- f.rootSetCompXAddCEquiv t E = Equiv.subtypeEquiv (Equiv.addRight ((algebraMap F E) t)) ⋯
Instances For
The bijection Polynomial.rootSetCompXAddCEquiv adds t.
The inverse of Polynomial.rootSetCompXAddCEquiv subtracts t.
If every root of a nonzero polynomial p is some θ i, and the multiplicity of each θ i
as a root of p is m i, then the roots of p are the θ i with 0 < m i.
The multiplicity of a root in the gcd of two nonzero polynomials is the minimum of its multiplicities in the two polynomials.
The roots of the gcd of two nonzero polynomials are the multiset intersection of their roots. Thus a common root occurs with the minimum of its two input multiplicities.
In characteristic zero, the roots of a polynomial's derivative gcd, together with one copy of each distinct root, recover all roots with multiplicity.
For a split polynomial in characteristic zero, the number of distinct roots of a nonzero polynomial is its degree minus the degree of its gcd with its derivative.
Over an algebraically closed field of characteristic zero, the number of distinct roots of a nonzero polynomial is its degree minus the degree of its gcd with its derivative.