University of PittsbrughPitt Home | Contact Us | Finding People |
Department of Mathematics


Table of Contents


Spring 2002

HOME |

Zeros Of Polynomials: Article by Jasun Gong, Rupert Venzke and Paul Gartside


The problem of finding zeros of polynomials is an ancient one. The Sumerians found the well known formula for the roots of a quadratic. Later, in the Middle Ages, exact formula were found for the roots of cubic and quartic polynomials. A significant advance came with Abel's proof that some quintics do not have solutions in terms of radicals and Galois' theory of solvable polynomials. Since finding exact solutions is impossible, in general, the emphasis moved to finding approximate roots of a polynomial.

Newton's Method - known to all from Calculus I - is an iterative technique for finding an approximation to a single zero of a function. To find all roots of a polynomial p, the naive approach is to find an approximate root r1 using Newtons Method, and factoring p as (x - r1) . q, and then inductively applying Newton;s Method to obtain an approximate root to q. This process is called deflation. However, since the value of the root obtained by Newton's Method is approximate all of the coefficients of q also are approximate - sometimes the roots of the approximate q are wildly different from the remaining roots of p. For example if p=(x-1)(x-2)...(x-20), and our approximate root r1=20.0000001 (which is very close to the exact root 20), then working to 10 decimal places the zeros of p divided by (x-20) all have modulus > 17, and all but one are complex!

The purpose of our project was to read a recent paper of Hubbard et al concerning the geometry and topology of Newton's Method when applied to polynomials. Based on our understanding of the paper we have written java applets and other java programs which take as their input an arbitrary complex polynomial, and (1) renormalizes it so that all roots lie in the unit disk, (2) generates a small - of size n (log n)2, where n is the degree of the polynomial - set of seeds for Newton's method, so that at least one seed will converge to each root of the polynomial, and then (3) calculates the roots of the polynomial using Newton's Method applied to the given set of seeds. We encountered problems with javas fixed precision arithmetic so we wrote classes to handle arbitrary precision complex arithmetic.

The final stage of the project has been to try to extend the results of Hubbard et al to functions outside of the rather small class of polynomials. The natural extension is to holomorphic functions defined on a domain containing the closed unit disk. Such a function has only finitely many zeros in the unit disk, and is sufficiently nice that Newton's Method is applicable. We have encountered many obstacles in the way of such an extension. The behavior of Julia sets of holomorphic functions other than polynomials (and rational functions) is poorly understood. Also there are problems to do with what is computable when talking about functions defined by (infinite) power series. Nonetheless we now believe we have a provably correct algorithm for finding all zeros in the unit disk of a holomorphic function. It is however very inefficient. Perhaps further understanding will lead to a better algorithm.

A full project report, and various applets, including those calculating all roots of a given complex polynomial, can be found here.



MathZine Table of Contents




Mathematics Home| Pitt Home| Contact Us| Finding People| FTP Site| Top of Page