Forward stable computation of roots of real polynomials with only real distinct roots (original) (raw)

Forward Stable Computation of Roots of Real Polynomials with Real Simple Roots

Applied Mathematics & Information Sciences

As showed in (Fiedler, 1990), any polynomial can be expressed as a characteristic polynomial of a complex symmetric arrowhead matrix. This expression is not unique. If the polynomial is real with only real distinct roots, the matrix can be chosen real. By using the accurate forward stable algorithm for computing eigenvalues of the real symmetric arrowhead matrices from (Jakovčević Stor, Slapničar, Barlow, 2015), we derive a new forward stable algorithm for computation of roots of such polynomials in O(n 2) operations. The algorithm computes each root to almost full accuracy. In some cases, the algorithm invokes extended precision routines, but only in the non-iterative part. Our examples include numerically difficult problems, like the well-known Wilkinson's polynomials. Our algorithm compares favorably to other method for polynomial root-finding, like MPSolve or Newton's method.

Fast and Backward Stable Computation of Roots of Polynomials

SIAM Journal on Matrix Analysis and Applications, 2015

A stable algorithm to compute the roots of polynomials is presented. The roots are found by computing the eigenvalues of the associated companion matrix by Francis's implicitly-shifted QR algorithm. A companion matrix is an upper Hessenberg matrix that is unitary-plus-rank-one, that is, it is the sum of a unitary matrix and a rank-one matrix. These properties are preserved by iterations of Francis's algorithm, and it is these properties that are exploited here. The matrix is represented as a product of 3n − 1 Givens rotators plus the rank-one part, so only O(n) storage space is required. In fact, the information about the rank-one part is also encoded in the rotators, so it is not necessary to store the rank-one part explicitly. Francis's algorithm implemented on this representation requires only O(n) flops per iteration and thus O(n 2) flops overall. The algorithm is described, backward stability is proved under certain conditions on the polynomial coefficients, and an extensive set of numerical experiments is presented. The algorithm is shown to be about as accurate as the (slow) Francis QR algorithm applied to the companion matrix without exploiting the structure. It is faster than other fast methods that have been proposed, and its accuracy is comparable or better.

An E cient Algorithm for the Real Root and Symmetric Tridiagonal Eigenvalue Problems

1999

Given a univariate complex polynomial f(x) of degree n with rational coe cients expressed as a ratio of two integers < 2, the root problem is to nd all the roots of f(x) up to speci ed precision 2 . In this paper we assume the arithmetic model for computation. We give an improved algorithm for nding a well-isolated splitting interval and for fast root proximity veri cation. Using these results, we give an algorithm for the real root problem: where all the roots of the polynomial are real. Our real root algorithm has time cost of O(n log n(logn+ log b)); where b = m + . Our arithmetic time cost is thus O(n log n) even in the case of high precision b n. This is within a small polylog factor of optimality, thus (perhaps surprisingly) upper bounding the arithmetic complexity of the real root problem to nearly the same as basic arithmetic operations on polynomials. The symmetric tridiagonal problem is: given an n n symmetric tridiagonal matrix, with 3n nonzero rational entries each ex...

Backward stability of polynomial root-finding using Fiedler companion matrices

IMA Journal of Numerical Analysis, 2015

Computing roots of scalar polynomials as the eigenvalues of Frobenius companion matrices using backward stable eigenvalue algorithms is a classical approach. The introduction of new families of companion matrices allows for the use of other matrices in the root-finding problem. In this paper, we analyze the backward stability of polynomial root-finding algorithms via Fiedler companion matrices. In other words, given a polynomial p(z), the question is to determine whether the whole set of computed eigenvalues of the companion matrix, obtained with a backward stable algorithm for the standard eigenvalue problem, are the set of roots of a nearby polynomial or not. We show that, if the coefficients of p(z) are bounded in absolute value by a moderate number, then algorithms for polynomial root-finding using Fiedler matrices are backward stable, and Fiedler matrices are as good as the Frobenius companion matrices. This allows us to use Fiedler companion matrices with favorable structures in the polynomial root-finding problem. However, when some of the coefficients of the polynomial are large, Fiedler companion matrices may produce larger backward errors than Frobenius companion matrices, although in this case neither Frobenius nor Fiedler matrices lead to backward stable computations. To prove this we obtain explicit expressions for the change, to first order, of the characteristic polynomial coefficients of Fielder matrices under small perturbations. We show that, for all Fiedler matrices except the Frobenius ones, this change involves quadratic terms in the coefficients of the characteristic polynomial of the original matrix, while for the Frobenius matrices it only involves linear terms. We present extensive numerical experiments that support these theoretical results. The effect of balancing these matrices is also investigated.

