Skip to main content
Log in

On the parallel evaluation of a sparse polynomial at a point

  • Published:
Numerical Algorithms Aims and scope Submit manuscript

Abstract

A new version of the Ruffini–Horner rule is presented for the evaluation of a polynomial of degree n at a point. In the PRAM model of parallel computation the new algorithm requires log n parallel steps with n/2+1 processors and the total number of arithmetic operations is n+⌈log2(n+1)⌉ -1 multiplications and n additions. If the polynomial is sparse, i.e., the number of nonzero coefficients is k≪ n, then the total number of operations is at most k(⌈log n⌉- ⌊log k⌋)+2k+⌈log n⌉. Moreover, similarly to the customary Ruffini–Horner rule, the algorithm is backward numerically stable. In other words, the value provided by applying the algorithm in floating point arithmetic with machine precision μ coincides with the value taken on at the same point by a slightly perturbed polynomial.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Similar content being viewed by others

References

  1. O. Aberth, Iteration methods for finding all zeros of a polynomial simultaneously, Math. Comp. 27(122) (1973) 339–344.

    Article  MATH  MathSciNet  Google Scholar 

  2. D.A. Bini, Numerical computation of polynomial zeros by means of Aberth's method, Numer. Algorithms 13 (1996) 179–200.

    Article  MATH  MathSciNet  Google Scholar 

  3. D.A. Bini and V. Burchielli, Mpsolve 1.0: A Fortran 90 Package for the numerical computation of polynomial roots, Technical Report, Dipartimento di Matematica, Università di Pisa (1997).

  4. D.A. Bini and G. Fiorentino, Adaptive multiprecision algorithm for univariate polynomial zeros, in: Proc. of the 1st Internat. MATHEMATICA Symposium (Computational Mechanics Publications, Southampton, 1995) pp. 53–60.

    Google Scholar 

  5. D.A. Bini and G. Fiorentino, A multiprecision implementation of a poly-algorithm for univariate polynomial zeros, in: Proc. of the POSSO Workshop on Software, eds. J.C. Faugère, J. Marchand and R. Rioboo (1995).

  6. D.A. Bini and G. Fiorentino, Mpsolve: Numerical computation of polynomial roots v2.0, Technical FRISCO Report (1998).

  7. W. Börsch-Supan, A-posteriori error bounds for the zeros of polynomials, Numer. Math. 5 (1963) 380–398.

    Article  MathSciNet  Google Scholar 

  8. E. Durand, Solutions Numériques des Équations Algébriques, Tome 1: Equations du Type F(X) = 0; Racines d'un Polynôme (Masson, Paris, 1960).

    Google Scholar 

  9. L.W. Ehrlich, A modified Newton method for polynomials, Comm. ACM 10(2) (1967) 107–108.

    Article  MATH  Google Scholar 

  10. E. Hansen, M. Patrick and J. Rusnak, Some modifications of Laguerre's method, BIT 17 (1977) 409–417.

  11. M.A. Jenkins and J.F. Traub, A three stage variable shift iteration for polynomial zeros and its relation to generalized Rayleigh iteration, Numer. Math. 14 (1970) 252–263.

    Article  MATH  MathSciNet  Google Scholar 

  12. I.O. Kerner, Ein Gesamtschrittverfahren zur Berechnung der Nullstellen von Polynomen, Numer. Math. 8 (1966) 290–294.

    Article  MATH  MathSciNet  Google Scholar 

  13. K. Madsen and J. Reid, Fortran subroutines for finding polynomial zeros, Technical Report HL 75/1172(C.13), Computer Science and Systems Divisions, A.E.R.E. Harwell, Oxford (1975).

    Google Scholar 

  14. V.H. Maehly, Zur iterativen Auflösing algebraischer Gleichungen, Z. Angew. Math. Phys. 5 (1954) 260–263.

    Article  MATH  MathSciNet  Google Scholar 

  15. S. Tričković M.S. Petković and S. Ilić, A family of simultaneous zero finding methods, Comput. Math. Appl. 34 (1997) 49–59.

    Google Scholar 

  16. A.W.M. Nourein, An improvement on Nourein's method for the simultaneous determination of the zeros of a polynomial (an algorithm), J. Comput. Appl. Math. 3 (1977) 109–110.

    Article  MATH  Google Scholar 

  17. A.W.M. Nourein, An improvement on two iteration methods for simultaneous determination of the zeros of a polynomial, Internat. J. Comput. Math. 6 (1977) 241–252.

    MATH  MathSciNet  Google Scholar 

  18. V.Y. Pan, On methods of computing the values of polynomials, Uspekhi Mat. Nauk 21(1) (127) (1966) 103–134.

    MATH  Google Scholar 

  19. K. Weierstrass, Neuer Beweis des Satzes, dass jede ganze rationale Funktion einer Veränderlichen dargestellt werden kann als ein Product aus linearen Functionen derselben Veränderlichen, in: Gesammelte Werke, Vol. 3 (1903), pp. 251–269. (Johnson Reprint Corp., New York, 1967.)

    Google Scholar 

  20. W. Werner, On the simultaneous determination of polynomial roots, Lecture Notes in Mathematics 953 (Springer, New York, 1982) pp. 188–202.

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Rights and permissions

Reprints and permissions

About this article

Cite this article

Bini, D.A., Fiorentino, G. On the parallel evaluation of a sparse polynomial at a point. Numerical Algorithms 20, 323–329 (1999). https://doi.org/10.1023/A:1019116203957

Download citation

  • Issue Date:

  • DOI: https://doi.org/10.1023/A:1019116203957

Navigation