arXiv:2102.04180v1 [cs.SC] 8 Feb 2021 ecl h odto ubrascae ihaperturbation a with associated number condition the call We ihaprubto fthe of perturbation a with h rbe ffidn l h elo ope ouin fapo a of solutions complex or real the all finding of problem The (resp. a ssala 2 as small as can there references and 14] chapter [8, 12], chapter ([7, small used ofidisros ywl-odtoe,w enta h varia the that of mean roots we the oper well-conditioned, of bit By of roots. number its quadratic a find least to the at require in also methods art the best of the well-conditioned, is polynomial the infrec rtmtcoeaini in is operation arithmetic each for tion ehd ofidtera rcmlxrosof roots complex or real the find to methods aho t offiinsi asinrno aibeo varia of variable random Gaussian a is coefficients its of each o xoetal ml in r small two exponentially between not whe distance hand, the other well-conditioned, the is On polynomial algorithm. near-optimal a provided he i prtosin operations bit iiy oepeiey let precisely, More bility. by bounded size bit of coefficients integer escnb enddpnigo h omcoe ntecoeffi- the on Let chosen polynomial. the norm of the cients on depending defined be can bers oilequation nomial h eladtecmlxrosof roots complex that the algorithms and real present the we numbers, condition these of each unalisra n ope ot ihanme fbtoperat bit of number a with in roots quasi-linear complex and real its all turn nter n npatc.If practice. in and theory in ubrof number the ie polynomial a Given ABSTRACT INTRODUCTION 1 roots Real Complex numbers, Condition finding, Root equation, Polynomial KEYWORDS 1. variance of the i operations. bit 3 :  o l-odtoe oyoil,tedsac ewe two between distance the polynomials, ill-conditioned For admplnmasaewl-odtoe ihahg proba- high a with well-conditioned are polynomials Random u loihsaewl utdfrrno oyoil since polynomials random for suited well are algorithms Our hr xs constants exist There . 0 0 : : $ ^ h yeblccniinnumber condition hyperbolic the rs.the (resp. 4 ( 3 sbuddb oyoilin polynomial a by bounded is ) ) rtmtcoeain,weetenme fbtopera- bit of number the where operations, arithmetic ? epeettefis otfidn loihsta re- that algorithms root-finding first the present we , ? 3 $ 1 ihrsett h aito fiscecet is coefficients its of variation the to respect with ? log − : atra n ope otfnigmtosfor methods root-finding complex and real Fast ( ( 3g r needn,cnee asinvariables Gaussian centered independent, are ) 3 I 2 ) 2 ? a osdrdotmla loih that algorithm an optimal considered Pan . ( ( = ^ 3 fdegree of ) + a enetnieyivsiae,both investigated, extensively been has 0 oepeiey eea odto num- condition several precisely, More . ? g  1 3 ) ( : G . polylog > ? ) h litccniinnumber condition elliptic the ? ( eaplnma fdegree of polynomial a be and 1 G saplnma fdegree of polynomial a is ? ) 3 in = n bound a and ( Í $ 3g elcniindpolynomials well-conditioned  3 :  > )) = 3 ^ 3 0 $ ℎ log uhta h so-called the that such 1 2 8.I h aewhere case the In 28]. [2, 0 n h n associated one the and , ihhg rbblt if probability high with ( : 3g g ? G 2 nvriéd orie NS ni,LORIA Inria, CNRS, Lorraine, de Université h state-of-the-art the , ( : ) eur ubrof number a require 3^ n nti sense, this in and , = ^ ) Í polylog nacondition a on 3 : = 0 [email protected] ilr-è-ac,France Villers-lès-Nancy, q 3 ulam Moroz Guillaume in). ( 3 : 3 ^ log osis oots where ations  4 roots, 1 roots state with For . ions : tion find nce ( a n G ^ 3^ ly- of : ℎ . ))  ihrno offiinsi eludrto [4 n referen and ([14] understood well is coefficients random with ewl hwta ti nedpsil ofidalterosof roots the all find to possible indeed is it that show will we hc ed oanme faihei prtosa es qua least at operations arithmetic of number a to leads which Z s1[3.Mroe,tedsrbto fteroso polynom of roots the of distribution the Moreover, [13]. 1 is rbblt ihrta 1 than higher probability o h so-called the for litccniinnumber condition elliptic etrta h eea aefrrno oyoil n o w for and polynomials random polynomial. for conditioned case per general that the algorithms provide than to better sense makes it Thus therein). ubro prtosqailna in quasi-linear operations of number a hlc ehd[6 eeipeetdwt ucs,notably 6]. success, [5, with MPSolve software implemented the were A [16] the method or therein) Ehrlich references and ([4] method Weierstrass the fteNwo ehd h etnmto soeo h otfa- towar most root quadratically the gle converges of that one method, is fa method iterative of Newton mous probability The the method. studied Newton who the of [32] Smale poly with well-conditioned started for als methods root-finding of analysis in sdffiutt implement. to difficult is r on in st bound the provide art to approach first the is factorization merical omthtecmlxt on fPnsagrtmfrra [30 notabl real implemented, for commonly algorithm more Pan’s are of methods bound Subdivision complexity the ot match among a to 21] iterations Pel- [20, Newton use with theorem approaches may integral subdivision Combining Cauchy’s one Stur or roots, the [2] complex or test For 36], ref let’s others. 31, and among [17, ([29] [1] signs theorem theorem of Budan’s rule the Descartes’ therein), the t ences criteria notably the are roots, real use For s may root. a zero that or one guarantee contains that main criteria to according subdomains the of roots the a contains recursively that subdivide to is idea The methods. subdivision twsltrsonta ti vnpsil ocntutaset a construct to possible even is it that t references shown and later 15] chapter was [8, It 3], chapter [12, 8], chapter of rahsi htte eur oevaluate a to those require of they drawback One that others). is among homoto proaches 25] on 11, notably 9, based ([3, equations, methods of multiv system for improved polynomial and ate derived were number condition the in vnulycnegstoward converges eventually of 3 3 rvddta eko bound a know we that Provided o eea oyoil,icuigilcniindones, ill-conditioned including polynomials, general For vntog odto ubrwsntepiil sd the used, explicitly not was number condition a though Even nte aiyo ehd htaeeceti rcieaeth are practice in efficient are that methods of family Another oemtosbsdo oie etnoeaos uhas such operators, Newton modified on based methods Some . log ? hr xssapitin point a exists there , 2 Z ( 3 of ) ? onssc htfralpolynomials all for that such points $ rvddta h nta on scoeeog to enough close is point initial the that provided ( 3 2 yeblccniinnumber condition hyperbolic ( 3 + g ) seDfiiin11 slwrthan lower is 1.1) Definition (see polylog − ? 1 nsboan,adt eeto accept or reject to and subdomains, in / = Z (  3 1] xlctbud polynomial bounds Explicit [19]. 1] iia eutwsproven was result similar A [10]. ( 3g uhta h etniteration Newton the that such ^ )) nacniinnme of number condition a on 3 2] oee hsmethod this However [28]. n oyoili log in polynomial and ? na least at on hntevariance the when ? n ahroot each and t fthe of ate 3 = domain a one hat herein). atnu- fast sin- a d  points, ? forms berth- dratic nomi- ubdo- llows Z ilure with with hers. m’s ials ( ces ari- ([7, ell- ^ ( er- py in p- ? 3 y e ) ]. , . Guillaume Moroz in the software ANewDsc [24], SLV [35], the package RootFinding Type Hyperbolic Elliptic Domain 0, 1  0, 1 0, 1  0, 1 in Maple [26], the package real_roots in sage [34], Ccluster [22] [ ] ( ) [ ] ( ) among others. E G G: 3 sin: G cos3 : G : ( ) : ( ) − ( ) We can also mention approaches based on the computation of ℎ G G tan G ( )  ( ) the eigenvalues of the companion matrix associated to ? [27]. These g log 3^ 2 ( ) approach has the advantage of being numerically stable in many # $ log 3 g $ 3 g cases [15]. These methods are implemented notably in Matlab [33] ( ( /=))4 ( / ) "= 1 2 1 $ 3 g + p ( / ) and numpy [18]. W Eq. (1) Eq. (2) Eq. (3) Eq.p (4) 1.0.1 Contribution. Focusing on univariate polynomial equations, d we develop new algorithms that are for the first time polynomial in Table 1: Values for the initialisation of the variables in Step  the logarithm of a condition number, and quasi-linear in the degree. of Algorithm 1 Our approaches work for two classical condition numbers that we define here for G in the interval 0, 1 and for I in the complex unit [ ] disk  0, 1 . ( ) Following the theory of condition number associated to the root- finding problem [8, chapter 14 and 16], we introduce the following definitions. There exist two algorithms that finds all its complex roots in the = 3 : = C Definition 1.1. Given the polynomial ? G :=0 0:G 2 = ( ) unit disk in $ 3 log 3^ polylog log 3^ with ^ ^ℎ ? and 3 C ( ( ) ( ( ))) ( ) 3 1 G: , let 5 C = cos3 C ? tan C . The realÍ hyperbolic ^ = ^ ? respectively. :=0 : : ( ) ( ) ( ( )) 4 ( ) conditionq number associated to ? is: Í  R 0 1 3 0 1 The main idea of our algorithms is to approximate ? with a ^ ? = max min k k , k k ℎ ( ) G 0,1 ? G ? G piecewise polynomial function, where each polynomial has a de- ∈[ ]  ′  | ( )| | ( )| gree in $ log 3^ . This is achieved by partitioning the interval The real elliptic condition number associated to ? is: ( ( )) 0, 1 and the unit disk following the distribution of the roots. Then [ ] R 1 2 √3 1 2 using Kantorovich’s theory, we show that a good enough approx- ^4 ? = max min k k , k k ( ) C 0, c 5 C 5 C imation the roots of the piecewise polynomial is a set of approxi- ∈[ 4 ] | ( )| | ′( )| ! mated roots associated to all the roots of ?. Our method is summa- For ? I with I in the unit disk, letting ? G = ? G48\ , ( ) \ ( ) ( ) rized in Algorithm 1. we define the complex hyperbolic and the complex elliptic con- For the correctness of Algorithm 1, we prove in key Lemma 2.1 C = R C = dition numbers as ^ℎ ? max\ 0,2c ^ℎ ?\ and ^4 ? that if a polynomial 6 of small degree is sufficiently close to a se- R ( ) ∈[ ] ( ) ( ) max\ 0,2c ^4 ?\ respectively. ries 5 , then the problem of finding the root of 5 can be reduced to ∈[ ] ( ) The justification for the name hyperbolic and elliptic comes from the problem of finding the roots of 6. Then in Section 3.4 and 4.4, we show that the piecewise polynomials that we construct in Al- the fact that when the 0: are independent, centered Gaussian vari- ables of variance 1, then the density of the root distribution in 0, 1 gorithm 1 satisfy the assumptions of Lemma 2.1. [ ] converges to 1 c 1 C2 when 3 converges to infinity. Similarly, For the bound on the number of bit operations, the main steps /( ( − )) that we need to analyse in Algorithm 1 are Step  and Step . In when the 1: are independent, centered Gaussian variables of vari- # ance 1, then the root distribution has density √= c 1 C2 [14]. Step  we need to solve ==0 "= polynomials of degree %. Using a /( ( + )) classical algorithm with the state-of-the-art complexity ([28, Theo- Remark that by symmetry of the weights we consider in front Í of the coefficients, we can reduce the problem of finding all the rem 2.1.1] and [2]), we can find all the roots in the unit disk of each % roots in R or in C to the problem of all finding all the roots in 0, 1 polynomial with an error bounded by 2− , and with a number of [ ] 3 and C respectively, through the changes of variable G G and bit operations in $ % polylog % . Then, since % is in $ log 3^ 7→ − ( ( )) ( ( )) G 1 G. and the sum of the "= is in $ 3 log 3^ in all cases (see Table 1), 7→ / ( / ( )) For our algorithms, we consider polynomials with bit-stream we conclude that the bound on the number of bit operations to 2 coefficients, where the first : bits can be accessed in $ : bit op- perform Step  is in $ 3 log 3^ polylog log 3^ . ( ) ( ( ) ( ( ))) erations. Our output is a list of approximate zero as introduced by In Step , if we perform the loop as written in Algorithm 1, this leads to a number of operations quadratic in 3. Instead, in Sec- Smale [32], in the sense that for any point I0 returned by our algo- tion 3.5 and 4.5, we show how we can modify Step  such that the rithm, the sequence I: 1 = I: ? I: ?′ I: converges quadrat- + − ( )/ ( ) number of bit operations for this step is in $ 3 log2 3^ polylog log 3^ . ically toward its associated root of ?. We can now state our main ( ( ) ( ( ))) result. First we will prove in Section 2 that we can reduce the root- finding problem to the problem of finding the roots of a smaller Theorem 1.2. Let ? G be a polynomial of degree 3, with bit- ( ) degree polynomial. Then in Section 3 and 4, we will prove the cor- streams coefficients. rectness and bound the complexity of Algorithm 1 for polynomials There exist two algorithms that finds all its real roots in the inter- with small hyperbolic condition number and small elliptic condi- 2 = R val 0, 1 in $ 3 log 3^ polylog log 3^ with ^ ^ℎ ? and tion number respectively. Finally in Section 5, we will discuss open [ R ] ( ( ) ( ( ))) ( ) ^ = ^ ? respectively. questions related to our approach. 4 ( ) Fast real and complex root-finding methods for well-conditioned polynomials

Algorithm 1 Root-finding algorithm 2.2 Roots of approximated polynomial Input: 2: list of 3 1 coefficients Based on Kantorovich’s theory, we show that if a polynomial and + C: type of the monomial weight (4;;8?C82 or ℎ~?4A1>;82) a series have coefficients close enough, then the roots of the poly- ^: bound on the condition number (see Definition 1.1) nomial are in the basin of quadratic convergence of the roots of Output: A4BD;C: list of the approximate roots of the function the series. 3 2 : G: if C is ℎ~?4A1>;82 We state the following theorem for complex roots in the unit :=0 [ ] disk  0, 1 C. Remark that in the case where 5 and 6 have real 3 3 : ( ) ⊂ (Í = 2 : G if C is 4;;8?C82 coefficients, it holds for their real roots in the interval 0, 1 R : 0 [ ] : [ ] ⊂ q A. Initialization Í  Lemma 2.1. Let 5 G = 5 G: be an analytic series with ra- ( ) :∞=0 : Variables depending on C (see Table 1): dius of convergence greater than 1. Assume that there exist 2 > 0, E list of 3 1 monomial functions > > Í > 2 ← + ^ 32, B 1 and an integer < 2log2 B^ such that for all point ℎ a scale function ( ) ← I in the unit disk: W list of # real numbers, centers of disks 2 > ← 5 I 2 B^ implies 5 ′ I 2 ^, d list of # real number, radii of disks • | ( )| ≤ < we have 5 2 2: . % 10log 3^ • | : | ≤ / ← ⌈ 2 ( )⌉ = < : F list of %-th roots of unity Let 6 G :=0 6:G be a polynomial of degree < such that for all ← ( ) < for 0 = # do 0 : < we have 5: 6: 2 2 . ≤ ≤ ≤ ≤ Í | − | ≤ / I = list of the "=-th roots of unity Then, for each root Z of 5 in the unit disk, 5 has no other root [ ]← in  Z, 1 2B^ and 6 has a root in the disk  Z, 1 16B^ . More- A4BD;C empty list ( /( )) ( /( )) ← over, if 6 has a root [ in the unit disk, then 5 has a root in the disk  [, 1 16B^ . B. Evaluation ( /( )) for 0 = < # and 0 ? < % do = ≤ ≤ Proof. First, let [ be a root of 6 in the unit disk. Then 5 [ < < 1 2 < 2 | ( )| for 0 < "= do 5 [ 6 [ 2 < < 2 < using the bounds on the differ- ≤ 3 : | ( )− ( )| ≤ 2+ + 2 ≤ 2+ 4 <,=,? :=0 2 : E : W = d = F ? I =,< ence of the coefficients of 5 and 6. In particular, with the lower [ ] ← [ ] [ ]( [ ] +% [ ] [ ]) [ ] up to precision 2 2− bound on <, we have < log ^ < 2 and < 20 since Í k k ≥ 2 ( ) + / ≥ B^2 210. This implies that 5 [ 2 < 2 2< 2 B^2 < ≥ | ( ) ≤ ( + )/ ≤ /( )·( + C. Interpolation and root-finding 2 2 < 2 2 32B^2 . This implies that 5 [ 2 ^. In turn, we )/ ( / ) ≤ /( ) | ′( )| ≥ / for 0 = < # do have V = 5 [ 5 ′ [ 1 32B^ , and = maxI * 5 ′′ I 5 ′ [ ≤ | ( )/ ( )| ≤ /( ) ∈ (| ( )/ ( )|) ≤ for 0 < < "= do B^. Thus, 2V 1 16 1. Using Kantorovich’s theory [12, Theo- ≤ ≤ / ≤ 6 polynomial such that 6 F ? = 4 <,=,? for all ? rem 88], this ensures that 5 has a root in  [, 2V which implies ← ( [ ]) [ ] ( ) with coefficients up to precision 2 2 % that 5 has a root in the disk  [, 1 16B^ . Moreover, using Kan- k k − ( /( )) B roots of 6 up to precision 2 2 % torovich’s theory again [12, Theorem 88], since 2 2B^, this ← k k − ≤ for 0 : < size of B do implies that Z is the only root of 5 in the disk  Z, 1 2B^ . ≤ ( /( )) Append ℎ W = d = B : I =,< to A4BD;C Reciprocally, let Z be a root of 5 in the unit disk. Then 6 Z = ( [ ] + [ ] [ ]) [ ] < 2 | ( )| 6 Z 5 Z 2 2<+ using the bounds on the difference of the | ( ) − ( )| ≤ < < 1 return A4BD;C coefficients of 5 and 6. Similarly 6′ Z 5 ′ Z 2 (< +1 ) | ( ) − ( )| ≤ 2 + + < 2 < 2 2 2 2<+ 2 ( <+ 1) . And for all I * we have also 6′′ I 5 ′′ I ≤ 2 + ∈ | ( )− ( )| ≤ < 2 < 1 2 < < 3 3 2 + 2 2 < 3< 4 2 2 ( +<) . 3 / − + ( + + )/ ≤ 3 2 This implies that: · 2 PRELIMINARIES  < 2 6 Z 2 + 2.1 Notations | ( )| ≤ 2< Given a polynomial or an analytic series 5 , we will denote by 5 ′ < 2 2 2 : 6′ Z 2 ^ 2 ( + ) / and 5 ′′ the derivative and the second derivative of 5 , and by 5 ( ) | ( )| ≥ / − 2< the :-th derivative of 5 . Given a vector E, we will denote by E 1, 3 k k < 3 3 E 2 and E the classical norm 1, 2 and infinity of E. The trans- 6′′ I 2B 2 ( +<) / k k k k∞ | ( )| ≤ + 2 pose of E is denoted by E) and its conjugate transpose by E and if In particular, with the lower bound on <, we have < log ^ F is another vector, E F denotes their scalar product. For a matrix ≥ 2 ( ) + · < 2 and < 20, which implies 6′ Z 2 2^ and 6′′ I , we denote by  : the induced norm supG≠0 G : G : . / ≥ | ( )| ≥ /( ) | < (1 )| ≤ k k k k /k k 2 B 1 40 . Such that V := 6 Z 6′ Z < 2 ^ 2 − and = 3 : = 3 3 : ( =+ / ) | ( )/ ( )| ≤ ( + ) / For a polynomial ? G = 0:G = : 1:G , we de- : maxI * 6′′ I 6′ Z 2 B 1 40 ^ 4.1 2B^. ( ) : 0 : 0 ∈ (| ( )/ ( )|) ≤ ( + / ) ≤ / note by ? 1 the norm 1 of the vector 0 , and byq ? , the norm Let A = 1 4.1B^ . Using Kantorovich’s theory [12, Theorem 85] k k Í ( : ) Í k k /( ) 2 of the vector 1 . this implies that Z is the unique root of 5 in the disk  Z,A . ( : ) ( ) Finally, we will denote by  the interval 0, 1 , by * the unit disk, Moreover, V 2A 4.1B^2 < 2 2< 4.1 < 2 2< 2 1 8 [ ] /( ) ≤ ( + )/ ≤ ( + )/ / ≤ / and by  W, d the complex disk of radius d centered at W. for < 19, which is the case since B^2 210. In this case, using ( ) ≥ ≥ Guillaume Moroz

1 3 Kantorovich’s theory again [12, Theorem 88], 2V V A 1 Then for 0 = < # , let W= = A= A= 1 and d= = A= 1 A= , ≤ / ≤ ≤ 2 ( + + ) 4 ( + − ) ensures that 6 has a root in  Z, 2V . Moreover, since V 2A 1 8, such that W # 1 and A # 1 are the sequences: ( ) /( ) ≤ / = ==−0 = ==−0 this implies that 2V A 2 and 6 has a root [ in the disk  Z,A 2 . ( ) ( ) ≤ / ( / ) 3 1 In particular, Z is the only root of 5 in the disk  [,A 2 , which 1 = if 0 = # 2 W = − 4 2 ≤ ≤ − ( / )  = 1 1 = implies that Z  [, 1 16B^ and thus [  Z, 1 16B^ . (1 2 2= if = # 1 ∈ ( /( )) ∈ ( /( )) − − (2) 3 1 = if 0 = # 2 = 8 2 3 HYPERBOLIC CASE d= 3 1 ≤ ≤ − ( = if = = # 1 In this section we consider the polynomial ? G = 3 0 G: , over 4 2 − ( ) :=0 : the interval 0, 1 and over the complex unit disk  0, 1 . = 343 g where # log2 is chosen such that W# 1 . [ ] Í( ) ⌈ g ⌉ − ≤ 243 Let l =  2c  . The following lemma shows that the = 2min = 4,# 2 3.1 Bound on the coefficients ( + + ) 8 0 bearealandW a complexnumberin  0, 1 angle min = 4,# 2 of the ring between the concentric circles centered ( ) 2 ( + + ) such that either 2d 1 W , or d g 243 .Let 2: be the coefficients at 0 of radii A= and A= 1. : ≤ −| | ≤ /( ) + of G in ?W,d G . For all : > g: ( ) Proof. Consider the ring between the circles of radii A= and 1 A= 1 and let U= be the angle of the sector covered by the disk 2 ? + 2 = 2 : : 1  W=, d= . Using classical trigonometric formula we have A= W= | | ≤ 2 k k 2( ) U= 3 + A 2W=A= 1 cos , and we also have d= = A= 1 W= , which = 1 − + 2 2 ( + − ) implies:+ Proof. We distinguish 2 cases. For the case where 2d 1  : = 3 8 8 :≤: − W2 A 2 d2 2 W , the coefficient of G in ?W,d is 2: = 08 : W − d U= = = 1 = | | 8 : | | ≤ sin = 1 ( + + − ) 1 3 0 8 W 8 : 1 W : ? 2: . 2 v − 4W2A 2 2: 8=: 8 : − 1 Í  t = = 1 | | ( −| |) ≤ k k / =   + Then, for the case d g 243 we have 2: 2 2 2 2 2 2 3Í 8 8 : : : ≤3 /( ) 2d= W= A= 1 A= 1 W= 8=: 08 : W − d d : ? 1. Using the inequality = ( + + )−( + − ) | | ≤ k k v 4W2A 2 :! √2c: : 4 : we get 3 1 43 : : . Which implies, for t = = 1 Í ≥  ( / ) : ≤ √2c: ( / ) + > : :  2 A 2 all : g that 2: ? 1 g 2: ? 1 2 . 9 A= 1 W= = 1 ≤ k k ( /( )) ≤ k k / ( + − ) 1 + 8 A 2 ( + W2 ) = uv = 1 = u + 3.2 Piecewise polynomials over 0, 1 u 1 A= 1 W= A= 1 W= 2 u ( + − )( + + ) # 1 # 1 [ ] u Let W= and d= be the sequences: t − 4 ( A= 1W= ) ( )==−0 ( )==−0 + A 2 A= 1 W= 9 = 1 A= 1 2 2 1 = + − 1 + + 1 W= = 1 2A= 1 s 2 ( + W2 )−( W= + ) − 3 3= + = 1 1 (1) A variation analysis shows that for 1 G 2, the expression = if 0 = < # 1 3 3 9 2 2 ≤ ≤ A= 1 W= d= = ≤ − 1 G 1 G is greater or equal to 5. Moreover, + − is 1 W if = = # 1 2 ( + )−( + ) 2A= 1 ( = 1 < 1 = + − − greater than = 3 if = # 1 and greater than # 1 if = # 1, 2 + − 2 + − such that: = 443 g where # log3 g is chosen such that d# 1 . Remark ⌈ ⌉ − ≤ 243 U= U= √5 2c that the union of the intervals W= d=,W= d= is the interval sin [ − + ] 2 ≥ 2 ≥ 2min = 3,# 1 ≥ 2min = 5,# 3 0, 1 . ( + + ) ( + + ) [ ]    Finally, for 0 = < # , Lemma 3.1 implies that the coefficients ≤ : > 2: polynomial ? W= Cd= satisfy 2: ? 1 2 for all : g. Remark that like for the real case, for 0 = < # , Lemma 3.1 ( + ) ≤ k k / ≤ implies that the coefficients 2: polynomial ? W= Cd= satisfy 2: : ( + ) ≤ 3.3 Piecewise polynomials over  0, 1 ? 1 2 for all : > g. ( ) k k / In this section, we define a set of disks that cover the disks unit disk of radius 1 centered at 0, while their centers and radii still satisfy 3.4 Approximation properties the conditions of Lemma 3.1. We show in this section that the polynomials computed in Algo- # rithm 1 computes the correct approximate roots of ?. For that, we Let A= ==0 be the sequence: ( ) show that with the parameters chosen in the algorithm, Lemma 2.1 1 applies correctly and thus, the approximate truncated polynomials 1 = if 0 = < # A = − 2 ≤ that we use return the correct roots. We focus on the complex case. = = (1 if = # The real case can be proven with similar arguments. Fast real and complex root-finding methods for well-conditioned polynomials

Let g 64 be a real number, let W  0, 1 and d > 0 such that of bit operations in ) < = $ < polylog < . The polynomial ≥ ∈ ( ) ( ) ( ( )) either 2d 1 W or d g 243 . Moreover, assume that d @ - = ? - mod - # 1 can be computed with a number of ≤ − | | ≤ /( ) ≥ ( ) ( ) = − g 643 . Denote by ?W,d I the polynomial ? W dI and denote bit operations in $ <2 ) < . Then, using the fast Fourier trans- /( ) ( ) =( + ) ( ( )) 82c: # by 2: its coefficients. For I * , ?W,d′ I d ?′ W dI and form approach,e we can compute @ I4 with a number of bit ∈ | ( )| | ( + )| ( / ) ? I = d2 5 W dI . operations in $ 2= log # ) < .  W,d′′ ( ) ′′ ( + ) ( ( ) ( )) g Lemma 3.3. With 2 = ? 1, B = g32 , ^ = ^ℎ ? and < = Thus, combining Lemma 3.4 and 3.5, with< and g in $ log 3^ , 2 k k ( ) = 4 ( ( )) 2log2 B^ , ?W,d satisfies all the assumptions of Lemma 2.1. # in $ log 3 g , % in $ g , "= = 1 2 + , we can compute ? W= ⌈ ( )⌉ 82c:( % (82/cℓ))"= ( ) / (( + d=4 / 4 / for all 0 = # ,0 ℓ < "= and 0 : < % Proof. First, by definition of ^ , if ?W,d I = ? W dI 2 ^, ) ) ≤ ≤ ≤ ≤ ℎ | ( ) ( + )| ≤ / with a number of bit operations in $ 3 log2 3^ polylog 3^ . then ? W dI 23 ^, which implies ? I 2g 64^ ( ( ) ( )) | ′( + )| ≥ / | W,d′ ( )| ≥ /( ) ≥ 2 ^. / 4 ELLIPTIC CASE For the second derivative of ?W,d′′ I , remark first that W dI ( ) | + | ≤ 3 3 W d 1 g 243 . Thus, for all 0 : 3, we have W dI In this section, we consider the polynomial ? G = 1 G: ( ) :=0 : : | | + ≤ +3 /( g ) 24 g ≤ ≤ 2 | + | ≤ 3 1 g 243 4 /( ) 2 . Thus, ?W,d′′ I d ?′′ W dI and we define the function 5 G = cos G ? tan G . Remarkq that ( + /( g )) ≤ ≤ | ( )| ≤ | ( + )| ≤ ( ) ( ) ( ( Í))  ? 1g32 . for G 0, c 4 , the function tan G is a bijection between the k k : ∈ [ / ] ( ) Finally, for : > g, 2 ? 1 2 using Lemma 3.1.  roots of 5 in 0, c 4 and the roots of ? in 0, 1 . Moreover, let | : |≤k k / [ / ] [ ] = 3 : 3 : 3.5 Complexity to evaluate ? E: G : sin G cos − G and let E G be the vector map ( ) ) ( ) ( ) ( ) E0 G ,...,Eq G . Using the notations of the introduction, the We focus now on the complexity of Step  in Algorithm 1. We ( ( ) 3 ( )) function 5 can be rewritten: modify the algorithm to be able to bound correctly the number of bit operations of this step. 5 G = 1 E G ( ) · ( ) The following lemma first shows how to evaluate quickly the Letting U = : 3 1 : , Edelman and Kostlan [14] observed points near the unit circle. : ( + − ) that the derivative of E satisfies the equation E G =  E G , where p ′ ( ) · ( ) Lemma 3.4. Let g > 0 be a real number and # > 0 be an in-  is the anti-symmetric linear matrix: tegers such that # 643 g. Given a complex number I such that ≤ / 0 U1 I 1 g 3 and an integer < > 0, it is possible to compute the − | | ≤ + / 82c: # U1 0 U2 # values ? I4 / for 0 : < # with an absolute error lower − (< ) ≤ U2 0 U3 than 0 1 2 and with a number of bit operations in $ 3 g g <  = © − ª k 2k / ( / ( + + ­ ...... ® log 3 polylog < log 3 . ­ . . . ® ( )) · ( + ( ))) ­ ® ­ U3 1 0 U3 ® Proof. For any 0 : 3, remark that I: 1 log 2 g 3 3 ­ − − ® ≤ ≤ | |≤( + ( ) / ) ≤ ­ U3 0 ® 2g . Using fast algorithms, we can compute in quasi-linear time the ­ ® ­ ® first = digits of the result of arithmetic operations [37]. Thus, we This leads to the following relation: « ¬ can evaluate the first g < 2log 3< digits of I: with a number = G + + ( ) E G 4 E 0 of bit operations in ) g,<,3 = $ g < log 3 polylog < ( ) ( ) ( ) (( + + ( )) ( + As a corollary, for any point I  0, 1 : log 3 . This allows us notably to evaluate ? I with an error ∈ ( ) ( ))) < ( ) lower than 0 1 2 in $ 3) g,<,3 bit operations. k k / ( ( )) : I : For # in $ 3 g , we want to evaluate ? on the # -th roots of 5 ( ) I = 1 4  E 0 ( / ) ( ) · ( ) unity. We start by computing the polynomial@ - = ? - mod - # ( ) ( ) − 1 of degree # 1 with a number of bit operations in $ 3) g,3,< . 4.1 Bound on the derivatives of 5 − ( ( )) Then we can use the fast Fourier transform to evaluate @ 482c: # For any real G, observe that the matrix 4G is orthogonal because ( / ) for 0 : < # in $ 3 g log 3 ) g,<,3 bit operations.   is antisymmetric. This allows to prove the following lemma. ≤ ( / ( ) ( )) Then we show how the points I in the disks  W=, d= that sat- Lemma 4.1. For any real G: = ( ) isfy I 1 1 2 and can be evaluated more efficiently. : | | ≤ − / 5 ( ) G : Lemma 3.5. > ( ) 1 2 max 4, 2 43 : Let = be a positive integer and # 0 be an in- :! ≤ k k ( / ) = 4   tegers such that # 2 + . Given a complex number I such that p = ≤ > Proof. I 1 1 2 and an integer < 0, it is possible to compute the # First using norm inequality, we have: | | ≤ − /82c: # < values ? I4 / for 0 : # with an absolute error lower than : : <( ) ≤ = 2 5 ( ) G 1 2  E 0 2 ? 1 2 and with a numberof bit operations in $ 2 < log = ( ) ≤ k k k ( )k k k / ( ( + ( )) · polylog < . For a positive integer A, let  A be the matrix  where all the entries ( )) = of indices <,= with < A 2 or = A 2 are replaced by 0. Proof. First, remark that I: 4 : 2 . In particular, for : > ( ) ≥ + ≥ + | | ≤ − / Since  is a tridiagonal matrix, and since E 0 = 1, 0, , 0 ) , log 2 <2=, we have I: 1 2<. Let ? be the polynomial ? trun- ( ) ( ··· ) ( ) | | ≤ / = : we can deduce by induction that: cated to the degree 3= = log 2 <2 . Each I for : 3= can ⌈ ( ) ⌉ < ≤ : be computed with an error less thane 1 2 and with a number  E 0 =  1E 0 / ( ) : ··· ( ) Guillaume Moroz

Let ℎ = 3 1 . For A ℎ, we can bound the norm of  by: Thus, for any point I  , we have atan I  , such that 2+ A ∈ \ ( ) ∈ \ ≤  tan  .  j k \ ⊂ ( \ ) A 2  1  k k ≤ k k k k∞ 1 g = 43 p A 1 3 1 A 1 A 3 1 A Thus, we can cover a band of width 4 with # c g ≤ ( − )( + −( − )) + ( + − ) 243 <  q  p2 A 3 1 A p disks defined for 0 = # by: q ≤ ( + − ) ≤ p 1 g W= = = > 4 43 For A ℎ, we have A 2 3 1. This allows us to deduce that: r (4) k k ≤ + 1 g : 3 3 1 d= = 1 : 2 : if : +2 4 43  E 0 2 ≤ r :! k ( )k ≤ ℎq 3 : ℎ ℎ! 2 ℎ 3 1 − :! otherwise 1 g  ( + ) This allows us to cover the angular sector of radius \ 4 243 , q : : ≥  √  : 3 1 43 and the number of sectors needed to cover the unit disk isq" = Using the inequality :! 2c: 4 we get : : .  ≥ ≤ √2c: c \ 4c 243 .     g Moreover for : > 3 1 2, observe that 3 √23 2ℎ 2: , ⌈ / ⌉≤⌈ ⌉ ( + )/ ℎ ≤ ≤ ≤ q and 3 1 : ℎ ℎ! 2: ℎ, such that: q 4.4 Approximation properties ( + ) − :! ≤ −  : We focus in this section on the complex case. The real case can be 1 2 43 if : 3 1 proven with similar arguments. :E 0 : 2+ 2 ≤ For a complex number W and a real number d, denote by 5W,d I :! k ( )k ≤ :q  ( ) 4 otherwise the series 5 W dI and denote by 5 its coefficients. For I * ,  ( + ) : ∈  5 I = d 5 W dI and 5 I = d2 5 W dI .  W,d′ ′ W,d′′ ′′  | ( )| | ( + )| ( ) ( + )  = 1 4.2 Piecewise polynomials over 0, 1 Lemma 4.3. Let 0 W c 4 and d 4 g 43 be two real num- ≤ ≤ /g /( ) 2 [ ] bers. With 2 = 1 2, B = g32 , ^ = ^4 5 and < = 2log B^ , Using the bound on the derivative of 5 shown in the previous sec- k k ( )p ⌈ 2 ( )⌉ 5W,d satisfies all the assumptions of Lemma 2.1. tion we defined a sequence of disks  W=, d= that covers the real ( ) segment 0, c 4 such that the series 5 W= d=I has the abso- = [ / ] ( + ) Proof. First, by definition of ^4 , if 5W,d I 5 W dI 2 ^, lute value of its coefficients 5 decreasing exponentially for : large | ( ) ( + )| ≤ / : then 5 W dI 2√3 ^, which implies 5 I 2√g ^ 2 ^. enough. | ′( + )| ≥ / | W,d′ ( )| ≥ / ≥ / For the second derivative of 5W,d′′ I , remark that 5 ′′ I = 1 c 43 ( ) ( ) · For a real g, let # = , and for 0 = < # let W= and d= 2 8I = 2 = 0 2 g ≤  4 E 0 1  E I . Remark that E 0 81 4 E 81 and   · ( ) 2· ( ) 2 3 2 ( 3+ 2 ) ( ) defined by: q E 81 2 = cosh 1 sinh 1 / = cosh / 21 . Using the in- k ( )k ( ( ) +2 ( )) ( ) G 312 1 g equality cosh G 4 2 this leads to E 0 81 2 4 . With W = 2= 1 ( ) ≤ 2 k ( 2+log)k2 g ≤ = 1 d, this leads to 5 I d 1 2  4 . Moreover, El- ( + ) 4 43 | | ≤ | W,d′′ ( )| ≤ k k k k2 ( ) r (3) deman and Kostlan showed that 8 is similar to the Kac matrix [14, 1 g d= = §4.3], and the absolute value of its eigenvalues is lower or equal to 4 43 2 2 r 3, such that  2 3 and d  2 g3. It is easy to check that the union of the corresponding disks k k> ≤ k k :≤  Finally, for : g, 5: 1 2 2 using Lemma 4.1. cover the segment 0, c 4 . The properties of the series 5 W=, d= | |≤k k / [ / ] ( ) will be analysed in Section 4.4. Thus, the two sequences of disks defined in Equations (3) and (4) cover the interval 0, 1 and the unit disk  0, 1 respectively, and [ ] ( ) 4.3 Piecewise polynomials over  0, 1 they satisfy the conditions of Lemma 4.3. ( ) For the complex case, we need to define a sequence of disks = =  W=, d= such that the union of the sets tan = covers an angu- 4.5 Complexity to evaluate 5 ( ) ( ) lar sector of  0, 1 big enough. For that, we prove the following In the elliptic case, evaluating a sequence of points in Step  of Al- ( ) lemma. gorithm 1 naively would be done roughly in a $ 32 , or in $ 33 2 ( ) ( / ) operations if we use the fast Fourier transforms. In both cases, this Lemma 4.2. Let 0 \ c 4. If a set of complex disks 1,..., ≤ ≤ / : ⊂ C covers the band  of points I with < I \ and 0 '4 I would exceed our complexity bound. The main idea in this sec- \ | ( )| ≤ ≤ ( ) ≤ c 4, then tan  ,..., tan  covers the angular sector  of the tion is to remark that if we are interested in computing an approx- 1 : \ 3 < / ( ) ( ) imate value of the function 5 = 1 E I up to 1 2 2 for a unit disk between the angle \ and \. :=0 : : ( ) k k / − given integer <, then we can truncate 5 to use a support of size in Í Proof. Using the integral expression of the function atan, re- $ √3< . 0 81 ( ) mark that atan 0 81 = atan 0 + 1 3I. In particular, as ( + ) ( ) + I=0 1 I2 Lemma 4.4. Given a function 5 I = 3 1 E I and an inte- long as 1 0, we have '4 I2 0, such that+ 1 1, which ( ) :=0 : : ( ) ≤ ( ) ≥ ∫ | 1 I2 | ≤ ger < > 0, there exists 0 ℓ D 3 such that D ℓ 4√3< and allows us to conclude that atan 0 81 atan 0+ 1 . More- ≤ ≤ ≤ Í | − | ≤ 2 2 | ( + ) − ( )| ≤ | | D < 1 over, if 0 0 and 0 1 1 then, 0 '4 atan 0 81 c 4. 5 I = 1:E: I 1 22− − . ≥ + ≤ ≤ ( ( + )) ≤ / ( )− : 0 ( ) ≤ k k

Í

Fast real and complex root-finding methods for well-conditioned polynomials

Proof. Let < be an integer, G be a real between 0 and 5 EXTENSIONS AND OPEN QUESTIONS 1 and ℓ = max 0, G3 2log 2 3 < 1 and D = ( ⌊ − ( ) ( + )⌋) 5.1 Flat polynomials min 3, G3 2log 2 3 < 1 . Let  be the union of the ( ⌈ + ( ) ( + )⌉)p A third natural family of polynomials is of the form ? G = indices 0,...,; and D,...,3. Using the Hoeffding inequality, ( ) p 3 1 2 G: . When 3 converges to infinity, the density of its 3 : 3 : 4 < 1 :=0 √:! : we have :  : G 1 G − 2 2− ( + ) . In par- ∈ ( − ) ≤ · roots distribution converges to 1 c. Thus, we can define a so-called 3 : 3 : 2 Í / ticular, thisÍ implies  that :  1: : sin I cos I − flat condition number as follow. | ∈ ( ) ( ) | ≤ 2 ℓ 3 2: 2 3 : q = 1 2 :=0 : sin I cos (Í− ) I . If I 0 81, we k k 2 | ( )2 ( )| + = 3 1 : have cos I sin I = cosh 21 . Thus, letting G = Definition 5.1. Given the polynomial ? G :=0 :!2:G , let 2Í| ( )| + | ( )| ( ) 2 ( ) sin I cosh 21 , we can use the Hoeffding inequality and de- 5 G = ? G 4 G 2. The real flat condition number associatedq to ? | ( )|/ ( ) ( ) ( ) − / Í duce: is:

3 R 2 2 2 2 : 3 : 3 2 2 < 1 1 ^ ? = max min k k , k k 1: sin I cos I − 1 2 cosh / 21 2− ( + )+ 5 R | : ( ) ( ) |≤k k ( ) ( ) G 5 G 5 ′ G :  s  ∈  | ( )| | ( )|  Õ∈ 8\ Moreover, comparing the coefficients of the Taylor For ? I with I in the unit disk, letting ?\ G = ? G4 , we let 2 C =( ) R ( ) ( ) expansion at 0 of cosh G and exp G 2 , remark that ^5 ? max\ 0,2c ^5 ?\ be the complex flat condition number 3 2 312 ( ) ( / ) ( ) ∈[ ] ( ) cosh / 21 4 . In particular, if 1 log 2 < 3 that associated to ?. ( )3 ≤2 < | | ≤ ( ) / implies cosh / 21 2 . This allows us to conclude that D ( :) ≤ 3 : < 1p Considering this new condition number, several natural ques- 5 I 1 sin I cos I 1 22 .  | ( )− :=; : ( ) − ( )|≤ k k − − tions occur. First, remark that the density of the distribution of the TruncatingÍ 5 can also be used to evaluate it efficiently on a set of roots of flat polynomials is close to the density of the distribution roots of unity using fast Fourier transform, as required for Step  of the eigenvalues of random matrices. Whereas it was shown that of Algorithm 1. the expectation of the hyperbolic condition number of the charac- teristic polynomial of complex standard Gaussian matrices of size Ω = Lemma 4.5. Let g > 0 be a real number and " > 0 be an inte- = is in 2 ( ) , it would be interesting to analyse the flat condition gers such that " 4c 243 g. Given a complex number I such that number of such characteristic polynomials. ≤ / 3 : < I log 2 g 3, let 5I l = 1 E I l . Given an inte- From an algorithmic point of view, remark that in | ( )| ≤ ( ) / p ( ) :=0 : : ( ) > 82c: " the flat case, considering the vector of function E G = ger < 0, it is possible to compute the " values 5I 4 / for 0 2 2 2 ( ) p Í < ( ) ≤ G 2 G 2 : G 2 : < " with an absolute error lower than 1 2 2 with a number of 4− / ,G4− / ,...,G 4− / ,... , the derivation of E is an k k / ( ) bit operations in $ 3 g g < log 3 2 polylog < log 3 . anti-symmetric operator, as for the elliptic case. Thus, after ( / ( + + ( )) · ( + ( ))) dealing with boundary conditions, we should be able to derive an p Proof. For any 0 : 3, and I = 0 81, remark that E 0 algorithm that find the roots of such polynomials with number ≤ ≤ + | : ( + 81 cos2 I sin2 I = cosh3 2 21 2g . Using fast algo- of bit operations linear in 3 and polynomial in the logarithm of )| ≤ | ( )|+| ( )| / ( ) ≤ rithms, we can compute in quasi-linear time the first = digits of ^5 . Such an algorithm might be well suited to find the roots of the result of arithmetic operations [37]. Moreover, using methods characteristic polynomials. such as the FEE method [23], we can also evaluate trigonometric, exponential and factorial functions in quasi-linear time. Thus, we 5.2 Multivariate polynomial systems can evaluate the first g < 2log 3< digits of E: I with a num- As mentioned in introduction, the current bound on the number of + + ( ) ( ) ber of bit operations in ) g,<,3 = $ g < log 3 polylog < operation to find the roots of a multivariate polynomial systems of ( ) (( + + ( )) ( + log 3 . Using Lemma 4.4, this allows us notably to evaluate 5I 1 equations is currently polynomial in its degree and in its condition ( ))) < ( ) with an error lower than 1 2 2 in $ √3<) g,<,3 bit opera- number. It would be nice to generalize for the multivariate case the k k / ( ( )) tions after truncating 5I . tools that we used and developed for the univariate case. Let 6I l be the polynomial of degree 4√3< approximating In particular, Lemma 2.1 is based on Kantorovich’s theory, ( ) 5I l . For " in $ 3 g , we want to evaluate 6I on the "-th where all theorems are valid for multivariate systems. Moreover, ( ) ( / ) roots of unity. We start by computing the polynomial ℎ = 6 the distribution of the roots is also well described for the multivari- p I I mod - " 1 of degree " 1 with a number of bit operations in ate case [14]. Combining those results as we did for the univariate − − $ √3<) g,3,< . Then we can use the fast Fourier transform to case could help to improve the state-of-the-art bounds on the prob- ( ( 82c:)) " evaluate ℎI 4 for 0 : < " in $ 3 g log 3 ) g,<,3 lem of finding the roots of multivariate polynomial systems. ( / ) ≤ ( / ( ) ( )) bit operations. Thus the total number of bit operations is in p $ √3g √

On the other hand, in the complex case, using the piecewise [21] Rémi Imbach and Victor Y. Pan. 2020. New Progress in Univariate polynomial approximation and the error bound that we com- Polynomial Root Finding. In Proceedings of the 45th International Sympo- sium on Symbolic and Algebraic Computation (Kalamata, Greece) (ISSAC pute with our algorithm, we can use Kantorovich’s theory to ’20). Association for Computing Machinery, New York, NY, USA, 249–256. check if each root that we compute is indeed associated to a https://doi.org/10.1145/3373207.3404063 [22] Rémi Imbach, Victor Y. Pan, and Chee Yap. 2018. Implementation of a Near- root of the original polynomial. If we get = distinct roots, then Optimal Complex Root Clustering Algorithm. In Mathematical Software – ICMS our result has been validated with a number of bit operations in 2018, James H. Davenport, Manuel Kauers, George Labahn, and Josef Urban $ 3 log2 3^ polylog log 3^ . (Eds.). Springer International Publishing, Cham, 235–244. ( ( ) ( ( ))) [23] E. A. Karatsuba. 1991. Fast evaluation of transcendental functions. Probl. Inf. Transm. 27, 4 (1991), 339–360. [24] Alexander Kobel, Fabrice Rouillier, and Michael Sagraloff. 2016. Computing Real REFERENCES Roots of Real Polynomials ... and Now For Real!. In Proceedings of the ACM on [1] S. Basu, R. Pollack, and M.-R. Roy. 2006. Algorithms in Real Algebraic International Symposium on Symbolic and Algebraic Computation (Waterloo, ON, Geometry. Springer Heidelberg, Berlin, Heidelberg. 351–401 pages. Canada) (ISSAC ’16). Association for Computing Machinery, New York, NY, USA, https://doi.org/10.1007/3-540-33099-2 303–310. https://doi.org/10.1145/2930889.2930937 [2] Ruben Becker, Michael Sagraloff, Vikram Sharma, and Chee Yap. 2018. A near- [25] Pierre Lairez. 2017. A Deterministic Algorithm to Compute Approxi- optimal subdivision algorithm for complex root isolation based on the Pellet mate Roots of Polynomial Systems in Polynomial Average Time. Foun- test and Newton iteration. Journal of Symbolic Computation 86 (2018), 51 – 96. dations of Computational 17, 5 (01 Oct 2017), 1265–1292. https://doi.org/10.1016/j.jsc.2017.03.009 https://doi.org/10.1007/s10208-016-9319-7 [3] Carlos Beltrán and Luis Miguel Pardo. 2011. Fast Linear Homotopy to Find Ap- [26] Maplesoft. 2019. Maple. Waterloo Maple Inc.., Waterloo, Ontario. proximate Zeros of Polynomial Systems. Foundations of Computational Mathe- https://www.maplesoft.com matics 11, 1 (01 Feb 2011), 95–129. https://doi.org/10.1007/s10208-010-9078-9 [27] Cleve Moler. 1991. Cleve’s corner: ROOTS–Of Polynomials, That Is. ,6–7 pages. [4] D.A. Bini, L. Gemignani, and V.Y. Pan. 2004. Inverse power and [28] Victor Y. Pan. 2002. Univariate Polynomials: Nearly Optimal Algorithms for Durand-Kerner iterations for univariate polynomial root-finding. Numerical Factorization and Root-finding. Journal of Symbolic Computation 33, Computers & Mathematics with Applications 47, 2 (2004), 447–459. 5 (2002), 701–733. https://doi.org/10.1006/jsco.2002.0531 https://doi.org/10.1016/S0898-1221(04)90037-5 [29] Fabrice Rouillier and Paul Zimmermann. 2004. Efficient isolation of [5] Dario Andrea Bini and Giuseppe Fiorentino. 2000. Design, analysis, and imple- polynomial’s real roots. J. Comput. Appl. Math. 162, 1 (2004), 33–50. mentation of a multiprecision polynomial rootfinder. Numerical Algorithms 23, https://doi.org/10.1016/j.cam.2003.08.015 Proceedings of the International Con- 2 (01 Jun 2000), 127–173. https://doi.org/10.1023/A:1019199917103 ference on Linear Algebra and Arithmetic 2001. [6] Dario A. Bini and Leonardo Robol. 2014. Solving secular and polynomial equa- [30] Michael Sagraloff and Kurt Mehlhorn. 2016. Computing real roots of tions: A multiprecision algorithm. J. Comput. Appl. Math. 272 (2014), 276–292. real polynomials. Journal of Symbolic Computation 73 (2016), 46–86. https://doi.org/10.1016/j.cam.2013.04.037 https://doi.org/10.1016/j.jsc.2015.03.004 [7] , Felipe Cucker, , and Steve Smale. 1998. Complex- [31] Vikram Sharma. 2008. Complexity of real root isolation using con- ity and Real Computation. Springer New York, New York, NY. 153–168 pages. tinued fractions. Theoretical Computer Science 409, 2 (2008), 292–310. https://doi.org/10.1007/978-1-4612-0701-6 https://doi.org/10.1016/j.tcs.2008.09.017 Symbolic-Numerical Computations. [8] Peter Bürgisser and Felipe Cucker. 2013. Condition: The Geometry of [32] Steve Smale. 1981. The fundamental theorem of algebra and com- Numerical Algorithms. Springer Berlin Heidelberg, Berlin, Heidelberg. plexity theory. Bull. Amer. Math. Soc. (N.S.) 4, 1 (01 1981), 1–36. https://doi.org/10.1007/978-3-642-38896-5 https://projecteuclid.org:443/euclid.bams/1183547848 [9] Felipe Cucker, Teresa Krick, Gregorio Malajovich, and Mario Wschebor. 2008. A [33] The MathWorks Inc. 2020. version 9.9 (R2020b). The MathWorks Inc. numerical algorithm for zero counting, I: Complexity and accuracy. Journal of https://www.mathworks.com. Complexity 24, 5 (2008), 582–605. https://doi.org/10.1016/j.jco.2008.03.001 [34] The Sage Developers. 2020. SageMath, the Sage Mathematics Software System [10] Felipe Cucker, Teresa Krick, Gregorio Malajovich, and Mario Wschebor. (Version 9.2). https://www.sagemath.org. 2012. A numerical algorithm for zero counting. III: Randomization [35] Elias Tsigaridas. 2016. SLV: A Software for Real Root Isola- and condition. Advances in Applied Mathematics 48, 1 (2012), 215–248. tion. ACM Commun. Comput. Algebra 50, 3 (Nov. 2016), 117–120. https://doi.org/10.1016/j.aam.2011.07.001 https://doi.org/10.1145/3015306.3015317 [11] Felipe Cucker and Steve Smale. 1999. Complexity Estimates Depending [36] Elias P. Tsigaridas and Ioannis Z. Emiris. 2006. Univariate Polynomial Real on Condition and Round-off Error. J. ACM 46, 1 (Jan. 1999), 113–184. Root Isolation: Continued Fractions Revisited. In Algorithms – ESA 2006, Yossi https://doi.org/10.1145/300515.300519 Azar and Thomas Erlebach (Eds.). Springer Berlin Heidelberg, Berlin, Heidel- [12] J.P. Dedieu. 2006. Points fixes, zéros et la méthode de New- berg, 817–828. ton. Springer Berlin Heidelberg, Berlin, Heidelberg. 75–110 pages. [37] Joachim von zur Gathen and Jürgen Gerhard. 2013. Modern Com- https://doi.org/10.1007/3-540-37660-7 puter Algebra (3 ed.). Cambridge University Press, Cambridge, U.K. [13] Yen Do, Hoi Nguyen, and Van Vu. 2015. Real roots of random polynomi- https://doi.org/10.1017/CBO9781139856065 als: expectation and repulsion. Proceedings of the London Mathematical Society 111, 6 (2015), 1231–1260. https://doi.org/10.1112/plms/pdv055 arXiv:https://londmathsoc.onlinelibrary.wiley.com/doi/pdf/10.1112/plms/pdv055 [14] Alan Edelman and Eric Kostlan. 1995. How many zeros of a ran- dom polynomial are real? Bull. Amer. Math. Soc. 32, 1 (1995), 1–37. https://doi.org/10.1090/S0273-0979-1995-00571-9 [15] Alan Edelman and H Murakami. 1995. Polynomial roots from com- panion matrix eigenvalues. Math. Comp. 64, 210 (1995), 763–776. https://doi.org/10.1090/S0025-5718-1995-1262279-2 [16] L. W. Ehrlich. 1967. A Modified Newton Method for Polynomials. Commun. ACM 10, 2 (Feb. 1967), 107–108. https://doi.org/10.1145/363067.363115 [17] Akritas A. G., Strzebonski A. W., and Vigklas P. S. 2008. Improving the Per- formance of the Continued Fractions Method Using New Bounds of Positive Roots. Nonlinear Analysis: Modelling and Control 13, 3 (Jul. 2008), 265–279. https://doi.org/10.15388/NA.2008.13.3.14557 [18] Charles R. Harris, K. Jarrod Millman, Stéfan J. van der Walt, et al. 2020. Array programming with NumPy. Nature 585, 7825 (Sept. 2020), 357–362. https://doi.org/10.1038/s41586-020-2649-2 [19] John Hubbard, Dierk Schleicher, and Scott Sutherland. 2001. How to find all roots of complex polynomials by Newton’s method. Inventiones mathematicae 146, 1 (01 Oct 2001), 1–33. https://doi.org/10.1007/s002220100149 [20] Rémi Imbach and Victor Y. Pan. 2020. New Practical Advances in Polyno- mial Root Clustering. In Mathematical Aspects of Computer and Information Sci- ences, Daniel Slamanig, Elias Tsigaridas, and Zafeirakis Zafeirakopoulos (Eds.). Springer International Publishing, Cham, 122–137.