# Polynomial

In mathematics, a **polynomial** is an expression consisting of indeterminates (also called variables) and coefficients, that involves only the operations of addition, subtraction, multiplication, and non-negative integer exponentiation of variables. An example of a polynomial of a single indeterminate *x* is *x*^{2} − 4*x* + 7. An example in three variables is *x*^{3} + 2*xyz*^{2} − *yz* + 1.

Polynomials appear in many areas of mathematics and science. For example, they are used to form polynomial equations, which encode a wide range of problems, from elementary word problems to complicated scientific problems; they are used to define **polynomial functions**, which appear in settings ranging from basic chemistry and physics to economics and social science; they are used in calculus and numerical analysis to approximate other functions. In advanced mathematics, polynomials are used to construct polynomial rings and algebraic varieties, which are central concepts in algebra and algebraic geometry.

The word *polynomial* joins two diverse roots: the Greek *poly*, meaning "many", and the Latin *nomen*, or "name". It was derived from the term *binomial* by replacing the Latin root *bi-* with the Greek *poly-*. That is, it means a sum of many terms (many monomials). The word *polynomial* was first used in the 17th century.^{[1]}

The *x* occurring in a polynomial is commonly called a *variable* or an *indeterminate*. When the polynomial is considered as an expression, *x* is a fixed symbol which does not have any value (its value is "indeterminate"). However, when one considers the function defined by the polynomial, then *x* represents the argument of the function, and is therefore called a "variable". Many authors use these two words interchangeably.

A polynomial *P* in the indeterminate *x* is commonly denoted either as *P* or as *P*(*x*). Formally, the name of the polynomial is *P*, not *P*(*x*), but the use of the functional notation *P*(*x*) dates from a time when the distinction between a polynomial and the associated function was unclear. Moreover, the functional notation is often useful for specifying, in a single phrase, a polynomial and its indeterminate. For example, "let *P*(*x*) be a polynomial" is a shorthand for "let *P* be a polynomial in the indeterminate *x*". On the other hand, when it is not necessary to emphasize the name of the indeterminate, many formulas are much simpler and easier to read if the name(s) of the indeterminate(s) do not appear at each occurrence of the polynomial.

The ambiguity of having two notations for a single mathematical object may be formally resolved by considering the general meaning of the functional notation for polynomials.
If *a* denotes a number, a variable, another polynomial, or, more generally, any expression, then *P*(*a*) denotes, by convention, the result of substituting *a* for *x* in *P*. Thus, the polynomial *P* defines the function

which is the *polynomial function* associated to *P*.
Frequently, when using this notation, one supposes that *a* is a number. However, one may use it over any domain where addition and multiplication are defined (that is, any ring). In particular, if *a* is a polynomial then *P*(*a*) is also a polynomial.

More specifically, when *a* is the indeterminate *x*, then the image of *x* by this function is the polynomial *P* itself (substituting *x* for *x* does not change anything). In other words,

which justifies formally the existence of two notations for the same polynomial.

A polynomial in a single indeterminate *x* can always be written (or rewritten) in the form

That is, a polynomial can either be zero or can be written as the sum of a finite number of non-zero terms. Each term consists of the product of a number – called the coefficient of the term^{[a]} – and a finite number of indeterminates, raised to non-negative integer powers.

The exponent on an indeterminate in a term is called the degree of that indeterminate in that term; the degree of the term is the sum of the degrees of the indeterminates in that term, and the degree of a polynomial is the largest degree of any term with nonzero coefficient.^{[3]} Because *x* = *x*^{1}, the degree of an indeterminate without a written exponent is one.

A term with no indeterminates and a polynomial with no indeterminates are called, respectively, a constant term and a **constant polynomial**.^{[b]} The degree of a constant term and of a nonzero constant polynomial is 0. The degree of the zero polynomial 0 (which has no terms at all) is generally treated as not defined (but see below).^{[4]}

