· 5 min read
How to Find Every Root of a Polynomial
Heshan Fernando
Co-founder & COO
A cubic crosses the x-axis once on the graph, so it looks like one root. It has three. Two of them are complex, they do not appear on a real-axis plot, and in a stability analysis they are frequently the ones that matter.
Counting roots from a graph systematically undercounts, and the roots the graph hides are often the interesting ones.
Every polynomial has exactly n roots
The fundamental theorem of algebra: a degree n polynomial has exactly n roots over the complex numbers, counted with multiplicity.
Two clauses carry the weight.
Over the complex numbers. Real roots are where the curve crosses the axis. Complex roots exist wherever it does not, and with real coefficients they always come in conjugate pairs — which is why a cubic has one or three real roots, never two.
Counted with multiplicity. A repeated root counts as many times as it repeats. (x-2)² has a root at 2 with multiplicity 2, and that is genuinely different from two distinct roots near 2.
Multiplicity changes the shape at that point: multiplicity 2 touches the axis and turns back without crossing; multiplicity 3 crosses with a flattening. If you are reading a graph, that flattening is the visible signature of a repeated root.
| Degree | Real roots possible | Complex roots |
|---|---|---|
| 2 | 0 or 2 | 0 or 2 (a pair) |
| 3 | 1 or 3 | 0 or 2 |
| 4 | 0, 2 or 4 | 0, 2 or 4 |
Where closed forms run out
Quadratics have the familiar formula. Cubics and quartics have closed-form solutions too — considerably messier, and rarely used in practice.
Degree five and above have no general solution in radicals. That is the Abel-Ruffini theorem, and it is a proof of impossibility rather than a gap waiting to be filled. No formula exists, and none will.
So quintics and beyond are solved numerically, which means the answers are approximations with a precision limit rather than exact values. That distinction matters when a root is used in further calculation — errors propagate, and a root accurate to eight decimals is not the same as an exact one.
Ill-conditioning is the practical trap
Some polynomials have roots that move enormously in response to tiny changes in the coefficients.
The classic demonstration is Wilkinson’s polynomial, where perturbing one coefficient in the tenth decimal place moves roots by whole units. It is a constructed example, and the underlying sensitivity appears in real problems — particularly with high degree and widely separated roots.
The practical consequence: if your coefficients came from measurement rather than exact arithmetic, the roots inherit that uncertainty amplified. Checking how much the roots move when a coefficient is nudged is worth doing before relying on them.
Rational roots are worth checking first
Before reaching for a numerical method, a quick test frequently finds exact answers.
The rational root theorem says that any rational root of a polynomial with integer coefficients is a ratio of a factor of the constant term to a factor of the leading coefficient. That produces a short list of candidates to test.
For a polynomial like x³ − 6x² + 11x − 6, the candidates are the factors of 6 — and 1, 2 and 3 all work, giving the complete factorisation exactly rather than numerically.
Many textbook and applied polynomials have rational roots by construction. Finding one reduces the degree by division, which frequently makes the remainder solvable in closed form. Ten seconds of checking can turn a numerical problem into an exact one.
Common mistakes to avoid
- Counting roots from a real-axis graph, which cannot show complex ones.
- Treating a repeated root as two distinct nearby roots, which behaves differently in most applications.
- Omitting zero coefficients when entering a polynomial with missing terms.
- Assuming a numerical root is exact and propagating it through further calculation.
- Ignoring conditioning when the coefficients came from measured data.
How to do it with Polynomial Root Finder
The Polynomial Root Finder reports all roots with multiplicity.
- Enter coefficients from the highest power down, including zeros for missing terms.
- Show complex roots — for anything above degree 1, they are part of the answer.
- Read the multiplicity column, since a repeated root behaves differently from two close ones.
- For measured coefficients, nudge one and see how far the roots move.
Other maths tools are in the tools directory.
Frequently asked questions
Why does my cubic have complex roots?
Because it only crosses the axis once. A degree three polynomial has three roots, and with real coefficients the non-real ones come in a conjugate pair — so a cubic has one or three real roots, never exactly two.
Is there a formula for degree five?
No general one in radicals, and that is proven rather than unknown. Degree five and above are solved numerically, which is why those answers carry a precision limit.
What does multiplicity mean?
How many times a root repeats. It changes the curve’s behaviour there — multiplicity 2 touches the axis without crossing, multiplicity 3 crosses with a flattening.
Final thought
Ask for the complex roots even when you only care about real ones. A cubic with one visible crossing has two more roots, and in a stability problem those are usually the answer.