Development of TRIP: Fast Sparse Multivariate Polynomial Multiplication Using Burst Tries

  • Mickaël Gastineau
  • Jacques Laskar
Part of the Lecture Notes in Computer Science book series (LNCS, volume 3992)


Flat vector representation of sparse multivariate polynomials is introduced in the computer algebra system TRIP with specific care to the cache memory. Burst tries are considered as an intermediate storage during the sparse multivariate polynomial multiplication by paying attention to the memory allocations. Timing and memory consumption are examined and compared with other recursive representations and other computer algebra systems.


Computer Algebra System Memory Consumption Polynomial Multiplication Binary Search Tree Recursive Representation 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.


  1. 1.
    Gastineau, M., Laskar, J.: TRIP 0.98. Manuel de référence TRIP, IMCCE, Paris Observatory (2005),
  2. 2.
    Laskar, J.: Accurate methods in general planetary theory. Astronomy Astrophysics 144, 133–146 (1985)MATHGoogle Scholar
  3. 3.
    San-Juan, F., Abad, A.: Algebraic and symbolic manipulation of poisson series. Journal of Symbolic Computation 32, 565–572 (2001)MATHCrossRefGoogle Scholar
  4. 4.
    Ivanova, T.: A New Echeloned Poisson Series Processor (EPSP). Celestial Mechanics and Dynamical Astronomy 80, 167–176 (2001)MATHCrossRefGoogle Scholar
  5. 5.
    Henrard, J.: A Survey of Poisson Series Processors. Celestial Mechanics and Dynamical Astronomy 45, 245–253 (1988)Google Scholar
  6. 6.
    Hida, Y.: Data structures and cache behavior of sparse polynomial multiplication. Class project CS282 (2002)Google Scholar
  7. 7.
    Heinz, S., Zobel, J., Williams, H.E.: Burst tries: a fast, efficient data structure for string keys. ACM Trans. Inf. Syst. 20, 192–223 (2002)CrossRefGoogle Scholar
  8. 8.
    Laskar, J.: Manipulation des séries. In: Modern Methods in Celestial Mechanics, Comptes Rendus de la 13ieme Ecole Printemps d’Astrophysique de Goutelas (France), Gif-sur-Yvette, Avril 24-29, 1989, pp. 63–88. Editions Frontieres (1990)Google Scholar
  9. 9.
    Deprit, T., Deprit, E.: Processing Poisson series in parallel. Journal of Symbolic Computation 10, 179–201 (1990)MATHCrossRefGoogle Scholar
  10. 10.
    Zorn, B.G.: The measured cost of conservative garbage collection. Software - Practice and Experience 23, 733–756 (1993)CrossRefGoogle Scholar
  11. 11.
    Hertz, M., Berger, E.D.: Quantifying the performance of garbage collection vs. explicit memory management. In: OOPSLA 2005: Proceedings of the 20th annual ACM SIGPLAN conference on Object oriented programming systems languages and applications, pp. 313–326. ACM Press, New York (2005)CrossRefGoogle Scholar
  12. 12.
    Lea, D.: A memory allocator (1998),
  13. 13.
    Berger, E.D., Zorn, B.G., McKinley, K.S.: Reconsidering custom memory allocation. SIGPLAN Not. 37, 1–12 (2002)CrossRefGoogle Scholar
  14. 14.
    Fateman, R.: Comparing the speed of programs for sparse polynomial multiplication. SIGSAM Bull 37, 4–15 (2003)MATHCrossRefGoogle Scholar
  15. 15.
    The PARI Group Bordeaux: PARI/GP, version 2.1.5 (2004) available from,
  16. 16.
    Greuel, G.M., Pfister, G., Schönemann, H.: Singular 3.0. A Computer Algebra System for Polynomial Computations, Centre for Computer Algebra, University of Kaiserslautern (2005),
  17. 17.
    Granlund, T.: GNU multiple precision arithmetic library 4.1.4 (2004),

Copyright information

© Springer-Verlag Berlin Heidelberg 2006

Authors and Affiliations

  • Mickaël Gastineau
    • 1
  • Jacques Laskar
    • 1
  1. 1.Paris Observatory – IMCCE – CNRS UMR8028Paris

Personalised recommendations