is a term. The coefficient is −5, the indeterminates are *x* and *y*, the degree of *x* is two, while the degree of *y* is one. The degree of the entire term is the sum of the degrees of each indeterminate in it, so in this example the degree is 2 + 1 = 3.

Forming a sum of several terms produces a polynomial. For example, the following is a polynomial:

It consists of three terms: the first is degree two, the second is degree one, and the third is degree zero.

Polynomials of small degree have been given specific names. A polynomial of degree zero is a *constant polynomial*, or simply a *constant*. Polynomials of degree one, two or three are respectively *linear polynomials,* *quadratic polynomials* and *cubic polynomials*.^{[3]} For higher degrees, the specific names are not commonly used, although *quartic polynomial* (for degree four) and *quintic polynomial* (for degree five) are sometimes used. The names for the degrees may be applied to the polynomial or to its terms. For example, the term 2*x* in *x*^{2} + 2*x* + 1 is a linear term in a quadratic polynomial.

The polynomial 0, which may be considered to have no terms at all, is called the **zero polynomial**. Unlike other constant polynomials, its degree is not zero. Rather, the degree of the zero polynomial is either left explicitly undefined, or defined as negative (either −1 or −∞).^{[5]} The zero polynomial is also unique in that it is the only polynomial in one indeterminate that has an infinite number of roots. The graph of the zero polynomial, *f*(*x*) = 0, is the *x*-axis.

In the case of polynomials in more than one indeterminate, a polynomial is called *homogeneous* of degree *n* if *all* of its non-zero terms have degree *n*. The zero polynomial is homogeneous, and, as a homogeneous polynomial, its degree is undefined.^{[c]} For example, *x*^{3}*y*^{2} + 7*x*^{2}*y*^{3} − 3*x*^{5} is homogeneous of degree 5. For more details, see Homogeneous polynomial.

The commutative law of addition can be used to rearrange terms into any preferred order. In polynomials with one indeterminate, the terms are usually ordered according to degree, either in "descending powers of *x*", with the term of largest degree first, or in "ascending powers of *x*". The polynomial 3*x*^{2} - 5*x* + 4 is written in descending powers of *x*. The first term has coefficient 3, indeterminate *x*, and exponent 2. In the second term, the coefficient is −5. The third term is a constant. Because the *degree* of a non-zero polynomial is the largest degree of any one term, this polynomial has degree two.^{[6]}

Two terms with the same indeterminates raised to the same powers are called "similar terms" or "like terms", and they can be combined, using the distributive law, into a single term whose coefficient is the sum of the coefficients of the terms that were combined. It may happen that this makes the coefficient 0.^{[7]} Polynomials can be classified by the number of terms with nonzero coefficients, so that a one-term polynomial is called a monomial,^{[d]} a two-term polynomial is called a binomial, and a three-term polynomial is called a *trinomial*. The term "quadrinomial" is occasionally used for a four-term polynomial.

A **real polynomial** is a polynomial with real coefficients. When it is used to define a function, the domain is not so restricted. However, a **real polynomial function** is a function from the reals to the reals that is defined by a real polynomial. Similarly, an **integer polynomial** is a polynomial with integer coefficients, and a **complex polynomial** is a polynomial with complex coefficients.

A polynomial in one indeterminate is called a *univariate polynomial*, a polynomial in more than one indeterminate is called a **multivariate polynomial**. A polynomial with two indeterminates is called a **bivariate polynomial**.^{[2]} These notions refer more to the kind of polynomials one is generally working with than to individual polynomials; for instance, when working with univariate polynomials, one does not exclude constant polynomials (which may result from the subtraction of non-constant polynomials), although strictly speaking, constant polynomials do not contain any indeterminates at all. It is possible to further classify multivariate polynomials as *bivariate*, *trivariate*, and so on, according to the maximum number of indeterminates allowed. Again, so that the set of objects under consideration be closed under subtraction, a study of trivariate polynomials usually allows bivariate polynomials, and so on. It is also common to say simply "polynomials in *x*, *y*, and *z*", listing the indeterminates allowed.

