certified complex numerical root finding
play

Certified Complex Numerical Root Finding Alexander Kobel Max Planck - PowerPoint PPT Presentation

Intro Subdivision Numerical Comparison Goals Certified Complex Numerical Root Finding Alexander Kobel Max Planck Institute for Informatics Dep. 1: Algorithms and Complexity Seminar on Computational Geometry and Geometric Computing May 6,


  1. Intro Subdivision Numerical Comparison Goals Certified Complex Numerical Root Finding Alexander Kobel Max Planck Institute for Informatics Dep. 1: Algorithms and Complexity Seminar on Computational Geometry and Geometric Computing May 6, 2010 Alexander Kobel Certified Complex Numerical Root Finding

  2. Intro Subdivision Numerical Comparison Goals Errata & Additions Bugs squashed in the version of the talk on May 6, 2010 The explanation of the Obreshkoff’s lens criterion was wrong w.r.t. the radii and centers of the circles. A slide explaining the correct theorem is added. A proof for the inclusion predicate property of the S f -test has been added. The statement that the denominator in the Durand-Kerner iteration actually converges to f ′ ( z ( k ) ) is correct: i � f ( Z ) = a n ( Z − ζ i ) i � � f ′ ( Z ) = a n ⇒ ( Z − ζ j ) j � = i i f ′ ( ζ i ) = a n � ⇒ ( ζ i − ζ j ) since all other factors are 0 . j � = i Thus z ( k ) → ζ i implies f ′ ( z ( k ) ) → f ′ ( ζ i ) (for simple roots). i i Alexander Kobel Certified Complex Numerical Root Finding

  3. Intro Subdivision Numerical Comparison Goals Traditional Subdivision Solvers 1 Generic Subdivision Algorithm Sturmian Sequence Solver Descartes Solver EVAL CEVAL Numerical Solvers 2 Eigenvalue Computation Newton-Raphson Method Durand-Kerner Method Aberth-Ehrlich Iteration Other Methods Comparison Subdivision-based vs. Numerical Solvers 3 Goals of Further Work 4 Alexander Kobel Certified Complex Numerical Root Finding

  4. Intro Subdivision Numerical Comparison Goals Vocabulary and Notation Throughout the talk: i =0 a i Z i ∈ R [ Z ] Input: Polynomial f = f ( Z ) = � n Degree: n Roots: { ζ 1 , . . . , ζ n } Coefficients: R = Z : integer coefficients of arbitrary length R = Z [ 1 2 ]: “bigfloats” R = R : “bitstreams” R = float , double , long double ( R = Z [ i ] , R = Z [ 1 2 ][ i ] , R = C ) Bitsize: L Alexander Kobel Certified Complex Numerical Root Finding

  5. Intro Subdivision Numerical Comparison Goals Vocabulary and Notation Predicate (test): “fuzzy” boolean function (returns true, false or uncertain) Construction (calculation): computes a number, point, area, . . . (exact or approximated) Certificate: guarantees (by a predicate) that a calculation yields a valid and correct result (up to given precision) Isolating interval (box, disc): interval ⊂ R (or box, disc ⊂ C ) containing exactly one (possibly multiple) root of f in it’s interior and none on the boundary Alexander Kobel Certified Complex Numerical Root Finding

  6. Intro Subdivision Numerical Comparison Goals Basic Arithmetic Operations Bit complexity of integer and polynomial arithmetic Operation na¨ ıve best known CGAL +, − O ( nL ) O ( L 2 ) × , ÷ (integers) O ˜( L ) O ˜( L ) O ( n 2 L 2 ) ≤ O ˜( n 2 L ) × , ÷ (polynomials) O ˜( nL ) O ( n 2 L 2 ) O ˜( n 2 L ) polynomial evaluation on n O ˜( nL ) points f �→ f ( b 1 ) , . . . , f ( b n ) O ( n 3 L 2 ) O ˜( n 2 L ) O ˜( n 3 L ) Taylor shift f ( Z ) �→ f ( Z + b ) O ( n 2 L 2 ) O ˜( n 2 L ) polynomial gcd O ˜( nL ) Numerical stability is a different issue! Alexander Kobel Certified Complex Numerical Root Finding

  7. Intro Subdivision Numerical Comparison Goals Generic Subdivision Sturm Descartes EVAL CEVAL Generic Subdivision Algorithm 1 Calculate a root bound B of f . 2 Start subdivision algorithm on interval [ − B , B ] (or box [ − B − Bi , B + Bi ] in the complex case). 3 If an exclusion predicate holds on the current region, it cannot contain a root ⇒ throw it away. 4 If an inclusion predicate holds on the current region, it contains a root ⇒ report it. 5 If neither succeeds: check border cases, subdivide and recurse. Choices inclusion and exclusion predicates subdivision method (bisection vs. more involved methods) Alexander Kobel Certified Complex Numerical Root Finding

  8. Intro Subdivision Numerical Comparison Goals Generic Subdivision Sturm Descartes EVAL CEVAL Root Bounds Theorem (Cauchy root bound) �� � � a i � � All (complex) roots of f have an absolute value ≤ 1 + max . � � a n i < n � � Theorem (Fujiwara root bound) All (complex) roots of f have an absolute value 1 1 1 �� � � � � � � � � a n − 1 a n − 2 a 1 a 0 2 n − 1 n � � � � � � � � ≤ 2 max � , , . . . , , . � � � � � � � � a n a n a n 2 a n � � � � � � � Alexander Kobel Certified Complex Numerical Root Finding

  9. Intro Subdivision Numerical Comparison Goals Generic Subdivision Sturm Descartes EVAL CEVAL Sturmian Sequence Solver Definition (Sturm chain / Sturmian sequence) Apply Euclidean division with remainder: f n = f n − 2 − f n − 1 q n − 2 f 0 = f f 1 = f ′ f 2 = − ( f 0 mod f 1 ) = q 0 f 1 − f 0 f 3 = − ( f 1 mod f 2 ) = q 1 f 2 − f 1 . . . f s = − ( f s − 2 mod f s − 1 ) = q s − 2 f s − 1 − f s − 2 until f s is constant. Alexander Kobel Certified Complex Numerical Root Finding

  10. Intro Subdivision Numerical Comparison Goals Generic Subdivision Sturm Descartes EVAL CEVAL Sturmian Sequence Solver Theorem (Sturm’s theorem) Let σ ( x ) denote the number of sign changes in the Sturmian remainder sequence f 0 ( x ) , f 1 ( x ) , . . . , f s ( x ) . Then, an interval ( a , b ] contains exactly σ ( b ) − σ ( a ) real roots of f (counted without multiplicities). ⇒ both inclusion and exclusion predicate. Alexander Kobel Certified Complex Numerical Root Finding

  11. ✦ ✦ ✦ ✪ ✪ ✪ ✦ ✦ ✦ ✪ ✦ ✦ ✪ ✪ ✦ ✦ ✦ ✪ ✦ ✦ ✦ Intro Subdivision Numerical Comparison Goals Generic Subdivision Sturm Descartes EVAL CEVAL Comparison of Subdivision Solvers Sturm n 4 L 2 theoretical complexity O ˜( · ) predicate / tree size ++ local / adaptive ✪ numerical stability −− multiple roots ✦ bitstream coefficients ✪ ✪ sparse polynomials complex roots ✪ analytical functions ✪ easy to implement (well) ( ✪ ) Alexander Kobel Certified Complex Numerical Root Finding

  12. Intro Subdivision Numerical Comparison Goals Generic Subdivision Sturm Descartes EVAL CEVAL Descartes Solver Theorem (Descartes’ Rule of Signs) Let p denote the # of distinct positive real roots of f , and v be the # of sign changes in it’s ( � = 0 ) coefficient sequence. Then, p ≤ v and p ≡ v (mod 2) . In particular, v = 1 ⇒ p = 1 and v = 0 ⇒ p = 0 . How to apply to arbitrary intervals? Alexander Kobel Certified Complex Numerical Root Finding

  13. Intro Subdivision Numerical Comparison Goals Generic Subdivision Sturm Descartes EVAL CEVAL Descartes Solver M¨ obius transformations ( a , b ) �→ (0 , b − a ) �→ (0 , 1) �→ (1 , ∞ ) �→ (0 , ∞ ) Z �→ Z / b − a Z �→ 1 / Z Z �→ Z − 1 Z �→ Z − a � b − a � � aZ + b � f ( Z ) � f ( Z + a ) � f (( b − a ) Z + a ) � f + a � f Z Z +1 Theorem � � ( Z + 1) n ∈ R [ Z ] . aZ + b Let g ( Z ) := f Z +1 Then, roots of f in ( a , b ) correspond to roots of g in (0 , ∞ ) . Alexander Kobel Certified Complex Numerical Root Finding

  14. Intro Subdivision Numerical Comparison Goals Generic Subdivision Sturm Descartes EVAL CEVAL Descartes Solver (in Bernstein Basis) Alexander Kobel Certified Complex Numerical Root Finding

  15. Intro Subdivision Numerical Comparison Goals Generic Subdivision Sturm Descartes EVAL CEVAL Descartes Solver (in Bernstein Basis) Alexander Kobel Certified Complex Numerical Root Finding

  16. Intro Subdivision Numerical Comparison Goals Generic Subdivision Sturm Descartes EVAL CEVAL Descartes Solver (in Bernstein Basis) Alexander Kobel Certified Complex Numerical Root Finding

  17. Intro Subdivision Numerical Comparison Goals Generic Subdivision Sturm Descartes EVAL CEVAL Descartes Solver (in Bernstein Basis) Alexander Kobel Certified Complex Numerical Root Finding

  18. Intro Subdivision Numerical Comparison Goals Generic Subdivision Sturm Descartes EVAL CEVAL Descartes Solver (in Bernstein Basis) Alexander Kobel Certified Complex Numerical Root Finding

  19. Intro Subdivision Numerical Comparison Goals Generic Subdivision Sturm Descartes EVAL CEVAL Descartes Solver (in Bernstein Basis) Alexander Kobel Certified Complex Numerical Root Finding

Recommend


More recommend