Polynomial identity testing Created 2026-09-24 Updated 2026-10-18
Polynomial identity testing asks whether a polynomial represented implicitly, such as by an arithmetic circuit or a remainder computation, is the zero polynomial.
Here zero means that every coefficient vanishes after collecting equal monomials in the polynomial ring. Testing equality of two polynomials amounts to testing for zero. An arithmetic circuit can permit cheap polynomial evaluation even when expanding all monomials is expensive. The random evaluation test for a polynomial identity exploits this: one nonzero value disproves the polynomial identity, while a known total degree limits how often a nonzero polynomial can evade detection.[ref]
For example, for an integer , has distinct monomials, one for each subset of the variables. Its factored expression needs only additions and multiplications for one polynomial evaluation. Evaluating the compact expression avoids creating its expanded list of coefficients. The saving is especially attractive in many variables; it does not make a zero result into a proof of identity.
Setting gives . A positive gives two distinct roots of a polynomial in the real numbers; zero gives a repeated root of a polynomial at ; a negative value gives a pair of complex conjugate roots of a polynomial. For the downward-opening example, the two roots of a polynomial are , approximately and .
The discriminant packages the same calculation, because
Since , the sign of determines which of the three cases occurs. This derives the quadratic formula by a polynomial identity, and explains its structure: first shift to , then take a square root. For the upward-opening example, gives the complex conjugate roots of a polynomial .
Over the complex numbers, if , then
Here the generalized binomial coefficient is , with . This is an exact finite identity, even when an infinite binomial series would not converge.
One can construct the required polynomial without any infinite series. At polynomial degree , the coefficient of is plus terms involving only earlier coefficients. Recursively choose it to agree with through polynomial degree ; the first coefficients are . The stated generalized binomial coefficients solve this recursion: near , the binomial series for cubes to , and truncating it changes no coefficient below polynomial degree . Thus is divisible by as a polynomial identity. Substituting the nilpotent matrix kills the remaining terms, all divisible by . For a Jordan block with , replace by and multiply by a scalar cube root of .
Take the stipulated polynomial roots . Their first three elementary symmetric polynomials are
Their monic polynomial is therefore
The constant coefficient is , while the product of the three roots of a polynomial is : for a cubic polynomial, these have opposite signs. Expanding the factors directly verifies the same polynomial identity.
Figure 1.
The roots determine the signed coefficients of a cubic
. An original exact calculation: the graph shows the stipulated polynomial, and the ledger groups choices of one, two or three root positions into elementary symmetric polynomials. The alternating factors convert these values into monic polynomial coefficients. Details.
For the nonmonic polynomial , the same ratios give sum , pairwise-product sum , and product . It is times the monic polynomial above, so its roots of a polynomial are the same. Checking only the sum and product would leave the middle elementary symmetric polynomial unchecked; all three are needed to recover a monic polynomial of polynomial degree three.