Polynomial Factoring & Decomposition
Factoring a quadratic polynomial in one variable is straightforward. But the Wolfram Language routinely factors degree-100 polynomials in 3 variables—by making use of a tower of sophisticated algorithms, carefully tuned at Wolfram Research over the course of two decades.
Factor — fully factor any polynomial
FactorSquareFree — pull out only factors that occur as squares or higher powers
FactorTerms — pull out only overall numerical factors
FactorList, FactorSquareFreeList, FactorTermsList — give lists of factors
IrreduciblePolynomialQ ▪ SquareFreeQ
Modulus — specify a modulus for a finite field
Extension — specify a general algebraic extension field
GaussianIntegers — factor over Gaussian integers
Expand — expand out polynomials
MonomialList — the list of monomials in a specified ordering
Decompose — decompose into a composition of polynomials
HornerForm — rearrange a polynomial into Horner form
SymmetricReduction — reduce a polynomial into a symmetric and nonsymmetric part
InterpolatingPolynomial — construct a polynomial that goes through a list of points