Efficiently Computing Real Roots of Sparse Polynomials
aa r X i v : . [ c s . S C ] A p r Efficiently Computing Real Roots of Sparse Polynomials
Gorav Jindal
Max-Planck-Institut für InformatikGermany [email protected] Michael Sagraloff
Max-Planck-Institut für InformatikGermany [email protected]
ABSTRACT
We propose an efficient algorithm to compute the real rootsof a sparse polynomial f ∈ R [ x ] having k non-zero real-valued coefficients. It is assumed that arbitrarily good ap-proximations of the non-zero coefficients are given by meansof a coefficient oracle. For a given positive integer L , our al-gorithm returns disjoint disks ∆ , . . . , ∆ s ⊂ C , with s < k ,centered at the real axis and of radius less than 2 − L to-gether with positive integers µ , . . . , µ s such that each disk∆ i contains exactly µ i roots of f counted with multiplicity.In addition, it is ensured that each real root of f is con-tained in one of the disks. If f has only simple real roots,our algorithm can also be used to isolate all real roots.The bit complexity of our algorithm is polynomial in k andlog n , and near-linear in L and τ , where 2 − τ and 2 τ consti-tute lower and upper bounds on the absolute values of thenon-zero coefficients of f , and n is the degree of f . For rootisolation, the bit complexity is polynomial in k and log n ,and near-linear in τ and log σ − , where σ denotes the sepa-ration of the real roots.
1. INTRODUCTION1.1 Problem Definition and Contribution
In this paper, we study the problem of computing the realroots of a sparse polynomial f ( x ) = X ki =1 f i x e i ∈ R [ x ] , (1.1)where e i are non-negative integers, with 0 ≤ e < e < . . .
L, I )-covering) . A weak ( L, I ) -covering for f is a list ( I , . . . , , I t ) of open disjoint and sorted realintervals that fulfills the following conditions:1. The width of each interval I j is at most 2 − L .
2. For every real root ξ of f in I , there exists an interval I j that contains ξ. If I = R , we omit I and just call a (weak) ( L, R ) -covering for f a (weak) L -covering for f. Then, our main contribution isa polynomial-time algorithm for computing an L − covering: Theorem 3.
For an ( n, k, τ ) -nomial, we can compute an L -covering L of size |L| < k in time ˜ O (poly( k, log n ) · ( τ + L )) . Notice that our algorithm computes L − bit approximationsof all real roots but might also return (real-valued) L − bitapproximations of some non-real roots with a small imagi-nary part. Further notice that unless µ j is odd, we also donot know whether m j actually approximates a real root, andunless µ j = 1 , we cannot conclude that a disk ∆ r j ( m j ) in an L -covering is isolating for a root of f . Hence, in general, ouralgorithm does not yield the correct number of distinct realroots. However, if f has only simple roots, we may computean L − covering for f for L = 2 , , , . . . until µ j = 1 for all j . Then, the disks ∆ r i ( m i ) isolate all real roots. Theorem 4.
Let f be an ( n, k, τ ) -nomial with only simplereal roots, and let σ be the minimal distance between anytwo (complex) distinct roots of f (i.e. the separation of f ).Then, we can compute isolating intervals for all real roots in ˜ O (poly( k, log n )( τ + log max(1 , /σ ))) bit operations. We improve upon [15] in several ways. Namely, [15] onlyapplies to integer polynomials, whereas our novel approachapplies to polynomials with arbitrary real coefficients. Inaddition, the running time of the algorithm in [15] doesnot adapt to the actual hardness of the roots, whereas thecomplexity of our novel approach rather depends on the ac-tual separation than on the worst-case bound [17] of size2 − O ( n ( τ +log n )) for the separation of an integer polynomial.In the worst case, our method isolates all real roots of avery sparse integer polynomial (i.e. k = (log( nτ )) O (1) ) intime ˜ O ( nτ ), and is thus near optimal.; see [15] Before we go into detail, we give a brief overview of ouralgorithm, where we omit technical details. We first re-mark that the problem of computing an ( L, [1 , ∞ ))-covering can be reduced to the problem of computing an ( L, [0 , L, [0 , /n ])-covering but this for technical reasons only) by means of thecoordinate transformation x x followed by multiplicationwith x n . We may also reduce the problem of computingan ( L, ( −∞ , f to the problem of computingan ( L, [0 , ∞ ))-covering by means of the coordinate transfor-mation x
7→ − x . Hence, we are eventually left with merg-ing ( L, [0 , f, x n · f (1 /x ) ,f ( − x ) , and x n · f ( − /x ) in a suitable manner. We give de-tails for this step in Section 7. Notice that the consideredcoordinate transformation preserves the sparseness of theinput polynomial, hence we may concentrate on the prob-lem of computing an ( L, [0 , f only. For this,we first compute a weak ( L, [0 , f , which isachieved by recursively computing weak ( L, [0 , fractional derivatives of f . Definition 5 (Fractional Derivatives) . Let f be a polyno-mial as in (1.1). Then, we define f [1] := f ′ x e − as the (first)fractional derivative of f . In other words, we divide thefirst derivative f ′ of f by the highest possible power of x that divides f ′ . The i − th fractional derivative f [ i ] of f isthen recursively defined as the first fractional derivative of f [ i − . Notice that, for i ≤ k − f [ i ] is an ( n, k − i, τ + k · log n ) − nomial with a non-zero constant term and f [ i ] ≡ i ≥ k. We further use the notation D f to denote the tuple ofall non-zero fractional derivatives f, f [1] , f [2] , f [2] , . . . , f [ k − ,i.e, D f = ( f, f [1] , f [2] , f [3] , . . . , f [ k − ).The general idea of recursively computing the real roots of f from the real roots of its fractional derivatives has alreadybeen considered in previous work; e.g. [1, 4, 5, 8, 12, 14,15]. The simple idea is that, given a weak ( L, [0 , I ′ , . . . , I ′ t ′ ) for f [1] , we already know that in between twoconsecutive intervals I j = ( a, b ) and I j +1 = ( c, d ), the poly-nomial f is monotone, and thus there can be at most one realroot in between b and c , which then must be simple. In orderto check for the existence of such a root, it suffices to checkwhether f changes signs at the points b and c. In case of asign change, we may then refine the interval ( a, b ), which isknown to be isolating for a real root of f , to a width less than2 − L . If we proceed in this way for all intervals in betweentwo consecutive intervals as well as with the leftmost inter-val, whose endpoints are 0 and the left endpoint of I ′ , andthe rightmost interval, whose endpoints are the right end-point of I ′ t ′ and 1 , then we obtain a set of intervals I ′′ j of sizeat most 2 − L that cover all real roots of f that are containedin [0 ,
1] but in none of the intervals I ′ j . Hence, the unionof the intervals I ′ j and I ′′ j constitutes an ( L, [0 , f . This shows how to compute an ( L, [0 , f from recursively computing ( L, [0 , f at givenpoints b, c may require a very high precision, which shouldbe avoided to ensure a polynomial bit complexity. In addi-tion, we need an efficient refinement method that uses onlya polynomial number of iterations. For the latter problem,we use a slightly modified variant of our algorithm from [15, For technical reasons, we will indeed consider slight pertur-bations of 0 and 1 in our algorithm.6]. For the computation of the sign of f (and its higher or-der fractional derivatives) at certain points, we consider anapproach that allows us to slightly perturb the evaluationpoints such that the absolute value of each of the consid-ered polynomials does not become too small. One majorcontribution of this paper, when compared to our previouswork [15], is to show that this can be done in way such thatthe precision always stays polynomial in log n, k, τ, and L .In the second step, we derive an ( L, [0 , − covering from aweak ( L ′ , [0 , − covering, where L ′ has been chosen suffi-ciently large. A straight forward approach would be to usea method for computing the number of roots in the one-circle region ∆( I ) = ∆ r ( m ) of each interval I in the weak( L ′ , [0 , − covering. Here, ∆( I ) is defined as the disk cen-tered at the midpoint m = m ( I ) of I and passing throughthe endpoints of the interval. In the literature, several meth-ods have been proposed to count the number of roots in adisk in complex space. Unfortunately, these algorithm arenot sparsity aware, which rules out a straight-forward ap-plication of them. Recent work [3] introduces the so-called T l -test, a method for root counting based on Pellet’s Theo-rem. The method only needs to compute approximations ofthe coefficients of the polynomial f ( m + r · x ), however, wecannot afford to compute all coefficients. Fortunately, in oursituation, only the first k coefficients are actually needed todetermine the outcome of the test. In order to guarantee suc-cess of the test, it may further be necessary to merge some ofthe intervals in the weak covering and to consider disks thatare larger than the one-circle regions of the merged inter-vals. This explains why we need a weak ( L ′ , [0 , − coveringwith a sufficiently large L ′ > L. We consider our method forcounting the roots of a sparse polynomial in a disk as thesecond main contribution of our paper.
2. ON THE GEOMETRY OF ROOTS
Descartes’ Rule of Signs states that the number var( F ) ofsign changes in the coefficient sequence of a polynomial F ∈ R [ x ] constitutes an upper bound on the number of real roots(counted with multiplicity). Hence, it follows immediatelythat a k − nomial f as in (1.1) has at most k − k − k -nomials have indeed much more structure on their roots,which we will briefly survey in this section.Let I = ( a, b ) be an interval, F I ( x ) := ( x + 1) n · F (cid:16) ax + bx +1 (cid:17) ,and v I := var( F, I ) be the number of sign changes in thecoefficient sequence of the polynomial F I . Notice that thereis a one-to-one correspondence between the roots of F in I and the positive real roots of F I via the M¨obius transforma-tion that maps a point x ∈ C \ {− } to ax + bx +1 ∈ C . Thus, v I constitutes an upper bound on the number of roots of F in I. In fact, v I also constitutes a lower bound on thenumber of roots in the so called Obreshkoff lens L n of theinterval I . L n is defined as the intersection L n := C n ∩ C n of the two open disks C n , C n ⊂ C that intersect the realaxis in the endpoints a and b of I , and whose centers seethe line segment ( a, b ) under the angle πn +2 . For an il-lustration, see [16, Fig. 1]. It further holds [15, 16]) thatvar( F, I ) ≤ var( F ) ≤ k − I ⊂ R + , hencewe conclude that the Obreshkoff lens L n of any such intervalcontains at most k − b
7→ ∞ , the Obreshkoff lens L n of the interval I = (0 , b ) converges to the cone C n whoseboundary are the two half-lines starting at the origin and πn +2 T h i s r e g i o n c o n t a i n s a t m o s t k − r o o t s o f f x -axis y - a x i s Figure 2.1:
The cone C n contains at most k − f . intersecting the real axis at an angle ± πn +2 ; see Figure 2.1.Hence, it follows that the interior of C n contains at most k − k − nomial of degree n . Theorem 6.
The cone C n contains at most k − roots ofany k -sparse polynomial of degree n .
3. POLYNOMIAL ARITHMETIC
Our algorithm only needs to perform basic operations onpolynomials. In particular, we need to evaluate the sign ofa given sparse polynomial at some points x . As we alreadymentioned in the overview of our algorithm, the complex-ity of this operation becomes too large if the value of thepolynomial at a given point x is almost zero as then oneneeds to perform computations with a very high precision.Also, exact evaluation of a sparse polynomial at a rationalpoint (even of small bitsize) is expensive as the output hasbitsize linear in n . Instead, we consider approximate evalu-ation, which allows us to evaluate a sparse polynomial f asin (1.1) at an arbitrary point x ∈ (0 , /n ) to an absoluteerror less than 2 − L in a time that is polynomial in log n, k,τ, and L. More precisely, we derive the following result:
Lemma 1.
Let f ∈ R [ x ] be an ( n, k, τ ) -nomial, c be a pos-itive real number, and L a non-negative integer. Then, wecan compute an L -bit approximation λ of f ( c ) (i.e. | λ − f ( c ) | < − L ) in a number of bit operations bounded by ˜ O (( k + log n ) · ( L + n log max(1 , | c | ) + log n + τ + k )) . Proof.
In essence, we follow the same approach as in [7].That is, for a fixed non-negative integer K , we perform eachoccurring operation ◦ (i.e. either addition or multiplication)with fixed precision K . More precisely, the input is initiallyrounded after the K -th bit after the binary point. Then,in each of the following steps, we replace each exact oper-ation ◦ between two numbers a and b by a correspondingapproximate operation ˜ ◦ , where we define a ˜ ◦ b to be the re-sult obtained by rounding a ◦ b after the K -th bit after thebinary point. Suppose that we have computed approxima-tions ˜ a = a + ε and ˜ b = b + ε of two intermediate results a and b , where we assume that ε := max( | ε | , | ε | , − K ) < . Then, we have | a · b − ˜ a ˜ · ˜ b | < | a | · | ε | + | b | · ε + | ε ε | + 2 − K < · ε · max(1 , | a | , | b | ) and | a + b − ˜ a ˜+˜ b | < | ε | + | ε | + 2 − K .Hence, when evaluating one term f i · x e i of f at the point x = c with absolute precision K > L + log k + 1 + τ +(2 log n + 1) · ( n · log max(1 , | c | ) + 2) via repeated squaring,we induce a total error ε i for the computation of f i · c e i ofsize less than 2 τ c n (2 log n +1) · n +1 · − K − L < (2 k ) − · − L as there are at most 2 log n + 1 multiplications, and each(exact) intermediate result has absolute value bounded bymax(2 τ , c n ) . When eventually summing up the approxima-tions of all terms f i · x e i , we thus induce an error of size lessthan P i ε i + k · − K < − L for the computation of the final Notice that, for c ∈ (0 , /n O (1) ), we may omit the term n log max(1 , | c | ) in the bounds stated in Lemma 1.esult. The bound on the bit complexity follows from thefact that we need O ( k + log n ) arithmetic operations on in-tegers of bitsize O ( K + τ + log k + n log max(1 , | c | )) = O ( K ),and each such operation uses ˜ O ( K ) bit operations.We already mentioned that evaluating the sign of a polyno-mial f at a point x might be costly if f ( x ) has a small abso-lute value. In order to avoid such undesired computations,we first perturb x in a suitable manner. That is, insteadof evaluating the sign of f at x, we evaluate its sign at anearby point, where f becomes large enough. This can bedone in a way such that the actual behavior of the algorithmdoes not change. We will call such points “admissible”. Weremark that we already used this concept in previous work[15, 16]. Here, we modify the approach to choose an admis-sible point, where the sign of each fractional derivative of asparse polynomial f can be evaluated in polynomial time. Definition 7 (Admissible point) . Let g : R → R be a func-tion and m [ t ; δ ] = { m i := m + ( i − k ) · δ ; i = 0 , , . . . , t } bea multipoint. We call a point m ∗ ∈ m [ t ; δ ] to be ( g, m [ t ; δ ]) -admissible if | g ( m ∗ ) | ≥ · max x ∈ m [ t ; δ ] | g ( x ) | .If t and δ (or even m and g ) are clear from the context, wesimply call a ( g, m [ t ; δ ])-admissible point ( g, m )-admissible(or just admissible). Since the value of a polynomial g atan admissible points is “relatively large”, we expect that g has no root in a neighborhood of an admissible point. Thefollowing lemma formalizes this intuition. Lemma 2.
Suppose that m ∈ R + and m ∗ ∈ m [ t ; δ ] is an ( f, m [ t ; δ ]) -admissible point for an ( n, k, τ ) -nomial f with k ≥ and k ≤ t ≤ k . Further assume that mδ > k n .Then, the disk ∆ δk k ( m ∗ ) does not contain any root of f .Proof. Let z , . . . , , z n denote the complex roots of f. Since f ( x ) has at most k − C n (see Figure 2.1 )and t ≥ k , there exists a point b ∈ m [ t ; δ ] such that ∆ δ/ ( b )does not contains any of these k − z l of f in the ball of radius δk k around m ∗ .We have f ( m ∗ ) f ( b ) = n Y i =1 m ∗ − z i b − z i By using the triangle inequality for the distance between m ∗ and z i , one can see that, for the roots z i = z l that arecontained in C n , we have m ∗ − z i b − z i ≤ t + 1 ≤ k + 1 , whereas m ∗ − z l b − z l < · k − k . Now, consider the roots z i of f that are outside of C n . Since mδ > k n , it follows thatthe distance of m ∗ to any such b is at at least 32 k δn .Again using the triangle inequality for distance between m ∗ and z i , this implies that m ∗ − z i b − z i ≤ t k n ≤ n Hence f ( m ∗ ) f ( b ) ≤ (cid:18) n (cid:19) n − k +1 · (2 k + 1) k − · k k < (cid:18) n (cid:19) n − k +1 · ( 2 k + 1 k ) k − · k ≤ ek < . This contradicts the fact that m ∗ is an admissible point. Definition 8.
Let G = ( g , g , . . . , g t ) be a tuple of t func-tions g i : R → R . Then, M G ( x ) is defined as follows: M G ( x ) := min( | g ( x ) | , | g ( x ) | , , . . . , | g t ( x ) | ) . For a fixed real x , we call ˜ G ( x ) = (˜ g ( x ) , ˜ g ( x ) , . . . ˜ g t ( x )) an L -approximation of G ( x ) if | ˜ g i ( x ) − g i ( x ) | ≤ − L for all i .We first show how to compute an admissible point m ∗ ∈ m [ t ; δ ] for M G ( x ) under the assumption that we can computean L -approximation of G ( x ) for any x ∈ m [ t ; δ ] in time T ( L ). Lemma 3.
Let G = ( g , g , . . . , g t ) be as in Definition 8, m [ t ; δ ] a multipoint and m i := max a ∈ m [ t ; δ ] | M G ( a ) | . Sup-pose that for for a point x ∈ m [ t ; δ ] we can compute an L -approximation of G ( m i ) in time T ( L, x ) , then we can com-pute an ( M G , m [ t ; δ ]) -admissible point m ∗ ∈ m [ t ; δ ] in time O ( t · log log max( λ − , · ( T (log max( λ − , . Within the same time, we may compute an integer ℓ ∗ with ℓ ∗ − ≤ | M G ( m ∗ ) | ≤ λ ≤ ℓ ∗ +1 . Proof.
We proceed in the same fashion as in Lemma 8 of[16]. For L = 1 , , , . . . , , we compute L -approximations˜ G Li = (˜ g L ( m i ) , ˜ g L ( m i ) , . . . ˜ , g Lt ( m i )) of G ( m i ) for all points m i ∈ m [ t ; δ ] until the following condition is satisfied for atleast one m i : M Li := min(˜ g Li ( m i ) | , | ˜ g L ( m i ) | , . . . , | ˜ g Lt ( m i ) | ) ≥ · − L = 2 − L +2 . Then, let i be the index such that M Li is maximal among all M Li , and let ℓ ∗ be an integer such that (cid:12)(cid:12) ℓ ∗ − log M Li (cid:12)(cid:12) ≤ .We output ℓ ∗ and m ∗ := m i . It is now straight-forward(cf. the proof of Lemma 8 in [16]) to show that 2 ℓ ∗ − ≤ M G ( m ∗ ) ≤ λ ≤ ℓ ∗ +1 .Following the above approach, we must succeed for an L ≤ λ , L at most O (log log max( λ , g i at t points, the stated complexity bound follows.We now apply the above lemma to the special case where G = D f is the sequence of fractional derivatives of f . Then,Lemma 1 yields a bound of the bit complexity of computing L -approximations of D f ( m i ) for all points m i ∈ m [ t ; δ ]. Corollary 9.
Assume that f ( x ) is a ( n, k, τ ) -nomial, m [ t ; δ ] a multipoint and λ := max m i ∈ m [ t ; δ ] (cid:12)(cid:12) M D f ( m i ) (cid:12)(cid:12) . Further as-sume that m [ t ; δ ] ⊂ (0 , α ) for some positive real number α .Then, we can determine an ( M D f , m [ t ; δ ]) -admissible point m ∗ and an integer ℓ ∗ with ℓ ∗− ≤ (cid:12)(cid:12) M D f ( m ∗ ) (cid:12)(cid:12) ≤ λ ≤ ℓ ∗ +1 using ˜ O ( t · k · ( k + log n ) · ( τ + k log n + n log max(1 , α ) +log max(1 , λ − ))) many bit operations. Notice that the running time of the above algorithm dependson the value λ := max m i ∈ m [ t ; δ ] (cid:12)(cid:12) M D f ( m i ) (cid:12)(cid:12) . We will nowerive a bound on λ that shows that, for a sufficiently large t and suitably chosen m and δ , we can always compute an( M D f , m [ t ; δ ])-admissible point m ∗ in polynomial time. Lemma 4.
Let f ∈ R [ x ] be a ( n, k, τ ) -nomial as in (1.1),and let a, r be positive real numbers with r < a and such that ( a − r, a + r ) does not contain any real root of any fractionalderivative of f ( x ) . Then, it holds that | M D f ( a ) | = 2 − O ( k ( k log n + τ +log max(1 , r )+ n log max(1 ,a + r ))) . Proof.
We may assume that r is small enough to guaranteethat ar > n . This implies that, for any two points x, x ′ ∈ I := ( a − r, a + r ), we have that x/x ′ ∈ (1 − /n, /n ).Now, let us write f = c + x j · g with a constant c of absolutevalue at least 2 − τ and g an ( n − j, k − , τ + log n ) − nomialthat is not divisible by x. Then, it holds that f [1] = j · g + x · g ′ ,and thus f ′ = x j − · f [1] . In addition, since I := ( a − r, a + r )does not contain any root of f and f [1] , it follows that f ismonotone on I and only takes positive or negative values.This implies that | f ( t ) − f ( t ′ ) | = || f ( t ) | − | f ( t ′ ) || for all t, t ′ ∈ I . In addition, for any t ∈ I := ( a − r/ , a + r/ t ′ = t ± r/ | f ( t ) | > | f ( t ′ ) | .Now, according to the mean value theorem, there exists a ξ in between t and t ′ with f ( t ) − f ( t ′ ) = ( t − t ′ ) · f ′ ( ξ ) = r · ξ j − · f [1] ( ξ ). Hence, we obtain | f ( t ) | > | f ( t ) | − | f ( t ′ ) | = || f ( t ) | − | f ( t ′ ) || = | f ( t ) − f ( t ′ ) | ≥ r · ξ j − · f [1] ( ξ ) ≥ r · t j − · f [1] ( ξ ) , where the latter inequality follows from ( ξ/t ) j − > (1 − /n ) n > /
2. Also, | f ( t ) | ≥ | c |− t j ·| g ( t ) | ≥ − τ − t j − · k · τ +log n · max(1 , a + r ) n . With ε := min(1 , inf x ∈ I | f [1] ( x ) | ),the above inequalities thus imply that | f ( t ) | > max( rε · t j − , − τ − t j − k τ +log n · max(1 , a + r ) n )Now, if t j − < − τ − ( k τ +log n · max(1 , a + r ) n ) − , thenthe second argument in the above term becomes larger than2 − τ − . Otherwise, the first term becomes larger than rε · − τ − ( k τ +log n · max(1 , a + r ) n ) − . Hence, we conclude thatinf x ∈ I | f ( x ) | > r · ε · − τ − − n − n log max(1 ,a + r ) . We now recursively apply the above result to the fractionalderivatives f [ k − i ] and the intervals I i := ( a − r i − , a + r i − ),where i = 1 , , . . . , k . Notice that each of the polynomials isan ( n, k, τ + k log n ) − nomial and that inf x ∈ I | f [ k − ( x ) | > − τ as f [ k − is a constant of absolute value at least 2 − τ .Hence, it follows thatinf x ∈ I i | f [ k − i ] ( x ) | > − τ − i · (2 τ − − k log n − n log max(1 ,a + r )) · i − Y j =1 r j . Combining the above lemma and Corollary 9 now yields
Theorem 10.
Let f be a ( n, k, τ ) -nomial as in (1.1), andlet m [ t ; δ ] be a multipoint with t ≥ k and m [ t ; δ ] ⊂ (0 , α ) for some for some real number α . Then, we can compute an ( M D f , m [ t ; δ ]) -admissible point m ∗ using ˜ O ( t · k · ( k +log n ) · ( k log n + τ +log max(1 , δ )+ n log max(1 , α ))) bit operations.Proof. Since each fractional derivative of f has at most k − t ≥ k , there exists an a ∈ m [ t ; δ ] such that ( a − δ/ , a + δ/
2) does not contain anyreal root of any of fractional derivative. Hence, Lemma 4 implies that λ := max x ∈ m [ t ; δ ] | M D f ( x ) | ≥ | M D f ( a ) | is lowerbounded by 2 − O ( k ( k log n + τ +log δ + n log max(1 ,a + δ ))) . Corollary9 then yields the claimed bound on the running time.
4. REFINEMENT
A crucial subroutine of our overall algorithm is an efficientmethod for refining an interval I = ( a , b ) ⊂ R + , withmax( | log a | , | log b | ) = O ( τ ), that is known to be isolatingfor a simple real root of a k -nomial f . It is assumed thatthe algorithm receives the sign of f at the endpoints of I asadditional input. For the refinement, we consider the algo-rithm NewRefine from Section 3 in [15] (see also Section 5in [16]), however, we make a single (minor) modification. Asthe argument from [15] directly applies, we only state themain results and refer the reader to [15] for details.
NewRefine recursively refines I to a size less than 2 − L using a trial and error approach that combines Newton iter-ation and bisection. For this, only f and its first derivative f ′ need to be evaluated. More precisely, in each iteration, thealgorithm computes ( f, m [ ⌈ k/ ⌉ ; δ ]) − admissible points m ∗ for a constant number of points m ∈ I and a corresponding δ of size 2 − O ( τ +log n + L ) . In addition, f and f ′ are evaluatedat these admissible points to an absolute precision that isbounded by O (log max(1 , | f ( m ∗ ) | − ) + log n + L + τ ). Eachendpoint of the interval returned by NewRefine is then ei-ther one of the admissible points computed in a previousiteration or one of the endpoints of I .We now propose the following modification of NewRefine ,which we denote
NewRefine ∗ : Whenever NewRefine asksfor an ( f, m [ ⌈ k/ ⌉ ; δ ]) − admissible point m ∗ , we compute an( M D f , m [ k ; δ ′ ]) − admissible point m ∗ , with δ ′ = δ · ⌈ k/ ⌉ k ,instead. Then, the same argument as in [15] yields: Theorem 11.
For refining I to a size less than − L , thealgorithm NewRefine ∗ needs O ( k · (log n +log( τ + L ))) itera-tions. In each iteration, we need to compute a constant num-ber of ( M D f , m [ k ; δ ′ ]) − admissible points m ∗ , with m [ k ; δ ′ ] ⊂ I and δ ′ = 2 − O ( τ +log n + L ) . In addition, the polynomials f and f ′ have to evaluated at m ∗ to an absolute precisionbounded by O (log max(1 , | f ( m ∗ ) | − ) + log n + L + τ ) . Combining Theorems 11 and 10, we obtain a bound on thecomplexity of refining I to a size less than 2 − L : Corollary 12.
For refining I to a size less than − L , thealgorithm NewRefine ∗ needs ˜ O ( k · ( k + log n ) · log n · ( k log n + τ + L + n log max(1 , b ))) bit operations. For each endpoint p of the interval returnedby NewRefine , it holds that M D f ( p ) = 2 − O ( ℓ + k ( k log n + τ + L + n log max(1 ,b ))) . with ℓ := log min(1 , M D f ( a ) , M D f ( b )) − .
5. COMPUTING A WEAK COVERING
We now describe how to compute a weak ( L, [0 , /n ]) - covering for a given ( n, k, τ )-nomial f in polynomial time.We first compute an upper bound ˜ τ ∈ Z for τ with τ ≤ ˜ τ ≤ τ + 2, and define δ := min(2 − τ − , /n ) · k − . Then, The argument in [15] only uses that, in each iteration, wechoose an arbitrary point m ∗ ∈ [ m − ⌈ k/ ⌉ · δ, m + ⌈ k/ ⌉ · δ ].n the first step, we compute ( M D f , m [ k ; δ ]) − admissiblepoints a ∗ and b ∗ for m := 2 − τ − and m := 1 + 2 /n , re-spectively. Then, we follow the approach as outlined inthe first part of Section 1.2 to compute a weak ( L, [ a ∗ , b ∗ ])-covering for f , where we use the algorithm NewRefine ∗ from the previous Section to refine isolating intervals forthe roots of the fractional derivatives of f to a size lessthan 2 − L . The so obtained covering is indeed also a weak( L, [0 , /n ]) - covering for f , which follows from the factthat b ∗ ≥ /n and each positive root of f is lower boundedby (1 + max ki =1 | f i | / | f | ) − due to Cauchy’s root bound [17].For details, consider the exact definition of Algorithm 1. Algorithm 1
Compute a weak ( L, [0 , f Input :
An ( n, k, τ )-nomial f and a non-negative in-teger L ∈ N . Output :
A weak ( L, [0 , /n ])-covering of f .Compute ˜ τ ∈ N with τ ≤ ˜ τ ≤ τ + 2. δ := k · min( n , − τ − )Compute ( M D f , m [ k ; δ ]) − admissible points a ∗ and b ∗ for m := 2 − τ − and m := 1 + n , respectively. Compute thesign of f at x = a ∗ and x = b ∗ . for i = k − to doif i = k − then Compute a trivial weak ( L, [ a ∗ , b ∗ ])-covering W k − for f [ k − ( f [ k − has only one monomial). W k − = { ( a ∗ , a ∗ ) , ( b ∗ , b ∗ ) } . else W i +1 = weak ( L, [ a ∗ , b ∗ ])-covering for f [ i +1] com-puted in the previous iteration of this loop. W i = W i +1 . for each consecutive intervals ( a, b ) and ( c, d ) in W i +1 do Compute signs of f [ i ] ( b ) and f [ i ] ( c ) if f ( i ) ( b ) f ( i ) ( c ) < then Use
NewRefine ∗ to refine the isolating inter-val ( b, c ) to a new interval ( b ′ , c ′ ) of lengthat most 2 − L .Compute signs of f [ i ] ( b ′ ) and f [ i ] ( c ′ ). W i = W i ∪ ( b ′ , c ′ ) return W .Correctness of the algorithm follows directly from our con-siderations in Section 1.2. Further notice that, for each i in the outermost for-loop of the algorithm, we add at most k − i − W i to obtain W i +1 as f [ i ] has at most k − i − W i containsat most k many intervals. It remains to bound the runningtime of Algorithm 1. The proof of the following Lemma fol-lows in a straight forward manner from Theorem 10, Corol-lary 12, and the fact that we need to call the refinementalgorithm at most k times for each fractional derivative. Lemma 5.
Algorithm 1 computes a weak ( L, [0 , n ]) -covering for f consisting of at most k many intervals. Itsbit complexity is ˜ O ( k ( k + log n · ( k log n + τ + L ) · ) log n ) . Proof.
According to Theorem 10, the cost for computing a ∗ and b ∗ is bounded by ˜ O ( k ( k + log n )( k log n + τ )). Therefinement algorithm is called at most k many times for refining the roots of the fractional derivatives. Corollary 12thus yields a bound of size ˜ O ( k · ( k + log n )( k log n + τ ))for the bit complexity of the refinements. The computationsof the signs of the factional derivative f [ i ] at the endpointsof the intervals in W i +1 is dominated by this bound as therefinement algorithm returns intervals whose endpoints areadmissible with respect to M D f . Thus, the computationof each such admissible point already yields the sign of allfractional derivative at this point.In order to further process a weak ( L, [0 , /n ])-coveringfor f , we need the intervals in the weak covering to be wellseparated. For given L, λ ∈ N , we say that a list L ofintervals is ( L, λ ) -separated if the distance dist( I, J ) between I and its neighboring intervals is at least min(2 − L , λ · w ( I )).Notice that, starting from an arbitrary list L of intervals, wecan always deduce an ( L, λ )-separated list L ′ from L in a waysuch that each interval in L is contained in an interval from L ′ . Namely, this can be achieved by recursively mergingpairs of intervals I, J ∈ L that violate the above conditionuntil the actual list is (
L, λ ) -separated . It is easy to see that w ( L ′ ) ≤ (2 + λ ) |L| · max(2 − L , w ( L )) , where w ( L ) and w ( L ′ ) denote the maximal width of an in-terval in L and L ′ , respectively. Hence, by first computing aweak ( L ′ , [0 , /n ])-covering L , with L ′ = L + k · log(2+ λ )and |L| = O ( k ), and then recursively merging the intervals,we obtain a weak ( L, [0 , /n ]) − covering for f that is also( L, λ )-separating and whose intervals have width at most2 − L . From Lemma 5, we thus conclude: Corollary 13.
For any λ, L ∈ N , we can compute a ( L, λ ) -separating weak ( L, [0 , /n ]) − covering for f in ˜ O ( k ( k +log n ) · ( k log n + τ + L + k log(2 + λ )) · log n ) bit operations. T L -TEST In the previous section, we have shown how to compute aweak ( L, [0 , /n ))-covering of a given ( n, k, τ )-nomial f .Now, we aim to convert this weak covering to a coveringof f . For this, we need an algorithm to count the numberof roots of f ( x ) contained in a given disk. Recent work [3]introduces a simple corresponding algorithm, denoted T l -test, which is based on Pellet’s Theorem. More precisely, foran arbitrary polynomial F ∈ C [ x ], a disk ∆ = ∆ r ( m ) ⊂ C ,and a parameter K ≥
1, we consider the inequality T l (∆ , K, F ) : (cid:12)(cid:12)(cid:12)(cid:12) F ( l ) ( m ) r l l ! (cid:12)(cid:12)(cid:12)(cid:12) − K · X i = l (cid:12)(cid:12)(cid:12)(cid:12) F ( i ) ( m ) r i i ! (cid:12)(cid:12)(cid:12)(cid:12) > . (6.1)Hence, we check whether the absolute value of the l -th co-efficient a l of F ∆ ( x ) = f ( m + rx ) = P ni =0 a i x i dominatesthe sum of the absolute values of all remaining coefficientsweighted by the parameter K . We say that T l (∆ , K, F ) suc-ceeds if the above inequality is fulfilled. Otherwise, we saythat it fails. In case of success (for any K ≥ l roots of F counted with multiplicity, whereas wehave no information in case of a failure. However, in [3], wederive sufficient conditions on the success of the T l -test: Theorem 14. [[3], Corollary 1] Let F ∈ C [ x ] be a polyno-mial of degree n , and ∆ r ( m ) be a disk. If ∆ r ( m ) as well asthe enlarged disk ∆ n r ( m ) contain l roots of F countedwith multiplicity, then T l (∆ nr ( m ) , , F ) succeeds.Unfortunately, the above test has two major drawbacks whendealing with sparse polynomials. First, we need to computehe coefficients F ∆ exactly, which we cannot afford as thebitsize of each coefficient is at least linear in n . Second, aneven more severe, there are n coefficients to be computed.Hence, using the above approach directly to count the num-ber of roots of a sparse polynomial f does not work. Instead,we propose two modifications to overcome these issues. Thefirst modification, namely to use approximate (in a propermanner) instead of exact arithmetic, has already been con-sidered in previous work. However, the second modificationis more subtle. It exploits the fact that, for a suitably cho-sen disk centered at some admissible point, only the first k coefficient are relevant for the outcome of the above test.We first go into details with respect to our first modification.Let us define E ℓ := | a l | and E r := K · P i = l | a i | the expres-sions on the left and right hand side of the inequality in (6.1).We aim to check whether E ℓ − E r > P is of the latter form P = ( E ℓ − E r >
0) with two(computable) expressions E ℓ and E r , you can compute ap-proximations ˜ E ℓ and ˜ E r of E ℓ and E r with | ˜ E ℓ − E ℓ | < − L and | ˜ E r − E r | < − L for L = 1 , , , . . . For a certain L , youmay then try to compare E ℓ and E r taking into accounttheir corresponding approximations and the approximationerror. Eventually (i.e. for a sufficiently large L ), you eithersucceed, in which case you can return the sign, or assert that E ℓ and E r are good approximations of each other. In thelatter case, you just return a flag called Undecided. In short,this is the idea of so-called soft-predicates . For details, werefer to [3]. Algorithm 2
Soft Predicate ˜ P Input :
A predicate P defined by non-negative expressions E ℓ and E r , with E ℓ = 0 or E r = 0; i.e. P succeedsif and only if E ℓ > E r . A rational constant δ > Output:
True, False, or Undecided. In case of True (False), P succeeds (fails). In case of Undecided, we have δ · E ℓ < E r ≤ (1 + δ ) · E ℓ Notice that, in cases where E ℓ considerably differs from E r ,the soft predicate ˜ P allows us to compute the sign of P without the need of exact arithmetic. In all other cases(i.e. if it returns Undecided), we know at least that E ℓ and E r are good approximations of each other. We remarkthat, in [3], the above soft predicate ˜ P was only describedfor δ = , however, it easily generalizes to any constant δ .In [3, Lem. 2], it has been shown that, for any constant δ ,Algorithm 2 needs an L -bit approximation of E ℓ and E r with L bounded by L ≤ · (max(1 , log max( E ℓ , E r ) − ) + 4) . In [3], we considered a soft-variant of the T l -test, where wecompared the expressions E ℓ := | a l | and E r := P i = l | a i | .Now, we apply the above soft-predicate to the expressions E ℓ := a l and E r := P i ≤ k i = l | a i | , that is, we replace the en-tire sum P i = l | a i | by its truncation after the first k terms.However, we will make the assumption that the truncatedsum is upper bounded by | a | ; see Algorithm 3. This mightlook haphazardly at first sight, however, we will later seethat the latter condition is always fulfilled for a k -nomial F and a suitable disk ∆ r ( m ) centered at an admissible point. Algorithm 3 ˜ T l -test Input :
An ( n, k, τ )-nomial f ( x ), a disk ∆ := ∆ r ( m )in the complex space and an integer l with0 ≤ l ≤ k . It is required that P i>k | a i | ≤ | a | , where f ∆ ( x ) = P ni =0 a i · x i . Output :
True or False. If the algorithm returns Truethen the disk ∆ r ( m ) contains exactly l roots.Define E ℓ := | a l | and E r := · P i ≤ k i = l | a i | .Define predicate P = ( E ℓ − E r > return output of Algorithm 2 on predicate P with δ = . Lemma 6.
For a disk ∆ := ∆ r ( m ) ⊂ C , the ˜ T l -test needsto compute L -bit approximations of E ℓ and E r with L ≤ L ( m, r, f ) := 2 · (5 + log n − log max i | a i | ) . If T l (∆ , , f ) succeeds, then the ˜ T l -test returns True. Running Algorithm3 for all l = 0 , . . . , k uses a number of bit operations upperbounded by ˜ O ( k · ( k +log n )( L ( m, r, f )+ τ + n log max(1 , m )+ k · (log n + log max(1 , r )))) . Proof.
From the assumption, it follows that max i =0 ,...,n | a i | =max i =0 ,...,k | a i | ≤ · max( | E ℓ | , | E r | ). This yields the claimedbound on the absolute error to which E ℓ and E r need to becomputed. We now prove correctness. If the algorithm re-turns True, then E ℓ > E r , and thus | a l | > · P i ≤ k i = l | a i | . If l = 0, then P i =0 | a i | < · | a | + · | a | < | a | . Other-wise, we have | a l | > · P i ≤ k i = l | a i | ≥ P i ≤ k i = l | a i | + · | a | ≥ P i ≤ ni = l | a i | . Hence, in both cases, T l (∆ , , f ) succeeds, whichimplies that ∆ contains exactly l roots.Now, suppose that T l (∆ , , f ) succeeds. If the ˜ T l -test re-turns Undecided, then · E ℓ < E r ≤ · E ℓ . On theother hand, we have | a l | > P ≤ ni = l | a i | ≥ P ≤ k i = l | a i | , andthus E ℓ > E r , which contradicts the fact that · E ℓ < E r .If the ˜ T l -test returns False, a similar argument yields a con-tradiction as well. This shows that success of T l implies that˜ T l returns True. It remains to show the claimed boundson the bit complexity. It suffices to estimate the cost forcomputing an L ( m, r, f )-bit approximations of E ℓ and E r .The i -th coefficient a i , with i ≤ k , can be computed byevaluating the ( n, k, τ + k · (log n + log max(1 , r )))-nomial g i = f ( i ) ( x ) r i /i ! at x = m . In order to compute L ( m, r, f )-bit approximations of E ℓ and E r , we need to compute an( L ( m, r, f ) + 2 log k )-bit approximation of each g i ( m ), for i = 0 , . . . , k . According to Lemma 1, this can be done us-ing ˜ O ( k · ( k + log n )( L ( m, r, f ) + n log max(1 , m ) + τ + k · (log n + log max(1 , r ))) bit operations.Notice that, in order to actually use the ˜ T l -test for countingthe roots in a disk ∆, we need two conditions to be satisfied.First, we need the condition P i>k | a i | ≤ | a | to be true.Second, we need to satisfy the preconditions of the T l -test. Theorem 15.
Let f be a ( n, k, τ ) -nomial as in (1.1), let ∆ := ∆ r ( m ) be a disk centered at some m ∈ R > with mr >n , and let f ∆ ( x ) = P ni =0 a i · x i . Further suppose that ∆ rk k +2 ( m ) does not contain any roots of f . Then, it holdsthat P i>k | a i | ≤ | a | .Proof. Let z , z , . . . , z n be the complex roots of F ( x ), then a i a = F ( i ) ( m ) F ( m ) · i ! · r i = r i i ! · P ( j ,j ,...,j i ) 1 Q iℓ =1 ( m − z jℓ ) , where weum over all tuples ( j , j , . . . , j i ) with distinct entries j s ,1 ≤ j s ≤ n . For a fixed tuple ( j , j , . . . , j i ), at most k of the i roots z j , z j , . . . , z j i can appear in the corresponding termof the above sum. At most k of these roots are contained inthe code C n as defined in Figure 2.1, whereas the remaining i − k roots are located outside of C n . Since mr > n , thedistance from m to any of these roots is at least n r . Also,since ∆ rk k ( m ) does not contain any roots of F ( x ), distanceof m from the roots in C n is at least rk k . Thus, we get P ( j ,j ,...,j i ) 1 Q iℓ =1 | m − z jk | ≤ (cid:0) ni (cid:1) · k k r k · ( n r ) i − k . Hence, for i >k , we get | a i || a | ≤ r i i ! · ni ! · k k +2 k r k · ( n r ) i − k = 1 i ! · ni ! · k k +2 k n i − k ) ≤ i ! · i ! · k k +2 k n i − k ≤ i ! · i ! · k k +2 k n i (By using the fact that (cid:0) ni (cid:1) ≤ n i i ! and 15 k < k < i ) ≤ · n · i ! · k k +2 k k k ≤ · n · i ! · (cid:18) k (cid:19) k − k < n Hence, summing up over all i > k proves the claim.The following Corollary is now an immediate consequenceof the above theorem and Lemma 15. Corollary 16.
Let f ( x ) ∈ R [ x ] be as in ( n, k, τ ) -nomialas in (1.1). Let m, r ∈ R + . Let m ∗ be a ( M D f , m [ k ; rk ]) -admissible point and r ∗ = 2 r . Define ∆ = ∆ r ∗ ( m ∗ ) ⊇ ∆ r ( m ) and f ∆ ( x ) = P ni =0 a i · x i . Further assume that mr ≥ n ) , then P i>k | a i | ≤ | a | . In the next step, we show how to satisfy the preconditionof the T l -test. Theorem 14 says that if ∆ n r ( m ) doesnot contain any of the roots which are not contained in∆ r ( m ), then T l (∆ nr , f ) succeeds for some l . Let us define M = 256 n r , and let ∆ i := ∆ M i r ( m ) for i = 0 , , . . . , k + 1.Further assume that r has been chosen sufficiently smallenough such that each of disks is contained in the cone C n .Since C n contains at most k roots, there must exist a j with0 ≤ j ≤ k such that ∆ j +1 − ∆ j does not contain any root.Hence the T l -test will succeed on ∆ nM j r ( m ). So insteadof running the T l -test on some initial disk ∆ r ( m ), we run iton all disks ∆ nM i r ( m ) for i = 0 , , . . . , k , and return thefirst disk on which the T l -test succeeds; see Algorithm 4.Correctness of the algorithm follows immediately from theabove considerations. The condition on m and r guaranteesthat each of the disks ∆ i is contained in C n . Lemma 7 givesa bound on its running time. Lemma 7.
Algorithm 4 returns a disk ∆ r ′ ( m ′ ) , with r ′ ≤ Rr and m − r ≤ m ′ ≤ m + r , together with the number ofroots of f ( x ) in ∆ r ′ ( m ′ ) . Its bit complexity is bounded by ˜ O ( k · ( k + log n ) · ( k log n + n log max(1 , | m | ) + τ + log r )) .Proof. The condition m ≥ r + 2 Rnr with R = 2 k +4 n k +16 implies that all the disks considered in the Algorithm 4 arecontained in the cone C n . In addition, the condition ofCorollary 16 is fulfilled.One iteration of the inner for loop uses a number of bitoperations bounded by ˜ O ( k · ( k + log n ) · ( L ( m ′ , R ′ , f ) + τ + n log max(1 , m ′ ) + k (log n + log max(1 , R ′ )); see Lemma 6.Here, R ′ ≤ R and m − r ≤ m ′ ≤ m + r . In addition, L ( m ′ , R ′ ) := L ( m ′ , R ′ , f ) := 2 · (5 + log n − log k f ∆ k ∞ ) . Algorithm 4
Wrapper ˜ T l -test Input :
A ( n, k, τ )-nomial f ( x ), a disk ∆ := ∆ r ( m )in the complex space. We assume m ≥ r +2 Rnr with R = 2 k +4 n k +16 . Output :
A disk ∆ r ′ ( m ′ ) such that ∆ r ( m ) ⊆ ∆ r ′ ( m ′ )along with number of roots of f ( x ) containedin ∆ r ′ ( m ′ )1. Compute an ( M D f , m [ k ; rk ])-admissible point m ∗ .2. Let m ′ = m ∗ and r ′ = 2 r .3. Let M = 256 n r ′ . for each ≤ i ≤ k dofor each ≤ l ≤ k do Perform the ˜ T l -test, that is Algorithm 3, on∆ nM i r ′ ( m ′ ). if ˜ T l -test succeeded in the previousstep thenreturn ∆ nM i r ′ ( m ′ ) and l . Algorithm 5
Computing a ( L, [0 , n ])-covering Input :
An ( n, k, τ )-nomial f ( x ) and a positive integer L . Output:
An ( L, [0 , /n ])-covering for f .1. Let R := 2 k +4 n k +16 and L ′ = L + ⌈ log R ⌉ + 4 τ + 5.Compute a weak ( L ′ , [0 , n ])-covering L for f thatis ( L ′ , R )-separated.2. L ′ = ∅ for each interval I = ( a, b ) ∈ L do
1. ∆ = ∆ b − a ( a + b )=one circle region of I .2. (∆ r ′ ( m ′ ) , µ )= output of Algo. 4 on f and ∆.3. L ′ = L ′ ∪ { (∆ r ′ ( m ′ ) , µ ) } return L ′ .If f ∆ ( x ) = P ni =0 a i · x i , then obviously k f ∆ k ∞ ≥ | a | = | f ( m ′ ) | . Since m ′ is an ( M D f , m [ k ; rk ])-admissible point,Lemma 4 implies that | M D f ( m ′ ) | ≥ − O ( k ( τ + n log max(1 ,m ′ )+ k log n +log max(1 , k r ))) . Thus,we conclude that − log k f ∆ k ∞ ≤ k ( τ + n log max(1 , m ′ ) + k log n + log r ), and L ( m ′ , R ′ ) ≤ O ( k ( τ + n log max(1 , m ′ ) + k log n + log r )). It follows that Algorithm 4 runs in time˜ O ( k · ( k + log n )( k ( τ + n log max(1 , m ′ ) + k log n + log r ) + τ + k (log max(1 , R ) + log n ) + n log max(1 , m ′ ))) = ˜ O ( k · ( k + log n ) · ( k log n + n log max(1 , m ′ ) + τ + log r )).
7. COMPUTING A COVERING
We now show to compute an ( L, [0 , /n ])-covering from aweak ( L ′ , [0 , n ])-covering, For this, we apply Algorithm4 to the one-circle regions of the intervals in the weak cov-ering. The following Lemma shows that the requirementsin Algorithm 4 are fulfilled if we choose L ′ large enough. Inaddition, by ensuring that the intervals in the weak coveringare well separated from each other, we can ensure that thecorresponding disks returned by Algorithm 4 are disjoint. Lemma 8.
Algorithm 5 computes an ( L, [0 , n ]) -covering ′ for f using ˜ O ( k · ( k + log n )( k log n + τ + L )) bit oper-ations. The distance between any two disks of L ′ is at least · − L , and ∆ ∩ R ⊂ (2 − τ , for any disk ∆ in L ′ .Proof. The output L ′ surely covers all the real roots of f inthe interval [0 , n ]. Since the weak covering L computedin Algorithm 5 is ( L ′ , R )-separated and since Algorithm 4only blows up any disk by a factor of R , we conclude thatdisks in L ′ are still separated by at least 4 R − L ′ ≥ · − L .In addition, the radius of each disks in L ′ is at most R − L ′ ≥ − L .Notice that the left endpoint of any interval in L is at least2 − τ − . Thus, for any disk ∆ from L ′ the left endpoint ofthe interval ∆ ∩ R is at least 2 − τ − − R − L ′ ≥ − τ − . Asimilar argument yields the claimed bound on the right endpoints of ∆ ∩ R .The running time bounds follow from the stated upper boundon L ′ and R and the fact that m ′ ≤ O ( n +2 − L )) is alwayssatisfied.It remains to show how to compute an ( L, [0 , ∞ ))-coveringfor f from an ( L, [0 , n ))-covering L for f and an ( L, [0 , n ))-covering L for x n f ( x ). We first derive an ( L, [ nn +1 , ∞ ))-covering for f from L by inverting the disks ∆ in L . Theproof of the following lemma is straight forward. Lemma 9.
Let L be an ( L, [0 , n ]) -covering of x n f ( x ) ascomputed by Algorithm 5, and L ′ := { (∆ − , µ ) : (∆ , µ ) ∈ L} be the list obtained from L by inverting the disks in L (i.e. ∆ r ( m ) − = ∆ r ′ ( m ′ ) with r ′ = rm − r and m ′ = mm − r ).Then, L ′ is an ( L ′ , [ nn +1 , ∞ )) -covering of f with L ′ ≥ L − τ and the distance between two disks in L ′ is at least · − L . Finally, we merge an ( L, [0 , /n ))-covering L and an( L, [ nn +1 , ∞ ))-covering L for f . Here, we assume that L > n , and that the coverings are computed using Algo-rithm 5 and by inverting the ( L, (0 , /n ))-covering for x n · f (1 /x ) to obtain L . This guarantees that the distancebetween any two disks in either L or L is at least 8 · − L .For the merging, we keep each disk from L that has no inter-section with a disk from L , and vice versa. For each pair ofelements (∆ , µ ) ∈ L and (∆ , µ ) ∈ L with ∆ ∩ ∆ = ∅ ,we keep (∆ , µ ) (and omit (∆ , µ )) if the center of ∆ isnot larger than 1. Otherwise, we keep (∆ , µ ) (and omit(∆ , µ )). Following this approach, we might loose some ofthe complex roots that are contained in the union of ∆ and∆ , however, we will not loose any real root. Thus, the soobtained list constitutes an ( L, (0 , ∞ ))-covering for f .Notice that any two ( L, (0 , ∞ ))- and ( L, ( −∞ , f can be trivially merged by taking their union. In addi-tion, since the final covering contains a list of disjoint diskscontained in the union of the cone C n and its reflection onthe imaginary axis, and since the union of these two conescontains at most 2 k − f , the number of disks isalso bounded by 2 k −
1. Hence, our main Theorem 3 follows.
8. REFERENCES [1] Maria Emilia Alonso Gar¸cia and Andr´e Galligo. Aroot isolation algorithm for sparse univariatepolynomials. In
ISSAC , pages 35–42, 2012.[2] Osbert Bastani, Christopher J. Hillar, Dimitar Popov,and J. Maurice Rojas. Randomization, Sums ofSquares, Near-Circuits, and Faster Real RootCounting.
Contemp. Mathematics , 556:145–166, 2011. [3] Ruben Becker, Michael Sagraloff, Vikram Sharma, andChee-Keng Yap. A near-optimal subdivision algorithmfor complex root isolation based on the pellet test andnewton iteration.
J. Symb. Comput. , 2015. In press.[4] George E. Collins and R¨udiger Loos. Polynomial realroot isolation by differentiation. In
SYMSAC , pages15–25, 1976.[5] Michel Coste, Tom´as Lajous-Loaeza, Henri Lombardi,and Marie-Francoise Roy. Generalized Budan-Fouriertheorem and virtual roots.
J. Complexity , 21(4):479 –486, 2005.[6] F. Cucker, P. Koiran, and S. Smale. A polynomialtime algorithm for diophantine equations in onevariable.
J. Symb. Comput. , 27(1):21 – 29, 1999.[7] Michael Kerber and Michael Sagraloff. Rootrefinement for real polynomials using quadraticinterval refinement.
Journal of Computational andApplied Mathematics , 280:377 – 395, 2015.[8] Hendrik W. Lenstra (Jr.). Finding small degree factorsof lacunary polynomials.
Number Theory in Progress ,1:267–276, 1999.[9] J.M. McNamee and Victor Y. Pan.
Numerical Methodsfor Roots of Polynomials . Number 2 in Studies inComputational Mathematics. Elsevier Science, 2013.[10] K. Mehlhorn, M Sagraloff, and P. Wang. FromApproximate Factorization to Root Isolation withApplication to Cylindrical Algebraic Decomposition.
J. Symb. Comput. , 66(1):34 – 69, 2015.[11] V. Pan. Univariate Polynomials: Nearly OptimalAlgorithms for Numerical Factorization and RootFinding.
J. Symb. Comput. , 33(5):701–733, 2002.[12] Victor Y. Pan, Brian Murphy, Rhys Eric Rosholt,Guoliang Qian, and Yuqing Tang. Real root-finding.In
SNC , pages 161–169, 2007.[13] Victor Y. Pan and Elias P. Tsigaridas. On the booleancomplexity of real root refinement. In
ISSAC , pages299–306, 2013.[14] J. Maurice Rojas and Yinyu Ye. On solving univariatesparse polynomials in logarithmic time.
J. Complexity ,21(1):87–110, 2005.[15] Michael Sagraloff. A near-optimal algorithm forcomputing real roots of sparse polynomials. In
ISSAC ,pages 359–366, 2014.[16] Michael Sagraloff and Kurt Mehlhorn. Computing realroots of real polynomials.
Journal of SymbolicComputation , 73:46 – 86, 2016.[17] C.K. Yap.
Fundamental Problems of AlgorithmicAlgebra . Oxford University Press, 2000.[18] Yinyu Ye. Combining Binary Search and Newton’sMethod to Compute Real Roots for a Class of RealFunctions.