Complexity Analysis of Algorithms in Algebraic Computation
Total Page:16
File Type:pdf, Size:1020Kb
Complexity Analysis of Algorithms in Algebraic Computation by Vikram Sharma A dissertation submitted in partial fulfilment of the requirements for the degree of Doctor of Philosophy Department of Computer Science Courant Institute of Mathematical Sciences New York University January 2007 Approved: Research Advisor: Prof. Chee K. Yap c Vikram Sharma All Rights Reserved, 2007 To my parents. iii Acknowledgments My foremost gratitude is to my thesis advisor, Professor Chee Yap, for his guidance and motiva- tion; without them I would not have reached the milestones where I stand now. He was always there when I needed his support and his sage advice has been helpful in the past four years and I am sure will be even more so in the future. I am also in debt to Professor Richard Pollack for his wise words and who through his own example has given me a deeper understanding of the aesthetics of research. Apart from them, I am obliged to Professor Michael Overton, Professor Margaret Wright, and Professor Victor Shoup who generously consented to be members of my thesis defence committee and provided me with invaluable feedback on my dissertation. I am also grateful to my collaborators Zilin Du and Arno Eigenwillig for the insightful discussions that I exchanged with them and for the knowledge that I acquired in the process. I would also like to express my gratitude towards the staff at the Department of Computer Science, NYU, and especially to Rosemary Amico and Anina Karmen for their efficient handling of the bureaucratic hurdles that I faced in my stay at the department. Many people have contributed in other ways to my five years of doctoral study. My friends, who have always challenged, in a jocular manner I suppose, my ability to successfully complete these years and forced me to dig deep within myself to change their convictions, and who have gifted me memorable moments during these years. My final debt, which I cannot clear in a lifetime, is to my parents and brother for having faith in me even when I had lost all hope and courage. iv Abstract Numerical computations with real algebraic numbers require algorithms for approximating and isolating real roots of polynomials. A classical choice for root approximation is Newton’s method. For an analytic function on a Banach space, Smale introduced the concept of approximate zeros, i.e., points from which Newton’s method for the function converges quadratically. To identify these approximate zeros he gave computationally verifiable convergence criteria called point esti- mates. However, in developing these results Smale assumed that Newton’s method is computed exactly. For a system of n homogeneous polynomials in n + 1 variables, Malajovich developed point estimates for a different definition of approximate zero, assuming that all operations in Newton’s method are computed with fixed precision. In the first half of this dissertation, we develop point estimates for these two different definitions of approximate zeros of an analytic function on a Banach space, but assume the strong bigfloat computational model of Brent, i.e., where all operations involve bigfloats with varying precision. In this model, we derive a uniform complexity bound for approximating a root of a zero-dimensional system of n integer polynomials in n variables. We also derive a non-asymptotic bound, in terms of the condition number of the system, on the precision required to implement the robust Newton method. The second part of the dissertation analyses the worst-case complexity of two algorithms for isolating real roots of a square-free polynomial with real coefficients: The Descartes method and Akritas’ continued fractions algorithm. The analysis of both algorithms is based upon amortization bounds such as the Davenport-Mahler bound. For the Descartes method, we give a unified framework that encompasses both the power basis and the Bernstein basis variant of the method; we derive an O(n(L + log n)) bound on the size of the recursion tree obtained by applying the method to a square-free polynomial of degree n with integer coefficients of bit- length L, the bound is tight for L = Ω(log n); based upon this result we readily obtain the best known bit-complexity bound of O(n4L2) for the Descartes method, where O means we ignore logarithmic factors. Similar worst case bounds on the bit-complexity of Akritas’ algorithm were e e not known in the literature. We provide the first such bound, O(n8L3), for a square-free integer polynomial of degree n with coefficients of bit-length L. e v Table of Contents Dedication iii Acknowledgments iv Abstract v List of Figures ix List of Tables x List of Appendices xi Introduction 1 1 Robust Approximate Zeros 9 1.1 ApproximateZeros ................................ .. 12 1.1.1 Relation amongst various approximate zeros . ......... 13 1.2 PointEstimateofSecondKind . ..... 15 1.2.1 TheExactModel................................ 16 1.2.2 TheWeakModel................................ 24 1.2.3 TheStrongModel ............................... 28 1.3 PointEstimateofFourthKind . ..... 30 1.3.1 TheExactModel................................ 31 1.3.2 TheWeakModel................................ 34 1.3.3 TheStrongModel ............................... 38 1.4 OneStepofRobustNewton. ... 40 1.5 RobustNewtonIteration. ..... 43 1.5.1 Distance between an approximate zero and its associatedzero....... 44 1.6 UniformComplexityofRobustNewton . ...... 46 1.6.1 Boundonthenumberofiterativesteps. ...... 47 1 1.6.2 An upper bound on J (Zi)− ....................... 48 k F k 1.6.3 An upper bound on J (Zi) . ........................ 48 k F e k 1.6.4 Worst case lower bound on the distance to a zero . ....... 49 e vi TABLE OF CONTENTS 1.6.5 Worst-casecomplexity . ... 49 1.7 Experiments..................................... .. 51 1.8 FutureWork ...................................... 53 2 Real Root Isolation: The Descartes Method 57 2.0.1 Previouswork.................................. 58 2.1 TheDescartesMethod.............................. ... 59 2.1.1 ABasis-freeFramework . .. 59 2.1.2 Termination................................... 62 2.2 TheSizeoftheRecursionTree . ..... 63 2.2.1 TheDavenport-MahlerBound . .. 63 2.2.2 TheRecursionTree .............................. 64 2.2.3 AlmostTightLowerBound . 70 2.3 TheBitComplexity ................................ .. 71 2.4 ConclusionandFutureWork . .... 73 3 Real Root Isolation: Continued Fractions 75 3.1 TightBoundsonRoots .............................. .. 77 3.2 The Continued Fraction Algorithm by Akritas . .......... 80 3.3 Continued Fractions and M¨obius Transformations . ............. 82 3.4 Termination..................................... .. 83 3.5 The Size of the Recursion Tree: Real Roots Only . ......... 87 3.5.1 Bounding the Inverse Transformations . ....... 88 3.5.2 Bounding the Taylor Shifts . ... 88 3.5.3 WorstCaseSizeoftheTree . .. 96 3.6 The Size of the Recursion Tree: The General Case . ......... 100 3.6.1 Bounding the Inverse Transformations . ....... 101 3.6.2 Bounding the Taylor Shifts . ... 101 3.6.3 WorstCaseSizeoftheTree . 109 3.7 TheBit-Complexity ............................... ... 111 3.8 ConclusionandFutureWork . .... 113 Appendices 114 vii TABLE OF CONTENTS Bibliography 134 viii List of Figures 1 (a) Four points in the plane; (b) Is s outside the triangle ∆pqr?; (c) Incorrect orientation of s relative to the line segment (r, p); (d) The wrong convex hull. 2 2.1 Three discs associated with the interval J = (c, d). ................. 62 2.2 The two-circles figure around J0 can overlap with that of J1 but not with any two-circlesfigurefurtherright. ...... 65 2.3 A type-0 and type-1 leaf sharing the same root. .......... 69 1 3.1 The effect of M − (z)onthethreecircles....................... 85 3.2 The roots of the polynomial AMv (X) in C. ..................... 107 ix List of Tables 1.1 A comparison of weak and robust Newton iteration I . .......... 55 1.2 A comparison of weak and robust Newton iteration II . .......... 56 x List of Appendices Appendix A 114 Multilinear maps and Banach Space Appendix B 117 The Condition Number Appendix C 130 BigFloat Computation xi LIST OF TABLES xii Introduction Numerical non-robustness is a recurring phenomenon in scientific computing. It is primarily caused by numerical errors arising because of fixed precision arithmetic. Most of these errors can be considered harmless, but occasionally there are “catastrophic” errors in the computation that cause non-robust behaviour such as crashing of the program, or infinite loops. Geometric algorithms are especially vulnerable to such non-robust behaviour. To illustrate the vulnerability, we consider the case of computing convex hull of four points in the plane, as shown in Figure 1(a). We proceed by forming the convex hull of any three non-colinear points, say p,q,r, and try to identify whether the fourth point s is inside or outside the convex hull of p,q,r (see Figure 1(b)). For the purpose of this identification we need the orientation predicate orientation(p,q,r) := sign((q p )(r p ) (q p )(r p )) x − x y − y − y − y x − x that takes as input three points p,q,r and returns +1, 1 or 0 based upon the following: − orientation(p,q,r) = +1 iff the polyline (p,q,r) is a left turn. • orientation(p,q,r)= 1 iff the polyline (p,q,r) is a right turn. • − orientation(p,q,r) = 0 iff the three points p,q,r are collinear. • Thus for the point s to lie outside the triangle determined by the points p,q,r there must be one edge of the triangle such that the point s is to the right of it. We next check the orientation of s relative to the edges of the triangle defined by points p,q,r, where the edges are considered in counter-clockwise direction. To check the orientation, however, we use a fixed precision im- plementation float orient(p,q,r) of the orientation predicate, i.e., where each operation is done with fixed relative precision. Let the output of float orient(p,q,s) and float orient(q,r,s) be +1 as expected. Now we compute float orient(r,p,s).