Efficient polynomial system solving by numerical methods

Contemporary Mathematics, 2011

These pages contain a short overview on the state of the art of efficient Numerical Analysis methods that solve systems of multivariate polynomial equations. We focus on the work of Steve Smale who initiated this research framework, and on the collaboration between Steve Smale and Mike Shub, which set the foundations of this approach to polynomial system-solving.

A fitting algorithm for real coefficient polynomial rooting

Journal of Computational and Applied Mathematics, 2012

A new algorithm for computing all roots of polynomials with real coefficients is introduced. The principle behind the new algorithm is a fitting of the convolution of two subsequences onto a given polynomial coefficient sequence. This concept is used in the initial stage of the algorithm for a recursive slicing of a given polynomial into degree-2 subpolynomials from which initial root estimates are computed in closed form. This concept is further used in a post-fitting stage where the initial root estimates are refined to high numerical accuracy. A reduction of absolute root errors by a factor of 100 compared to the famous Companion matrix eigenvalue method based on the unsymmetric QR algorithm is not uncommon. Detailed computer experiments validate our claims.

Numerical Computation of Polynomial Roots Using MPSolve Version 2.2

2000

We describe the implementation and the use of the package MPSolve (Multiprecision Polynomial Solver) for the approximation of the roots of a univariate polynomial p(x) = n i=0 aix i . The package relies on an algorithm, based on simultaneous approximation techniques, that generates a sequence A1 ⊃ A2 ⊃ . . . ⊃ A k of nested sets containing the root neighborhood of p(x) (defined by the precision of the coefficients) and outputs Newton-isolated approximations of the roots. The algorithm, particularly suited to deal with sparse polynomials or polynomials defined by straight line programs, adaptively adjusts the working precision to the conditioning of each root. In this way, only the leading digits of the input coefficients sufficient to recover the requested information on the roots are actually involved in the computation. This feature makes our algorithm particularly suited to deal with polynomials arising from certain symbolic computations where the coefficients are typically integers with hundreds or thousands digits.

A fast method for computing the principal nth roots of complex matrices

1986

Based on the generalized continued-fraction method for finding the nth roots of real numbers, this paper presents a fast computation method for finding the principal nth roots of complex matrices. Computation algorithms with high convergence rates are developed, and their global convergence properties are investigated from the viewpoint of systems theory. *This work was supported in part by the U.S. Army Research Office, under contract DAAG 29-89Km37, and U.S. Army Missile Command, under contract DAAH 01.85C-Alll.

A Numerical Method for Computing the Roots of Non-Singular Complex-Valued Matrices

Symmetry

A method for the computation of the n th roots of a general complex-valued r × r non-singular matrix ? is presented. The proposed procedure is based on the Dunford–Taylor integral (also ascribed to Riesz–Fantappiè) and relies, only, on the knowledge of the invariants of the matrix, so circumventing the computation of the relevant eigenvalues. Several worked examples are illustrated to validate the developed algorithm in the case of higher order matrices.

IMPROVED INITIALIZATION OF THE ACCELERATED AND ROBUST QR-LIKE POLYNOMIAL ROOT-FINDINGЃ

2004

We approximate polynomial roots numerically as the eigenvalues of a unitary diagonal plus rank-one matrix. We rely on our earlier adaptation of the ¤ ¦ ¥ algorithm, which exploits the semiseparable matrix structure to approximate the eigenvalues in a fast and robust way, but we substantially improve the performance of the resulting algorithm at the initial stage, as confirmed by our numerical tests.