real solving on bivariate systems with sturm sequences
play

Real Solving on Bivariate Systems with Sturm Sequences and SLV Maple - PowerPoint PPT Presentation

Real Solving on Bivariate Systems with Sturm Sequences and SLV Maple TM library Dimitris Diochnos University of Illinois at Chicago Dept. of Mathematics, Statistics, and Computer Science September 27, 2007 D. I. Diochnos (UIC - MSCS) Real


  1. Real Solving on Bivariate Systems with Sturm Sequences and SLV Maple TM library Dimitris Diochnos University of Illinois at Chicago Dept. of Mathematics, Statistics, and Computer Science September 27, 2007 D. I. Diochnos (UIC - MSCS) Real Solving on Bivariate Algebraic Systems Sep ’07 1 / 65

  2. Outline Introduction 1 Results in Univariate Polynomials 2 Results in Bivariate Polynomials 3 Real Solving on Bivariate Systems 4 Implementation 5 D. I. Diochnos (UIC - MSCS) Real Solving on Bivariate Algebraic Systems Sep ’07 2 / 65

  3. Outline Introduction 1 Results in Univariate Polynomials 2 Results in Bivariate Polynomials 3 Real Solving on Bivariate Systems 4 Implementation 5 D. I. Diochnos (UIC - MSCS) Real Solving on Bivariate Algebraic Systems Sep ’07 3 / 65

  4. Notation and Conventions Complexity: � O B implies that we are ignoring (poly-)logarithmic factors. ◮ Length function: L () ◮ Given ν ∈ Z , L ( ν ) implies the bitsize of integer ν. ◮ Given A ∈ Z [ x ] L ( A ) implies the maximum bitsize of the coefficients. D. I. Diochnos (UIC - MSCS) Real Solving on Bivariate Algebraic Systems Sep ’07 4 / 65

  5. Operations on Lists. Sign Variations: Given a list of signs compute sign-swaps. Ignore zeros. Example VAR ([+ , + , − , 0 , − , 0 , 0 , +]) = 2 Intermediate Points: Given a list of (sorted) rational numbers compute rationals in between. Compute two more bounding rationals for the entire sequence. D. I. Diochnos (UIC - MSCS) Real Solving on Bivariate Algebraic Systems Sep ’07 5 / 65

  6. Polynomial GCD Computation Euclid’s Algorithm. ◮ Works fine when F , G ∈ Q [ x ] . What if we want to work in Z [ x ] ? ◮ Pseudo -divisions are required. k · F = Q · G + λ · R where F , G , Q , R ∈ Z [ x ] and k , λ ∈ Z . Pseudo-Euclidean:  ( lead ( G ) δ + 1 , 1 ) ( k , λ ) =  R = rem ( F , G )  Q = quo ( F , G ) D. I. Diochnos (UIC - MSCS) Real Solving on Bivariate Algebraic Systems Sep ’07 6 / 65

  7. Polynomial GCD Computation Euclid’s Algorithm. ◮ Works fine when F , G ∈ Q [ x ] . What if we want to work in Z [ x ] ? ◮ Pseudo -divisions are required. k · F = Q · G + λ · R where F , G , Q , R ∈ Z [ x ] and k , λ ∈ Z . Pseudo-Euclidean:  ( lead ( G ) δ + 1 , 1 ) ( k , λ ) =  R = rem ( F , G )  Q = quo ( F , G ) D. I. Diochnos (UIC - MSCS) Real Solving on Bivariate Algebraic Systems Sep ’07 6 / 65

  8. Polynomial GCD Computation Euclid’s Algorithm. ◮ Works fine when F , G ∈ Q [ x ] . What if we want to work in Z [ x ] ? ◮ Pseudo -divisions are required. k · F = Q · G + λ · R where F , G , Q , R ∈ Z [ x ] and k , λ ∈ Z . Pseudo-Euclidean:  ( lead ( G ) δ + 1 , 1 ) ( k , λ ) =  R = rem ( F , G )  Q = quo ( F , G ) D. I. Diochnos (UIC - MSCS) Real Solving on Bivariate Algebraic Systems Sep ’07 6 / 65

  9. Sturm Sequences and Signed PRSs. Corollary Every sequence ( A i ) = ( A , A ′ , . . . ) where λ i A i = k i A i − 2 + A i − 1 Q i − 1 where k i , λ i ∈ R , k i λ i < 0 and A 1 = A square-free is a Sturm sequence in [ I l , I R ] where A ( I L ) A ( I R ) � = 0 . D. I. Diochnos (UIC - MSCS) Real Solving on Bivariate Algebraic Systems Sep ’07 7 / 65

  10. Definitions on Signed PRSs. λ i A i = k i A i − 2 + A i − 1 Q i − 1 √ 2 ) i ) ⇒ Impractical. Pseudo-Euclidean: L ( A i ) = O (( 1 + Primitive-Part: 8 ( lead ( A i − 1 ) δ i + 1 , content ( prem ( A i , A i − 1 ))) < ( k i , λ i ) = A i = rem ( λ i A i − 2 , A i − 1 ) / k i : Q i = quo ( λ i A i − 2 , A i − 1 ) Time Bound: e O B ( p 2 q 2 τ ) . Output Bound: L ( A i ) = O ( p τ ) . SubResultant: ˘ A i = prem ( A i − 2 , A i − 1 ) / lead ( A i − 2 ) Time Bound: e O B ( p 2 q τ ) . Output Bound: L ( A i ) = O ( p τ ) . Sturm-Habicht: Similar to SubResultant sequences. D. I. Diochnos (UIC - MSCS) Real Solving on Bivariate Algebraic Systems Sep ’07 8 / 65

  11. Example on PRSs. Given: f = x 8 + x 6 − 3 x 4 − 3 x 3 + 8 x 2 + 2 x − 5 g = 3 x 6 + 5 x 4 − 4 x 2 − 9 x + 21 Euclidean: 15 x 4 − 3 x 2 + 9 15795 x 2 + 30375 x − 59535 1254542875143750 x − 1654608338437500 − 12593338795500743100931141992187500 Primitive Part: 5 x 4 − x 2 + 3 13 x 2 + 25 x − 49 4663 x − 6150 − 1 SubResultant: 15 x 4 − 3 x 2 + 9 65 x 2 + 125 x − 245 9326 x − 12300 − 260708 D. I. Diochnos (UIC - MSCS) Real Solving on Bivariate Algebraic Systems Sep ’07 9 / 65

  12. Outline Introduction 1 Results in Univariate Polynomials 2 Bounds Real Algebraic Numbers Solving in One Variable Results in Bivariate Polynomials 3 Real Solving on Bivariate Systems 4 Implementation 5 D. I. Diochnos (UIC - MSCS) Real Solving on Bivariate Algebraic Systems Sep ’07 10 / 65

  13. Bounding Roots Let ̺ ∈ C be a root of the polynomial A ( x ) = a d x d + · · · + a 1 x + a 0 . Cauchy, Mignotte: 1 + max {| a 0 | , | a 1 | , . . . , | a d − 1 |} | ̺ | ≤ | a d | � � � � � d | a d − 1 | d | a d − 2 | d | a d − 3 | d | a 0 | 3 d | ̺ | ≤ max , , , . . . , | a d | | a d | | a d | | a d | Zassenhaus: �� � � � � � a k � � d − k | ̺ | ≤ 2 · max � � a d k Complexity: � O B ( d τ ) . D. I. Diochnos (UIC - MSCS) Real Solving on Bivariate Algebraic Systems Sep ’07 11 / 65

  14. Real Algebraic Numbers Definition: Let A ∈ Z [ x ] . Each ̺ ∈ R such that A ( ̺ ) = 0 is a Real Algebraic Number and we will write ̺ ∈ R alg . Representation: Isolating Intervals. ̺ ∼ = [ square-free ( A ) , [ I L , I R ] ] such that I L , I R ∈ Q , I L ≤ ̺ ≤ I R and ̺ unique root in interval [ I L , I R ] . Basic Operations: Sign-At. Comparison. D. I. Diochnos (UIC - MSCS) Real Solving on Bivariate Algebraic Systems Sep ’07 12 / 65

  15. Real Algebraic Numbers Definition: Let A ∈ Z [ x ] . Each ̺ ∈ R such that A ( ̺ ) = 0 is a Real Algebraic Number and we will write ̺ ∈ R alg . Representation: Isolating Intervals. ̺ ∼ = [ square-free ( A ) , [ I L , I R ] ] such that I L , I R ∈ Q , I L ≤ ̺ ≤ I R and ̺ unique root in interval [ I L , I R ] . Basic Operations: Sign-At. Comparison. D. I. Diochnos (UIC - MSCS) Real Solving on Bivariate Algebraic Systems Sep ’07 12 / 65

  16. Real Algebraic Numbers Definition: Let A ∈ Z [ x ] . Each ̺ ∈ R such that A ( ̺ ) = 0 is a Real Algebraic Number and we will write ̺ ∈ R alg . Representation: Isolating Intervals. ̺ ∼ = [ square-free ( A ) , [ I L , I R ] ] such that I L , I R ∈ Q , I L ≤ ̺ ≤ I R and ̺ unique root in interval [ I L , I R ] . Basic Operations: Sign-At. Comparison. D. I. Diochnos (UIC - MSCS) Real Solving on Bivariate Algebraic Systems Sep ’07 12 / 65

  17. Polynomial Evaluation at a R alg point. Input: α = [ A , [ L , R ]] and f ∈ R [ x ] ; A , f square-free Output: sign ( f ( α )) Compute SubResultant sequence. 1 Evaluate on endpoints. 2 Yield result with Sign-Variations. 3 Complexity: � O B ( pq τ + p min { p , q } 2 τ ) . D. I. Diochnos (UIC - MSCS) Real Solving on Bivariate Algebraic Systems Sep ’07 13 / 65

  18. Comparison between R alg numbers. Input: α = [ A , [ L , R ]] and β = [ B , [ L , R ]] Output: Decide α ≤ β. Idea: Compute S IGN -A T ( A ( β )) . Note: We know the sign of A ′ ( α ) . Complexity: � O B ( pq τ + p min { p , q } 2 τ ) . D. I. Diochnos (UIC - MSCS) Real Solving on Bivariate Algebraic Systems Sep ’07 14 / 65

  19. Solving in One Variable Input: A ∈ Z [ x ] , square-free. Output: A list S of intervals that contain the real roots of A . Subdivision Method. Complexity: [Emiris,Mourrain,Tsigaridas - 2006] O B ( p 6 + p 4 τ 2 ) (+ multiplicities) Time: � Output: O ( p τ ) D. I. Diochnos (UIC - MSCS) Real Solving on Bivariate Algebraic Systems Sep ’07 15 / 65

  20. Outline Introduction 1 Results in Univariate Polynomials 2 Results in Bivariate Polynomials 3 Extensions. Resultant Real Solving on Bivariate Systems 4 5 Implementation D. I. Diochnos (UIC - MSCS) Real Solving on Bivariate Algebraic Systems Sep ’07 16 / 65

  21. Bivariate SignAt. Input: α ∼ = [ A , [ A L , A R ]] , β ∼ = [ B , [ B L , B R ]] and f ∈ Z [ x , y ] . Output: Compute the sign of f ( α, β ) . Compute a Sturm sequence of ( A , f ) . 1 Evaluate the sequence on each of endpoints A L , A R of α. 2 Perform S IGN -A T at y = β on each polynomial in sequence. 3 Count sign-variations on sequences. 4 Yield result with ( V L − V R ) · A ′ ( α ) 5 Complexity: Sign can be computed in � O B ( n 2 1 n 3 2 τ ) . D. I. Diochnos (UIC - MSCS) Real Solving on Bivariate Algebraic Systems Sep ’07 17 / 65

  22. Working in Extension-Fields. GCD Computation [Hoeij and Monagan - 2002] Other required operations are reduced to univariate S IGN -A T . D. I. Diochnos (UIC - MSCS) Real Solving on Bivariate Algebraic Systems Sep ’07 18 / 65

Recommend


More recommend