Lazard evaluation #
Let p be a polynomial in variables X₀, …, Xₙ₋₁ over a commutative ring S, and let
a : Fin n → S. Lazard evaluation of p at a eliminates the variables one at a time, in
the order X₀, X₁, …: it divides p by the largest power of X₀ - a₀ dividing it, sets
X₀ = a₀, and continues with the result at the remaining coordinates. The outcome
p.lazardEval a : S is nonzero whenever p is, unlike the ordinary value eval a p, and the
exponents of the removed powers form the vector p.lazardExponent a : Fin n →₀ ℕ.
The intended use is S = R[X], with a the constant polynomials C αᵢ at a point α ∈ Rⁿ:
then p is a polynomial in the base coordinates x and one further variable z, and its Lazard
evaluation is a nonzero polynomial in z even where the ordinary specialization p(α, z)
vanishes identically. This replaces ordinary specialization in Lazard's projection for
cylindrical algebraic decomposition, which needs no well-orientedness hypothesis.
Each step of the elimination is described by the univariate identity
Polynomial.trailingCoeff_taylor: dividing q by the largest power of X - r and evaluating
at r gives the trailing coefficient of the Taylor expansion q(X + r), which is its lowest
nonzero coefficient when q ≠ 0. Iterating it, the
removed exponents are the lexicographically least exponent u of a nonzero Taylor coefficient
of p at a, and the Lazard evaluation is that coefficient (lazardExponent_eq_iff,
coeff_taylor_lazardExponent). Here the lexicographic order on Fin n →₀ ℕ makes coordinate
0 the most significant, matching the order of elimination.
Main definitions #
MvPolynomial.lazardEval: the Lazard evaluation ofpata.MvPolynomial.lazardExponent: the exponents of the powers ofXᵢ - aᵢit removes.
Main results #
MvPolynomial.lazardEval_ne_zero: the Lazard evaluation of a nonzero polynomial is nonzero.MvPolynomial.lazardEval_eq_eval,MvPolynomial.lazardExponent_eq_zero_iff: wherepdoes not vanish, Lazard evaluation is ordinary evaluation, and these are exactly the points where no power is removed.MvPolynomial.coeff_taylor_lazardExponent,MvPolynomial.coeff_taylor_eq_zero_of_lt_lazardExponent,MvPolynomial.lazardExponent_eq_iff: the removed exponents are the lexicographically least exponent of a nonzero Taylor coefficient ofpata, and the Lazard evaluation is that Taylor coefficient.MvPolynomial.lazardEval_mul,MvPolynomial.lazardExponent_mul: without zero divisors, Lazard evaluation is multiplicative and the removed exponents add.
References #
- D. Lazard, An improved projection for cylindrical algebraic decomposition, in Algebraic Geometry and its Applications, Springer (1994), 467–476.
- S. McCallum, A. Parusiński, L. Paunescu, Validity proof of Lazard's method for CAD construction, Journal of Symbolic Computation 92 (2019), 52–69, Section 2.
The Lazard evaluation of p at a. Divide p by the largest power of X₀ - a₀
dividing it and set X₀ = a₀; then continue with the result, a polynomial in the remaining
variables, at the remaining coordinates Fin.tail a. With no variables left it is the constant
value of p.
It is nonzero whenever p is (MvPolynomial.lazardEval_ne_zero), and it agrees with eval a p
when that is nonzero (MvPolynomial.lazardEval_eq_eval).
Equations
- One or more equations did not get rendered due to their size.
- p.lazardEval a = (MvPolynomial.eval a) p
Instances For
The exponents of the powers of Xᵢ - aᵢ removed by the Lazard evaluation of p at a
(MvPolynomial.lazardEval). Its value at i is the exponent of the largest power of Xᵢ - aᵢ
dividing the polynomial left after eliminating X₀, …, Xᵢ₋₁.
Equations
- One or more equations did not get rendered due to their size.
- p.lazardExponent a = 0
Instances For
The Lazard evaluation of a nonzero polynomial is nonzero.
The Lazard evaluation of p at a is the Taylor coefficient of p at a whose exponent is
the vector of removed exponents.
Every Taylor coefficient of p at a whose exponent is lexicographically less than the
vector of removed exponents vanishes.
Lazard exponents as a lexicographic minimum. For p ≠ 0, the vector of exponents
removed by Lazard evaluation at a is the lexicographically least exponent of a nonzero Taylor
coefficient of p at a.
For a nonzero polynomial, the Lazard valuation is the vector of removed exponents.
A fixed polynomial has only finitely many vectors of removed Lazard exponents.
No power is removed by Lazard evaluation at a point where p does not vanish.
Agreement with ordinary specialization. Where p does not vanish, its Lazard evaluation
is its value.
A nonzero polynomial loses no power under Lazard evaluation at a exactly when it does not
vanish at a.
Lazard evaluation removes exactly one power of Xᵢ - aᵢ from Xᵢ - aᵢ.
Over a ring without zero divisors, Lazard evaluation is multiplicative.
Over a ring without zero divisors, the exponents removed by Lazard evaluation of a product of nonzero polynomials are the sums of those removed from the factors.