The evaluation of a polynomial consists of substituting a numerical value to each indeterminate and carrying out the indicated multiplications and additions. For polynomials in one indeterminate, the evaluation is usually more efficient (lower number of arithmetic operations to perform) using Horner's method:

Polynomials can be added using the associative law of addition (grouping all their terms together into a single sum), possibly followed by reordering (using the commutative law) and combining of like terms.^{[7]}^{[8]} For example, if

When polynomials are added together, the result is another polynomial.^{[9]}

Polynomials can also be multiplied. To expand the product of two polynomials into a sum of terms, the distributive law is repeatedly applied, which results in each term of one polynomial being multiplied by every term of the other.^{[7]} For example, if

As in the example, the product of polynomials is always a polynomial.^{[9]}^{[4]}

The division of one polynomial by another is not typically a polynomial. Instead, such ratios are a more general family of objects, called *rational fractions*, *rational expressions*, or *rational functions*, depending on context.^{[11]} This is analogous to the fact that the ratio of two integers is a rational number, not necessarily an integer.^{[12]}^{[13]} For example, the fraction 1/(*x*^{2} + 1) is not a polynomial, and it cannot be written as a finite sum of powers of the variable x.

For polynomials in one variable, there is a notion of Euclidean division of polynomials, generalizing the Euclidean division of integers.^{[e]} This notion of the division *a*(*x*)/*b*(*x*) results in two polynomials, a *quotient* *q*(*x*) and a *remainder* *r*(*x*), such that *a* = *b* *q* + *r* and degree(*r*) < degree(*b*). The quotient and remainder may be computed by any of several algorithms, including polynomial long division and synthetic division.^{[14]}

When the denominator *b*(*x*) is monic and linear, that is, *b*(*x*) = *x* − *c* for some constant c, then the polynomial remainder theorem asserts that the remainder of the division of *a*(*x*) by *b*(*x*) is the evaluation *a*(*c*).^{[13]} In this case, the quotient may be computed by Ruffini's rule, a special case of synthetic division.^{[15]}

All polynomials with coefficients in a unique factorization domain (for example, the integers or a field) also have a factored form in which the polynomial is written as a product of irreducible polynomials and a constant. This factored form is unique up to the order of the factors and their multiplication by an invertible constant. In the case of the field of complex numbers, the irreducible factors are linear. Over the real numbers, they have the degree either one or two. Over the integers and the rational numbers the irreducible factors may have any degree.^{[16]} For example, the factored form of

The computation of the factored form, called *factorization* is, in general, too difficult to be done by hand-written computation. However, efficient polynomial factorization algorithms are available in most computer algebra systems.

Calculating derivatives and integrals of polynomials is particularly simple, compared to other kinds of functions. The derivative of the polynomial

For polynomials whose coefficients come from more abstract settings (for example, if the coefficients are integers modulo some prime number *p*, or elements of an arbitrary ring), the formula for the derivative can still be interpreted formally, with the coefficient *ka*_{k} understood to mean the sum of k copies of *a*_{k}. For example, over the integers modulo *p*, the derivative of the polynomial *x*^{p} + *x* is the polynomial 1.^{[17]}

A *polynomial function* is a function that can be defined by evaluating a polynomial. More precisely, a function *f* of one argument from a given domain is a polynomial function if there exists a polynomial

is a polynomial function of one variable. Polynomial functions of several variables are similarly defined, using polynomials in more than one indeterminate, as in

A polynomial function in one real variable can be represented by a graph.

A non-constant polynomial function tends to infinity when the variable increases indefinitely (in absolute value). If the degree is higher than one, the graph does not have any asymptote. It has two parabolic branches with vertical direction (one branch for positive *x* and one for negative *x*).

Polynomial graphs are analyzed in calculus using intercepts, slopes, concavity, and end behavior.

A *polynomial equation*, also called an *algebraic equation*, is an equation of the form^{[18]}

When considering equations, the indeterminates (variables) of polynomials are also called unknowns, and the *solutions* are the possible values of the unknowns for which the equality is true (in general more than one solution may exist). A polynomial equation stands in contrast to a *polynomial identity* like (*x* + *y*)(*x* − *y*) = *x*^{2} − *y*^{2}, where both expressions represent the same polynomial in different forms, and as a consequence any evaluation of both members gives a valid equality.

In elementary algebra, methods such as the quadratic formula are taught for solving all first degree and second degree polynomial equations in one variable. There are also formulas for the cubic and quartic equations. For higher degrees, the Abel–Ruffini theorem asserts that there can not exist a general formula in radicals. However, root-finding algorithms may be used to find numerical approximations of the roots of a polynomial expression of any degree.

The number of solutions of a polynomial equation with real coefficients may not exceed the degree, and equals the degree when the complex solutions are counted with their multiplicity. This fact is called the fundamental theorem of algebra.

A *root* of a nonzero univariate polynomial *P* is a value a of x such that *P*(*a*) = 0. In other words, a root of P is a solutions of the polynomial equation *P*(*x*) = 0 or a zero of the polynomial function defined by *P*. In the case of the zero polynomial, every number is ia zero of the corresponding function, and the concept of root is rarely considered.

A number *a* is a root of a polynomial *P* if and only if the linear polynomial *x* − *a* divides *P*, that is if there is another polynomial *Q* such that *P* = (*x* − *a*) Q. It may happen that a power (greater than 1) of *x* − *a* divides *P*; in this case, *a* is a *multiple root* of *P*, and otherwise *a* is **simple root** of *P*. If *P* is a nonzero polynomial, there is a highest power *m* such that (*x* − *a*)^{m} divides *P*, which is called the *multiplicity* of *a* as a root of *P*. The number of roots of a nonzero polynomial *P*, counted with their respective multiplicities, cannot exceed the degree of *P*,^{[19]} and equals this degree if all complex roots are considered (this is a consequence of the fundamental theorem of algebra.
The coefficients of a polynomial and its roots are related by Vieta's formulas.

Some polynomials, such as *x*^{2} + 1, do not have any roots among the real numbers. If, however, the set of accepted solutions is expanded to the complex numbers, every non-constant polynomial has at least one root; this is the fundamental theorem of algebra. By successively dividing out factors *x* − *a*, one sees that any polynomial with complex coefficients can be written as a constant (its leading coefficient) times a product of such polynomial factors of degree 1; as a consequence, the number of (complex) roots counted with their multiplicities is exactly equal to the degree of the polynomial.

When there is no algebraic expression for the roots, and when such an algebraic expression exists but is too complicated to be useful, the unique way of solving is to compute numerical approximations of the solutions.^{[20]} There are many methods for that; some are restricted to polynomials and others may apply to any continuous function. The most efficient algorithms allow solving easily (on a computer) polynomial equations of degree higher than 1,000 (see Root-finding algorithm).

For polynomials in more than one indeterminate, the combinations of values for the variables for which the polynomial function takes the value zero are generally called *zeros* instead of "roots". The study of the sets of zeros of polynomials is the object of algebraic geometry. For a set of polynomial equations in several unknowns, there are algorithms to decide whether they have a finite number of complex solutions, and, if this number is finite, for computing the solutions. See System of polynomial equations.

The special case where all the polynomials are of degree one is called a system of linear equations, for which another range of different solution methods exist, including the classical Gaussian elimination.

A polynomial equation for which one is interested only in the solutions which are integers is called a Diophantine equation. Solving Diophantine equations is generally a very hard task. It has been proved that there cannot be any general algorithm for solving them, and even for deciding whether the set of solutions is empty (see Hilbert's tenth problem). Some of the most famous problems that have been solved during the fifty last years are related to Diophantine equations, such as Fermat's Last Theorem.

A **trigonometric polynomial** is a finite linear combination of functions sin(*nx*) and cos(*nx*) with *n* taking on the values of one or more natural numbers.^{[21]} The coefficients may be taken as real numbers, for real-valued functions.

If sin(*nx*) and cos(*nx*) are expanded in terms of sin(*x*) and cos(*x*), a trigonometric polynomial becomes a polynomial in the two variables sin(*x*) and cos(*x*) (using ). Conversely, every polynomial in sin(*x*) and cos(*x*) may be converted, with Product-to-sum identities, into a linear combination of functions sin(*nx*) and cos(*nx*). This equivalence explains why linear combinations are called polynomials.

For complex coefficients, there is no difference between such a function and a finite Fourier series.

Trigonometric polynomials are widely used, for example in trigonometric interpolation applied to the interpolation of periodic functions. They are used also in the discrete Fourier transform.

A matrix polynomial is a polynomial with square matrices as variables.^{[22]} Given an ordinary, scalar-valued polynomial

A **matrix polynomial equation** is an equality between two matrix polynomials, which holds for the specific matrices in question. A **matrix polynomial identity** is a matrix polynomial equation which holds for all matrices *A* in a specified matrix ring *M _{n}*(

*R*).

Laurent polynomials are like polynomials, but allow negative powers of the variable(s) to occur.

A rational fraction is the quotient (algebraic fraction) of two polynomials. Any algebraic expression that can be rewritten as a rational fraction is a rational function.

While polynomial functions are defined for all values of the variables, a rational function is defined only for the values of the variables for which the denominator is not zero.

The rational fractions include the Laurent polynomials, but do not limit denominators to powers of an indeterminate.

Formal power series are like polynomials, but allow infinitely many non-zero terms to occur, so that they do not have finite degree. Unlike polynomials they cannot in general be explicitly and fully written down (just like irrational numbers cannot), but the rules for manipulating their terms are the same as for polynomials. Non-formal power series also generalize polynomials, but the multiplication of two power series may not converge.

A bivariate polynomial where the second variable is substituted by an exponential function applied to the first variable, for example *P*(*x*, *e*^{x}), may be called an exponential polynomial.

So, most of the theory of the multivariate case can be reduced to an iterated univariate case.

The map from *R* to *R*[*x*] sending *r* to itself considered as a constant polynomial is an injective ring homomorphism, by which *R* is viewed as a subring of *R*[*x*]. In particular, *R*[*x*] is an algebra over *R*.

One can think of the ring *R*[*x*] as arising from *R* by adding one new element *x* to *R*, and extending in a minimal way to a ring in which *x* satisfies no other relations than the obligatory ones, plus commutation with all elements of *R* (that is *xr* = *rx*). To do this, one must add all powers of *x* and their linear combinations as well.

Formation of the polynomial ring, together with forming factor rings by factoring out ideals, are important tools for constructing new rings out of known ones. For instance, the ring (in fact field) of complex numbers, which can be constructed from the polynomial ring *R*[*x*] over the real numbers by factoring out the ideal of multiples of the polynomial *x*^{2} + 1. Another example is the construction of finite fields, which proceeds similarly, starting out with the field of integers modulo some prime number as the coefficient ring *R* (see modular arithmetic).

If *R* is commutative, then one can associate with every polynomial *P* in *R*[*x*] a *polynomial function* *f* with domain and range equal to *R*. (More generally, one can take domain and range to be any same unital associative algebra over *R*.) One obtains the value *f*(*r*) by substitution of the value *r* for the symbol *x* in *P*. One reason to distinguish between polynomials and polynomial functions is that, over some rings, different polynomials may give rise to the same polynomial function (see Fermat's little theorem for an example where *R* is the integers modulo *p*). This is not the case when *R* is the real or complex numbers, whence the two concepts are not always distinguished in analysis. An even more important reason to distinguish between polynomials and polynomial functions is that many operations on polynomials (like Euclidean division) require looking at what a polynomial is composed of as an expression rather than evaluating it at some constant value for *x*.

If *F* is a field and *f* and *g* are polynomials in *F*[*x*] with *g* ≠ 0, then there exist unique polynomials *q* and *r* in *F*[*x*] with

and such that the degree of *r* is smaller than the degree of *g* (using the convention that the polynomial 0 has a negative degree). The polynomials *q* and *r* are uniquely determined by *f* and *g*. This is called *Euclidean division, division with remainder* or *polynomial long division* and shows that the ring *F*[*x*] is a Euclidean domain.

Analogously, *prime polynomials* (more correctly, *irreducible polynomials*) can be defined as . In the case of coefficients in a ring, *"non-constant"* must be replaced by *"non-constant or non-unit"* (both definitions agree in the case of coefficients in a field). Any polynomial may be decomposed into the product of an invertible constant by a product of irreducible polynomials. If the coefficients belong to a field or a unique factorization domain this decomposition is unique up to the order of the factors and the multiplication of any non-unit factor by a unit (and division of the unit factor by the same unit). When the coefficients belong to integers, rational numbers or a finite field, there are algorithms to test irreducibility and to compute the factorization into irreducible polynomials (see Factorization of polynomials). These algorithms are not practicable for hand-written computation, but are available in any computer algebra system. Eisenstein's criterion can also be used in some cases to determine irreducibility.

*non-zero polynomials which cannot be factorized into the product of two non-constant polynomials*

In modern positional numbers systems, such as the decimal system, the digits and their positions in the representation of an integer, for example, 45, are a shorthand notation for a polynomial in the radix or base, in this case, 4 × 10^{1} + 5 × 10^{0}. As another example, in radix 5, a string of digits such as 132 denotes the (decimal) number 1 × 5^{2} + 3 × 5^{1} + 2 × 5^{0} = 42. This representation is unique. Let *b* be a positive integer greater than 1. Then every positive integer *a* can be expressed uniquely in the form

The simple structure of polynomial functions makes them quite useful in analyzing general functions using polynomial approximations. An important example in calculus is Taylor's theorem, which roughly states that every differentiable function locally looks like a polynomial function, and the Stone–Weierstrass theorem, which states that every continuous function defined on a compact interval of the real axis can be approximated on the whole interval as closely as desired by a polynomial function. Practical methods of approximation include polynomial interpolation and the use of splines.^{[27]}

Polynomials are frequently used to encode information about some other object. The characteristic polynomial of a matrix or linear operator contains information about the operator's eigenvalues. The minimal polynomial of an algebraic element records the simplest algebraic relation satisfied by that element. The chromatic polynomial of a graph counts the number of proper colourings of that graph.

The term "polynomial", as an adjective, can also be used for quantities or functions that can be written in polynomial form. For example, in computational complexity theory the phrase *polynomial time* means that the time it takes to complete an algorithm is bounded by a polynomial function of some variable, such as the size of the input.

Determining the roots of polynomials, or "solving algebraic equations", is among the oldest problems in mathematics. However, the elegant and practical notation we use today only developed beginning in the 15th century. Before that, equations were written out in words. For example, an algebra problem from the Chinese Arithmetic in Nine Sections, circa 200 BCE, begins "Three sheafs of good crop, two sheafs of mediocre crop, and one sheaf of bad crop are sold for 29 dou." We would write 3*x* + 2*y* + *z* = 29.

The earliest known use of the equal sign is in Robert Recorde's *The Whetstone of Witte*, 1557. The signs + for addition, − for subtraction, and the use of a letter for an unknown appear in Michael Stifel's *Arithemetica integra*, 1544. René Descartes, in *La géometrie*, 1637, introduced the concept of the graph of a polynomial equation. He popularized the use of letters from the beginning of the alphabet to denote constants and letters from the end of the alphabet to denote variables, as can be seen above, in the general formula for a polynomial in one variable, where the *a*'s denote constants and *x* denotes a variable. Descartes introduced the use of superscripts to denote exponents as well.^{[28]}