differential equations for algebraic functions
play

Differential Equations for Algebraic Functions Bruno Salvy - PowerPoint PPT Presentation

Introduction Algorithms Bounds Conclusion Differential Equations for Algebraic Functions Bruno Salvy Bruno.Salvy@inria.fr Algorithms Project, Inria Joint work with A. Bostan, F. Chyzak, G. Lecerf & E. Schost 1 / 23 Bruno Salvy


  1. Introduction Algorithms Bounds Conclusion Differential Equations for Algebraic Functions Bruno Salvy Bruno.Salvy@inria.fr Algorithms Project, Inria Joint work with A. Bostan, F. Chyzak, G. Lecerf & ´ E. Schost 1 / 23 Bruno Salvy Differential Equations for Algebraic Functions

  2. Introduction Algorithms Bounds Conclusion I Introduction 2 / 23 Bruno Salvy Differential Equations for Algebraic Functions

  3. Introduction Algorithms Bounds Conclusion Example: Binary-Ternary Trees = + + c N = number of trees with N nodes Generating series: α = 1 + 2 z + 10 z 2 + 66 z 3 + · · · + c N z N + · · · α = 1 + z α 2 + z α 3 . More generally, context-free languages: their enumeration; their random generation. Aim c 0 , . . . , c N for large N . 3 / 23 Bruno Salvy Differential Equations for Algebraic Functions

  4. Introduction Algorithms Bounds Conclusion Computations for Binary-Ternary Trees α = 1 + z α 2 + z α 3 . 1 Non-linear recurrence � � c N = c i c j + c i c j c k , N ≥ 1 . i + j = N − 1 i + j + k = N − 1 Complexity: O ( N 3 ) ops 4 / 23 Bruno Salvy Differential Equations for Algebraic Functions

  5. Introduction Algorithms Bounds Conclusion Computations for Binary-Ternary Trees α = 1 + z α 2 + z α 3 . 1 Non-linear recurrence O ( N 3 ) 2 Iterate α k +1 = 1 + z α k + z α 3 k α 0 = 1 α 1 = 1 + 2 z α 2 = 1 + 2 z + 10 z 2 + 16 z 3 + 8 z 4 α 3 = 1 + 2 z + 10 z 2 + 66 z 3 + 248 z 4 + . . . α 4 = 1 + 2 z + 10 z 2 + 66 z 3 + 488 z 4 + . . . Complexity: O ( NM ( N )) ( M ( N ) for series product) 4 / 23 Bruno Salvy Differential Equations for Algebraic Functions

  6. Introduction Algorithms Bounds Conclusion Computations for Binary-Ternary Trees α = 1 + z α 2 + z α 3 . 1 Non-linear recurrence O ( N 3 ) 2 Iterate O ( NM ( N )) Fast Multiplication Balanced input: degree N × degree N ıve: M ( N ) = O ( N 2 ) Na¨ Karatsuba (1963): M ( N ) = O ( N 1 . 59 ) Fast Fourier Transform: M ( N ) = O ( N log N ) =: ˜ O ( N ) [Sch¨ onhage-Strassen71] Many applications via Newton iteration, including division. 4 / 23 Bruno Salvy Differential Equations for Algebraic Functions

  7. Introduction Algorithms Bounds Conclusion Computations for Binary-Ternary Trees α = 1 + z α 2 + z α 3 . 1 Non-linear recurrence O ( N 3 ) 2 Iterate O ( NM ( N )) 3 Newton iteration [Kung & Traub 78] α k +1 = α k − α k − (1 + z α 2 k + z α 3 k ) 1 − 2 z α k − 3 z α 2 k α 0 = 1 α 1 = 1 + 2 z + 10 z 2 + 50 z 3 + · · · α 2 = 1 + 2 z + 10 z 2 + 66 z 3 + 498 z 4 + 4066 z 5 + 34970 z 6 + 311042 z 7 + · · Complexity: O ( M ( N )) ( M ( N ) for series product) 4 / 23 Bruno Salvy Differential Equations for Algebraic Functions

  8. Introduction Algorithms Bounds Conclusion Computations for Binary-Ternary Trees α = 1 + z α 2 + z α 3 . 1 Non-linear recurrence O ( N 3 ) 2 Iterate O ( NM ( N )) 3 Newton iteration [Kung & Traub 78] O ( M ( N )) 4 Linear recurrence [Comtet 64, Chudnovsky 2 86] linear differential equation [Abel 1827, Cockle 1861] 1 2 z ( z − 2)( z 2 +11 z − 1) α ′′ +(3 z 3 +12 z 2 − 89 z +6) α ′ − 3( z +3) α = z +3 , translate 2 (2 n + 6)(2 n + 7) c n +3 = (46 n 2 + 227 n + 279) c n +2 − 3(6 n 2 + 10 n + 3) c n +1 − n (2 n + 1) c n . Complexity: O ( N ). 4 / 23 Bruno Salvy Differential Equations for Algebraic Functions

  9. Introduction Algorithms Bounds Conclusion Computations for Binary-Ternary Trees α = 1 + z α 2 + z α 3 . 1 Non-linear recurrence O ( N 3 ) 2 Iterate O ( NM ( N )) 3 Newton iteration [Kung & Traub 78] O ( M ( N )) 4 Linear recurrence [Comtet 64, Chudnovsky 2 86] O ( N ) Series ↔ Coefficients: orders differ � z i α ( j ) = z i ∂ j ( n − i + 1) · · · ( n − i + j ) c n + j − i z n z · α = n � ( z ∂ z ) k z − i · α = c n + i n k z n . n 4 / 23 Bruno Salvy Differential Equations for Algebraic Functions

  10. Introduction Algorithms Bounds Conclusion Computations for Binary-Ternary Trees α = 1 + z α 2 + z α 3 . 1 Non-linear recurrence O ( N 3 ) 2 Iterate O ( NM ( N )) 3 Newton iteration [Kung & Traub 78] O ( M ( N )) 4 Linear recurrence [Comtet 64, Chudnovsky 2 86] O ( N ) Our Result Even faster! (wrt degree) 4 / 23 Bruno Salvy Differential Equations for Algebraic Functions

  11. Introduction Algorithms Bounds Conclusion Algorithms and Complexities P ( z , α ) = 0 , deg P = D 1 Non-linear recurrence O ( N D ) √ 2 Iterate if α = P ( z , α ): O ( DNM ( N )) (baby steps/giant steps) √ 3 Newton iteration O ( DM ( N )) 4 Linear recurrence O ( D ? N ). Theorem (BoChLeSaSc07) 1 the recurrence computed through Cockle’s differential equation leads to O ( D 2 M ( D ) N ) ops; 2 there exist other recurrences leading to O ( DM ( D ) N ) ops. Also, results in terms of D z and D y separately. 5 / 23 Bruno Salvy Differential Equations for Algebraic Functions

  12. Introduction Algorithms Bounds Conclusion Nicer Recurrence on our Example α = 1 + z α 2 + z α 3 = + + Classical way: Linear differential equation [Abel 1827, Cockle 1861] 1 2 z ( z − 2)( z 2 +11 z − 1) α ′′ +(3 z 3 +12 z 2 − 89 z +6) α ′ − 3( z +3) α = z +3 , translate 2 (2 n + 6)(2 n + 7) c n +3 = (46 n 2 + 227 n + 279) c n +2 − 3(6 n 2 + 10 n + 3) c n +1 − n (2 n + 1) c n . Shorter recurrence: ( n +2)(2 n +5)(5 n +3) c n +2 = (110 n 3 +396 n 2 +445 n +150) c n +1 + n (2 n + 1)(5 n + 8) c n . Questions Minimal order for differential equation? for recurrence? Minimal “size”? Efficiency? 6 / 23 Bruno Salvy Differential Equations for Algebraic Functions

  13. Introduction Algorithms Bounds Conclusion Apparent Singularities Pollution α = 1 + z α 2 + z α 3 Cockle’s differential equation: 2 z ( z − 2)( z 2 +11 z − 1) α ′′ +(3 z 3 +12 z 2 − 89 z +6) α ′ − 3( z +3) α = z +3 , differential equation associated to shorter recurrence: 10 z ( z 2 + 11 z − 1) α ′′′ − (2 z 3 − 33 z 2 − 442 z + 25) α ′′ + · · · = 0 . 7 / 23 Bruno Salvy Differential Equations for Algebraic Functions

  14. Introduction Algorithms Bounds Conclusion Our Results degree degree O(D^3) O(D^3) Computation Unrolling the recurrence Minimal differential equation Õ(D M (D)N ) 2 Õ(D ) ω +4 Nice differential equation Õ(D ) Õ(DM (D)N ) ω +3 Differential equation Õ(M(D )N) 2 Õ(D ) 2 ω +3 corresponding to recurrence of small order degree Corresponding recurrences O(D^2) O(D^2) O(D^2) O(D^2) O(D^2) O(D) O(D) O(D) O(D) O(D) O(D) O(D^2) O(D^2) order order O(D^2) O(D^2) O(D^3) order 8 / 23 Bruno Salvy Differential Equations for Algebraic Functions

  15. Introduction Algorithms Bounds Conclusion History Abel (1827): Existence of linear differential equation; Cockle (1861–1862): Algorithm for linear differential equation of minimal order; Harley (1862): Name “Differential resolvent”; Tannery (1875): Rediscovery of Cockle’s method; Comtet (1964): Application to series expansion (by hand); Chudnovsky 2 (1986): Complexity point of view; Cormier, Singer, Trager, Ulmer (2002): � Degree bound in O ( D 5 ) for the differential resolvent; Nahay (2003–2004): Deg. bound in O ( D 3 ) for α λ with λ �∈ ¯ Q ; Tsai (2000): Weyl closure � removal of apparent singularities. 9 / 23 Bruno Salvy Differential Equations for Algebraic Functions

  16. Introduction Algorithms Bounds Conclusion II Algorithms 10 / 23 Bruno Salvy Differential Equations for Algebraic Functions

  17. Introduction Algorithms Bounds Conclusion Recurrence Unrolling Problem Given initial conditions and p k ( n ) u n + k + · · · + p 0 ( n ) u n = 0 , with p i ’s of degree d , compute u 0 , . . . , u N efficiently for N large. Direct: O ( Nkd ) ops; Better: O ( NkM ( d ) / d ). → The degree of the coefficients does not matter (much). Algorithm: Fast Evaluation of P ( x ) on 0 , . . . , N [Bostan et alii 07] Q ( z ) � P ( k ) z k = Idea: expand generating series P ( z ) = (1 − z ) d +1 . k ≥ 0 1 Compute S ( z ) := (1 − z ) − d − 1 mod z d ; 2 Compute N / d times z d C ( z ) A ( z ) (1 − z ) d +1 = b 0 + · · · + b d − 1 z d − 1 + (1 − z ) d +1 � �� � B ( z ) by B := AS mod z d ; z d C := A − B (1 − z ) d +1 . 11 / 23 Bruno Salvy Differential Equations for Algebraic Functions

  18. Introduction Algorithms Bounds Conclusion Cockle’s Algorithm — Example α ( z ) − (1 + z α 2 ( z ) + z α 3 ( z )) =: P ( z , α ) = 0 � P y ( z , α ) α ′ ( z ) + P z ( z , α ) = 0 → A ( z , y ) P ( z , y ) + B ( z , y ) P y ( z , y ) = 1 . (B´ ezout) α ′ = − BP z mod P =: u 1 α 2 + v 1 α + w 1 1 , Vector space of dimension 3 α ′′ = ( u ′ 1 α 2 + v ′ 1 ) + (2 u 1 α + v 1 ) α ′ =: u 2 α 2 + v 2 α + w 2 1 , 1 α + w ′ α ′′′ = ( u ′ 2 α 2 + v ′ 2 ) + (2 u 2 α + v 2 ) α ′ =: u 3 α 2 + v 3 α + w 3 1 . 2 α + w ′   0 u 1 u 2 u 3 � α ′′′ � � � α 2 α ′ α ′′ α = α 1 1 v 1 v 2 v 3   0 w 1 w 2 w 3 � �� � A V ∈ ker A has for coordinates the coefficients of a differential equation. 12 / 23 Bruno Salvy Differential Equations for Algebraic Functions

Download Presentation
Download Policy: The content available on the website is offered to you 'AS IS' for your personal information and use only. It cannot be commercialized, licensed, or distributed on other websites without prior consent from the author. To download a presentation, simply click this link. If you encounter any difficulties during the download process, it's possible that the publisher has removed the file from their server.

Recommend


More recommend