NANov 8, 2016
A Near-Optimal Subdivision Algorithm for Complex Root Isolation based on the Pellet Test and Newton IterationRuben Becker, Michael Sagraloff, Vikram Sharma et al.
We describe a subdivision algorithm for isolating the complex roots of a polynomial $F\in\mathbb{C}[x]$. Given an oracle that provides approximations of each of the coefficients of $F$ to any absolute error bound and given an arbitrary square $\mathcal{B}$ in the complex plane containing only simple roots of $F$, our algorithm returns disjoint isolating disks for the roots of $F$ in $\mathcal{B}$. Our complexity analysis bounds the absolute error to which the coefficients of $F$ have to be provided, the total number of iterations, and the overall bit complexity. It further shows that the complexity of our algorithm is controlled by the geometry of the roots in a near neighborhood of the input square $\mathcal{B}$, namely, the number of roots, their absolute values and pairwise distances. The number of subdivision steps is near-optimal. For the \emph{benchmark problem}, namely, to isolate all the roots of a polynomial of degree $n$ with integer coefficients of bit size less than $τ$, our algorithm needs $\tilde O(n^3+n^2τ)$ bit operations, which is comparable to the record bound of Pan (2002). It is the first time that such a bound has been achieved using subdivision methods, and independent of divide-and-conquer techniques such as Schönhage's splitting circle technique. Our algorithm uses the quadtree construction of Weyl (1924) with two key ingredients: using Pellet's Theorem (1881) combined with Graeffe iteration, we derive a "soft-test" to count the number of roots in a disk. Using Schröder's modified Newton operator combined with bisection, in a form inspired by the quadratic interval method from Abbot (2006), we achieve quadratic convergence towards root clusters. Relative to the divide-conquer algorithms, our algorithm is quite simple with the potential of being practical. This paper is self-contained: we provide pseudo-code for all subroutines used by our algorithm.
SCSep 28, 2011
When Newton meets Descartes: A Simple and Fast Algorithm to Isolate the Real Roots of a PolynomialMichael Sagraloff
We introduce a new algorithm denoted DSC2 to isolate the real roots of a univariate square-free polynomial f with integer coefficients. The algorithm iteratively subdivides an initial interval which is known to contain all real roots of f. The main novelty of our approach is that we combine Descartes' Rule of Signs and Newton iteration. More precisely, instead of using a fixed subdivision strategy such as bisection in each iteration, a Newton step based on the number of sign variations for an actual interval is considered, and, only if the Newton step fails, we fall back to bisection. Following this approach, our analysis shows that, for most iterations, we can achieve quadratic convergence towards the real roots. In terms of complexity, our method induces a recursion tree of almost optimal size O(nlog(n tau)), where n denotes the degree of the polynomial and tau the bitsize of its coefficients. The latter bound constitutes an improvement by a factor of tau upon all existing subdivision methods for the task of isolating the real roots. In addition, we provide a bit complexity analysis showing that DSC2 needs only \tilde{O}(n^3tau) bit operations to isolate all real roots of f. This matches the best bound known for this fundamental problem. However, in comparison to the much more involved algorithms by Pan and Schönhage (for the task of isolating all complex roots) which achieve the same bit complexity, DSC2 focuses on real root isolation, is very easy to access and easy to implement.
NAMay 27, 2016
Fast Approximate Polynomial Multipoint Evaluation and ApplicationsAlexander Kobel, Michael Sagraloff
It is well known that, using fast algorithms for polynomial multiplication and division, evaluation of a polynomial $F \in \mathbb{C}[x]$ of degree $n$ at $n$ complex-valued points can be done with $\tilde{O}(n)$ exact field operations in $\mathbb{C},$ where $\tilde{O}(\cdot)$ means that we omit polylogarithmic factors. We complement this result by an analysis of approximate multipoint evaluation of $F$ to a precision of $L$ bits after the binary point and prove a bit complexity of $\tilde{O}(n(L + τ+ nΓ)),$ where $2^τ$ and $2^Γ,$ with $τ, Γ\in \mathbb{N}_{\ge 1},$ are bounds on the magnitude of the coefficients of $F$ and the evaluation points, respectively. In particular, in the important case where the precision demand dominates the other input parameters, the complexity is soft-linear in $n$ and $L$. Our result on approximate multipoint evaluation has some interesting consequences on the bit complexity of further approximation algorithms which all use polynomial evaluation as a key subroutine. Of these applications, we discuss in detail an algorithm for polynomial interpolation and for computing a Taylor shift of a polynomial. Furthermore, our result can be used to derive improved complexity bounds for algorithms to refine isolating intervals for the real roots of a polynomial. For all of the latter algorithms, we derive near-optimal running times.