Abstract
We describe Ccluster, a software for computing natural \(\varepsilon \)-clusters of complex roots in a given box of the complex plane. This algorithm from Becker et al. (2016) is near-optimal when applied to the benchmark problem of isolating all complex roots of an integer polynomial. It is one of the first implementations of a near-optimal algorithm for complex roots. We describe some low level techniques for speeding up the algorithm. Its performance is compared with the well-known MPSolve library and Maple.
Rémi’s work has received funding from the European Union’s Horizon 2020 research and innovation programme under grant agreement No. 676541.
Victor’s work is supported by NSF Grants # CCF-1116736 and # CCF-1563942 and by PSC CUNY Award 698130048.
Chee’s work is supported by NSF Grants # CCF-1423228 and # CCF-1564132.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Notes
- 1.
Irina Voiculescu informed us that her student Dan-Andrei Gheorghe has independently implemented the same algorithm in a Masters Thesis Project (May 18, 2017) at Oxford University. Sewon Park and Martin Ziegler at KAIST, Korea, have implemented a modified version of Becker et al. (2016) for polynomials having only real roots being the eigenvalues of symmetric square matrices with real coefficients. See the technical report CS-TR-2018-415 at https://cs.kaist.ac.kr/research/techReport.
- 2.
https://julialang.org/. Download our code in https://github.com/rimbach/Ccluster.
- 3.
http://arblib.org/. Download our code in https://github.com/rimbach/Ccluster.jl.
- 4.
We treat two-valued predicates for simplicity; the discussion could be extended to predicates (like \(\widetilde{T}^{G}_{*}\)) which returns a finite set of values.
References
Becker, R., Sagraloff, M., Sharma, V., Xu, J., Yap, C.: Complexity analysis of root clustering for a complex polynomial. In: Proceedings of the ACM on International Symposium on Symbolic and Algebraic Computation, pp. 71–78. ACM (2016)
Becker, R., Sagraloff, M., Sharma, V., Yap, C.: A near-optimal subdivision algorithm for complex root isolation based on the pellet test and newton iteration. J. Symb. Comput. 86, 51–96 (2018)
Bini, D.A., Fiorentino, G.: Design, analysis, and implementation of a multiprecision polynomial rootfinder. Numer. Algorithms 23(2–3), 127–173 (2000)
Bini, D.A., Robol, L.: Solving secular and polynomial equations: a multiprecision algorithm. J. Comput. Appl. Math. 272, 276–292 (2014)
Brönnimann, H., Burnikel, C., Pion, S.: Interval arithmetic yields efficient dynamic filters for computational geometry. Discrete Appl. Math. 109(1–2), 25–47 (2001)
Emiris, I.Z., Pan, V.Y., Tsigaridas, E.P.: Algebraic algorithms. In: Computing Handbook, Third Edition: Computer Science and Software Engineering, pp. 10:1–10:30. Chapman and Hall/CRC (2014)
Fortune, S.: An iterated eigenvalue algorithm for approximating roots of univariate polynomials. J. Symb. Comput. 33(5), 627–646 (2002)
Giusti, M., Lecerf, G., Salvy, B., Yakoubsohn, J.-C.: On location and approximation of clusters of zeros of analytic functions. Found. Comput. Math. 5(3), 257–311 (2005)
Gourdon, X.: Combinatoire, Algorithmique et Géométrie des Polynomes. Ph.D. thesis, École Polytechnique (1996)
Hribernig, V., Stetter, H.J.: Detection and validation of clusters of polynomial zeros. J. Symb. Comput. 24(6), 667–681 (1997)
Kobel, A., Rouillier, F., Sagraloff, M.: Computing real roots of real polynomials... and now for real! In: Proceedings of the ACM on International Symposium on Symbolic and Algebraic Computation, pp. 303–310. ACM (2016)
Niu, X.-M., Sakurai, T., Sugiura, H.: A verified method for bounding clusters of zeros of analytic functions. J. Comput. Appl. Math. 199(2), 263–270 (2007)
Pan, V.Y.: Univariate polynomials: nearly optimal algorithms for numerical factorization and root-finding. J. Symb. Comput. 33(5), 701–733 (2002)
Rouillier, F., Zimmermann, P.: Efficient isolation of polynomial’s real roots. J. Comput. Appl. Math. 162(1), 33–50 (2004)
Sagraloff, M., Mehlhorn, K.: Computing real roots of real polynomials. J. Symb. Comput. 73, 46–86 (2016)
Yap, C., Sagraloff, M., Sharma, V.: Analytic root clustering: a complete algorithm using soft zero tests. In: Bonizzoni, P., Brattka, V., Löwe, B. (eds.) CiE 2013. LNCS, vol. 7921, pp. 434–444. Springer, Heidelberg (2013). https://doi.org/10.1007/978-3-642-39053-1_51
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2018 Springer International Publishing AG, part of Springer Nature
About this paper
Cite this paper
Imbach, R., Pan, V.Y., Yap, C. (2018). Implementation of a Near-Optimal Complex Root Clustering Algorithm. In: Davenport, J., Kauers, M., Labahn, G., Urban, J. (eds) Mathematical Software – ICMS 2018. ICMS 2018. Lecture Notes in Computer Science(), vol 10931. Springer, Cham. https://doi.org/10.1007/978-3-319-96418-8_28
Download citation
DOI: https://doi.org/10.1007/978-3-319-96418-8_28
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-319-96417-1
Online ISBN: 978-3-319-96418-8
eBook Packages: Computer ScienceComputer Science (R0)