multiplication of power series
play

Multiplication of Power Series Eric Schost, LIX, Ecole - PowerPoint PPT Presentation

Multiplication of Power Series Eric Schost, LIX, Ecole polytechnique Setting When talking about multiplication of power series, one has to specify how to truncate them. The truncation pattern will be determined by the data of a


  1. Multiplication of Power Series Eric Schost, LIX, ´ ´ Ecole polytechnique

  2. Setting • When talking about multiplication of power series, one has to specify how to truncate them. • The truncation pattern will be determined by the data of a zero-dimensional monomial ideal . • Example: M = � X 3 1 , X 2 1 X 2 2 , X 3 2 � corresponds to series with support in T = { 1 , X 1 , X 2 1 , X 2 , X 1 X 2 , X 2 1 X 2 , X 2 2 , X 1 X 2 2 } . Here, the square of 1 + X 1 + X 2 1 + X 2 + X 1 X 2 + X 2 1 X 2 + X 2 2 + X 1 X 2 2 is 1 + 2 X 1 + 3 X 2 1 + 2 X 2 + 4 X 1 X 2 + 6 X 2 1 X 2 + 3 X 2 2 + 6 X 1 X 2 2 .

  3. Applications Many forms of Hensel lifting involve computing modulo � X 1 , . . . , X n � d = � all monomials of degree d � . This is truncation in total degree. Computations with algebraic numbers. Addition in characteristic p uses products truncated modulo � X p 1 , . . . , X p n � . This is truncation in partial degree. Polynomial system solving. Lecerf’s deflation algorithm for systems with multiplicities requires products modulo the “gradient” of the ideal � X m 1 , . . . , X m s , X s +1 , . . . , X n � . 1 s

  4. Pictorial representation

  5. Some words on the complexity model To measure the cost of multiplication algorithms, I will mention both bilinear and total complexity. • Bilinear complexity only counts the “algebra operations”, that is, “essential multiplications”. If is often easier to estimate. • Total complexity takes into account some linear operations as well. Example: FFT in degree n . evaluation at roots of 1 � pairwise multiplications � interpolation Bilinear cost is n , total cost is O ( n log( n )).

  6. Formally: computational model Let D be an algebra with basis b , over a field k . A bilinear algorithm is the data of • 2 s linear forms f 1 , . . . , f s and h 1 , . . . , h s over D , • s elements w 1 , . . . , w s in D , such that the equality s � AB = f i ( A ) h i ( B ) w i i =1 holds for all A, B in D . Complexity measures: • Bilinear complexity (rank) = s . • Total complexity also counts the cost of computing f i ( A ), h i ( B ), and performing the recombination, in the basis b .

  7. Overview Let M be a zero-dimensional monomial ideal in k [ X 1 , . . . , X n ]. • The bilinear complexity of the product modulo M is O log (reg M deg M ) . reg M : regularity of M , deg M : degree of M . • Giving total complexity estimates requires to solve multivariate evaluation / interpolation problems. • Particular case: truncation in partial degree. The total complexity is in � (deg M ) 1+ ε � O for all ε .

  8. Previous work

  9. Few variables 1 variable. • The bilinear complexity of the product modulo X d 1 (by FFT-like techniques) is the same as that of polynomials (Winograd, Fiduccia-Zalcstein), 2d − 1 . • Improvements for some slower algorithms like Karatsuba or Toom-Cook (Mulders, Hanrot-Zimmermann). 2 variables. • Truncation in total degree d (Sch¨ onhage, Bl¨ aser) 1 . 25 d 2 ≤ C Bilinear ≤ 1 . 5 d 2 deg M ≃ 0 . 5 d 2 • Truncation in partial degree d (Sch¨ onhage, Bl¨ aser) 2 . 33 d 2 ≤ C Bilinear ≤ 3 d 2 deg M ≃ d 2

  10. Several variables Let T be the set of exponents in the monomial basis of k [ X 1 , . . . , X n ] /M ; then | T | = deg M . Naive product: the total complexity is � ( t 1 + 1) · · · ( t n + 1) . t ∈ T Special cases Truncation in total degree � deg 2 n ! . M Truncation in partial degree � deg 2 2 n . M Using fast multivariate polynomial multiplication: for truncation in partial degree, O log (2 n deg M ) .

  11. Several variables, special case Total degree. In total degree d + 1, with n variables, the total complexity is O log (deg M ) , � d + n � where deg M = and char k = 0 (Lecerf-S.). n Previous result by Griewank, bilinear complexity only. Generalization by van der Hoeven to weighted total degree truncation. Improvements in the log factors by van der Hoeven, under some conditions on n, d , using his Truncated Fourier Transform.

  12. Evaluation and interpolation in several variables

  13. Monomial ideals and sets of points Setup. k is a field (infinite or large enough). M ⊂ k [ X 1 , . . . , X n ] is the monomial ideal generated by some terms g 1 , . . . , g R , where g i does not divide g j , i � = j , and g i = X δ i 1 · · · X δ i n . 1 n The index set. T ⊂ N n is the set of exponents of the monomial basis of k [ X 1 , . . . , X n ] /M . Example: M = � X 7 1 , X 6 1 X 2 2 , X 2 1 X 4 2 , X 5 2 �

  14. Some special sets of points Values in k . Let d i be minimal such that X d i is in M . i For i ≤ n and j < d i , let a i,j ∈ k such that a i,j � = a i,j ′ for j � = j ′ , and A 1 = [ a 1 , 0 , . . . , a 1 ,d 1 − 1 ] , . . . , A n = [ a n, 0 , . . . , a n,d n − 1 ] . The evaluation set. Define A T ⊂ A 1 × · · · × A n ⊂ k n by A T = { ( a 1 ,c 1 , . . . , a n,c n ) | ( c 1 , . . . , c n ) ∈ T } . Basic example: Take a i,j = j . Then A T = T .

  15. An easy Gr¨ obner basis For r ≤ R , recall that g r = X δ r 1 · · · X δ r and define 1 n n δ r i − 1 n � � G r = ( X i − a i,j ) i =1 j =0 Example. Take a i,j = j for all i, j and M = � X 10 1 , X 10 2 � . g 1 = X 10 1 �→ G 1 = ( X 1 − 0)( X 1 − 1) · · · ( X 1 − 9) . g 2 = X 10 2 �→ G 2 = ( X 2 − 0)( X 2 − 1) · · · ( X 2 − 9) . Prop. For any monomial order that refines degree, • g r is the leading term of G r ; • � G 1 , . . . , G R � is a Gr¨ obner basis of I ( A T ). Macaulay, Hartshorne, Brian¸ con-Galligo, Mora, Sauer . . .

  16. An evaluation / interpolation problem Corollary. Let Span( T ) = Span { X t 1 1 · · · X t n n | ( t 1 , . . . , t n ) ∈ T } . It is the set of polynomials reduced with respect to M . Then map Eval P ∈ Span( T ) �→ [ P ( a ) | a ∈ A T ] is invertible. Let Interp be its inverse. Question: How fast can we compute Eval and Interp ? In general, I don’t know = ⇒ I write C Eval and C Interp for their complexity. For some special cases, it becomes easier.

  17. Classical example: M = � X d 1 1 , . . . , X d n n � Amounts to evaluation / interpolation on a rectangular grid. First evaluate X n , then X n − 1 , . . . • Choose primitive roots of 1 if available; • else, choose points at a geometric progression; • else, choose arbitrary points; � an algorithm in O log (deg M ) = O log ( d 1 · · · d n ).

  18. Less classical examples E.g., evaluation on the left-hand example, we would • Split the “right-hand” arm from the rest of the body. • Do some analogue of classical multipoint evaluation. • Proceed recursively. A general algorithm for these questions remains to be written.

  19. Main results

  20. Review of the setup Let k be infinite or “large enough”, and n ≥ 1. • Let g 1 , . . . , g R be terms in k [ X 1 , . . . , X n ], such that g i does not divide g j , i � = j . • Let M = � g 1 , . . . , g R � . • Let T be the exponents of the terms not in M . • Let deg M = | T | = degree of M . • Let reg M = 1 + max {| t | for t ∈ T } = regularity of M . • Let A T be the set of points associated to T .

  21. Complexity notation • M Bilinear ( d ) and M ( d ) are the bilinear and total cost of univariate polynomial multiplication in degree d . Using FFT, M Bilinear ( d ) = O ( d log( d )) , M ( d ) = O ( d log( d ) log log( d )) Sch¨ onhage-Strassen, Cantor-Kaltofen.

  22. Main results: general case Theorem. The bilinear complexity of the multiplication in Q is upper bounded by M Bilinear (reg M ) deg M . Theorem. The total complexity is in � � O ( C Eval + C Interp )reg M + M (reg M ) deg M . What is it worth? An optimal result would be in O (deg M ). Here, the best we could hope for would be in O (reg M deg M ). This would require sharp results for C Eval and C Interp .

  23. Main results: partial degree truncation Theorem. Let d 1 , . . . , d n be in N > 0 . The total complexity of the product modulo M = � X d 1 1 , . . . , X d n n � is in O log (( d 1 + · · · + d n ) d 1 · · · d n ) . Corollary. For any ε > 0, the total complexity of the product modulo M = � X d 1 1 , . . . , X d n n � is in � ( d 1 · · · d n ) 1+ ε � O . Idea of proof. Use Kronecker’s substitution for large d i ’s and the previous theorem for small ones.

  24. Proof

  25. Approximate algorithms Let D be a k -algebra and ε a new indeterminate. An approximate (bilinear) algorithm for the product in D is • 2 s linear forms f 1 , . . . , f s and h 1 , . . . , h s with coefficients in k ( ε ) • s elements w 1 , . . . , w s in D ⊗ k ( ε ) ( i.e. in D with coefficients in k ( ε )), such that one has for all A, B in D s � AB = f i ( A ) h i ( B ) w i mod ε. i =1 Origins: matrix multiplication. • Bini et al. : approximate (floating-point) product. • Bini: relation to exact computation.

  26. Example: multiplication modulo X 2 1 Let A = a 0 + a 1 X 1 and B = b 0 + b 1 X 1 . Then mod X 2 mod ( X 2 1 − ε 2 )) AB 1 = ( AB mod ε � �� � C 1. Evaluation A ( ± ε ) = a 0 ± a 1 ε, B ( ± ε ) = b 0 ± b 1 ε 2. Pairwise products C ( ε ) = A ( ε ) B ( ε ) , C ( − ε ) = A ( − ε ) B ( − ε ) 3. Interpolation C = C ( ε ) X 1 + ε + C ( − ε ) − X 1 + ε = a 0 b 0 +( a 0 b 1 + a 1 b 0 ) X 1 + ε 2 a 1 b 1 . 2 ε 2 ε

Recommend


More recommend