Irreducible bases of finite families of polynomials #
Let D be a GCD domain and F a finite family of polynomials in one
distinguished variable over D. An irreducible basis of F is a finite set B of pairwise
nonassociated irreducible polynomials of positive degree such that every member of F is a
constant times a product of powers of members of B, and every member of B divides some
nonzero member of F. The constant is the content of the member up to a unit; the product of
powers is primitive. Zero members are reconstructed with the constant 0 and
contribute nothing to the basis.
The intended coefficient ring is D = MvPolynomial (Fin n) R over a field R, which is a
unique factorization domain by Mathlib's MvPolynomial.uniqueFactorizationMonoid. Projection
operators for cylindrical algebraic decomposition (McCallum's and Lazard's) are applied to an
irreducible basis of the input family together with the contents, and the signs and roots of
the original family are recovered from those of the basis and the contents. By Gauss's lemma
the basis stays irreducible over the fraction field of D. An irreducible basis is in
particular a squarefree basis (Finset.IsSquarefreeBasis), so its members are pairwise coprime
and its product is squarefree over the fraction field; hence resultants of distinct members are
nonzero, and in characteristic zero (as for R = ℝ) so are discriminants of members. In
positive characteristic an irreducible member can be inseparable, with zero discriminant.
Main definitions and results #
Finset.IsIrreducibleBasis F B:Bis an irreducible basis of the finite familyF.Finset.exists_isIrreducibleBasis: every finite family has an irreducible basis. It rests onPolynomial.exists_eq_C_mul_prod_irreducible: every polynomial is a constant times a product of irreducible polynomials of positive degree.Finset.IsIrreducibleBasis.isPrimitive: the members of the basis are primitive.Finset.IsIrreducibleBasis.isSquarefreeBasis: an irreducible basis is a squarefree basis. Content reconstruction, root recovery, the squarefreeness of products, and the nonvanishing of resultants and discriminants are proved for squarefree bases.Finset.IsIrreducibleBasis.exists_associated_iff: an irreducible polynomial of positive degree is associated to a member of the basis exactly when it divides a nonzero member of the family. Consequently any two irreducible bases agree up to associates (Finset.IsIrreducibleBasis.exists_associated,Finset.IsIrreducibleBasis.exists_eq_C_mul) and have the same cardinality (Finset.IsIrreducibleBasis.card_eq).Finset.IsIrreducibleBasis.irreducible_map: over the fraction field ofD, the members of the basis are irreducible.Finset.IsIrreducibleBasis.exists_associated_discr,Finset.IsIrreducibleBasis.exists_associated_resultant: the discriminants and pairwise resultants of one irreducible basis are associated to those of any other.
References #
- S. McCallum, An improved projection operation for cylindrical algebraic decomposition, in Quantifier Elimination and Cylindrical Algebraic Decomposition, Springer (1998), 242–268.
- S. McCallum, A. Parusiński, L. Paunescu, Validity proof of Lazard's method for CAD construction, Journal of Symbolic Computation 92 (2019), 52–69.
B is an irreducible basis of the finite family F of polynomials over D: its members
are pairwise nonassociated irreducible polynomials of positive degree, every member of F is a
constant times a product of powers of members of B, and every member of B divides a nonzero
member of F.
- irreducible (b : Polynomial D) : b ∈ B → Irreducible b
Every member of the basis is irreducible.
- natDegree_pos (b : Polynomial D) : b ∈ B → 0 < b.natDegree
Every member of the basis has positive degree.
- eq_of_associated (b : Polynomial D) : b ∈ B → ∀ b' ∈ B, Associated b b' → b = b'
Distinct members of the basis are not associated.
- exists_eq_C_mul_prod (f : Polynomial D) : f ∈ F → ∃ (c : D) (e : Polynomial D → ℕ), f = Polynomial.C c * ∏ b ∈ B, b ^ e b
Every member of the family is a constant times a product of powers of the basis.
- exists_dvd (b : Polynomial D) : b ∈ B → ∃ f ∈ F, f ≠ 0 ∧ b ∣ f
Every member of the basis divides a nonzero member of the family.
Instances For
The members of an irreducible basis are primitive.
An irreducible basis is a squarefree basis.
An irreducible polynomial of positive degree is associated to a member of an irreducible
basis of F exactly when it divides a nonzero member of F.
Irreducible bases of the same family agree up to associates.
Each member of an irreducible basis is a unit multiple of a member of any other irreducible basis of the same family.
Irreducible bases of the same family have the same number of members.
The discriminant of a member of an irreducible basis is associated to the discriminant of a member of any other irreducible basis of the same family.
The resultant of two distinct members of an irreducible basis is associated to the resultant of two distinct members of any other irreducible basis of the same family.
By Gauss's lemma, the members of an irreducible basis stay irreducible over the fraction field.
Over a GCD domain, every polynomial is a constant times a product of irreducible polynomials of positive degree. The zero polynomial is included by taking the constant zero.
Every finite family of polynomials over a GCD domain has an irreducible basis.