Factorization of polynomials
In mathematics and computer algebra, factorization of polynomials or polynomial factorization expresses a polynomial with coefficients in a given field or in the integers as the product of irreducible factors with coefficients in the same domain. Polynomial factorization is one of the fundamental components of computer algebra systems.
This article is about factorization algorithms. For paper-and-pencil methods, see Factorization § Polynomials.
The first polynomial factorization algorithm was published by Theodor von Schubert in 1793.[1] Leopold Kronecker rediscovered Schubert's algorithm in 1882 and extended it to multivariate polynomials and coefficients in an algebraic extension. But most of the knowledge on this topic is not older than circa 1965 and the first computer algebra systems:[2]
Nowadays, modern algorithms and computers can quickly factor univariate polynomials of degree more than 1000 having coefficients with thousands of digits.[3] For this purpose, even for factoring over the rational numbers and number fields, a fundamental step is a factorization of a polynomial over a finite field.
$_$_$DEEZ_NUTS#0__titleDEEZ_NUTS$_$_$
$_$_$DEEZ_NUTS#0__subtitleDEEZ_NUTS$_$_$
$_$_$DEEZ_NUTS#2__titleDEEZ_NUTS$_$_$
$_$_$DEEZ_NUTS#2__descriptionDEEZ_NUTS$_$_$
Polynomial rings over the integers or over a field are unique factorization domains. This means that every element of these rings is a product of a constant and a product of irreducible polynomials (those that are not the product of two non-constant polynomials). Moreover, this decomposition is unique up to multiplication of the factors by invertible constants.
Factorization depends on the base field. For example, the fundamental theorem of algebra, which states that every polynomial with complex coefficients has complex roots, implies that a polynomial with integer coefficients can be factored (with root-finding algorithms) into linear factors over the complex field C. Similarly, over the field of reals, the irreducible factors have degree at most two, while there are polynomials of any degree that are irreducible over the field of rationals Q.
The question of polynomial factorization makes sense only for coefficients in a computable field whose every element may be represented in a computer and for which there are algorithms for the arithmetic operations. However, this is not a sufficient condition: Fröhlich and Shepherdson give examples of such fields for which no factorization algorithm can exist.[4]
The fields of coefficients for which factorization algorithms are known include prime fields (that is, the field of the rational number and the fields of the integers modulo a prime number) and their finitely generated field extensions. Integer coefficients are also tractable. Kronecker's classical method is interesting only from a historical point of view; modern algorithms proceed by a succession of:
and reductions:
$_$_$DEEZ_NUTS#3__titleDEEZ_NUTS$_$_$
$_$_$DEEZ_NUTS#3__descriptionDEEZ_NUTS$_$_$
$_$_$DEEZ_NUTS#4__titleDEEZ_NUTS$_$_$
$_$_$DEEZ_NUTS#4__subtextDEEZ_NUTS$_$_$
$_$_$DEEZ_NUTS#1__titleDEEZ_NUTS$_$_$
$_$_$DEEZ_NUTS#1__subtextDEEZ_NUTS$_$_$
$_$_$DEEZ_NUTS#1__answer--0DEEZ_NUTS$_$_$
$_$_$DEEZ_NUTS#1__answer--1DEEZ_NUTS$_$_$
$_$_$DEEZ_NUTS#1__answer--2DEEZ_NUTS$_$_$
$_$_$DEEZ_NUTS#1__answer--3DEEZ_NUTS$_$_$
$_$_$DEEZ_NUTS#1__answer--4DEEZ_NUTS$_$_$
$_$_$DEEZ_NUTS#1__answer--5DEEZ_NUTS$_$_$
$_$_$DEEZ_NUTS#1__answer--6DEEZ_NUTS$_$_$
$_$_$DEEZ_NUTS#1__answer--7DEEZ_NUTS$_$_$
$_$_$DEEZ_NUTS#1__answer--8DEEZ_NUTS$_$_$
$_$_$DEEZ_NUTS#1__answer--9DEEZ_NUTS$_$_$
$_$_$DEEZ_NUTS#1__answer--10DEEZ_NUTS$_$_$