On the Virtues of Generic Programming for Symbolic Computation

* Final gross prices may vary according to local VAT.

Get Access

Abstract

The purpose of this study is to measure the impact of C level code polynomial arithmetic on the performances of AXIOM high-level algorithms, such as polynomial factorization. More precisely, given a high-level AXIOMpackage P parametrized by a univariate polynomial domain U, we have compared the performances of P when applied to different U’s, including an AXIOM wrapper for our C level code.

Our experiments show that when P relies on U for its univariate polynomial computations, our specialized C level code can provide a significant speed-up. For instance, the improved implementation of square-free factorization in AXIOM is 7 times faster than the one in Maple and very close to the one in MAGMA. On the contrary, when P does not rely much on the operations of U and implements its private univariate polynomial operation, then P cannot benefit from our highly optimized C level code. Consequently, code which is poorly generic reduces the speed-up opportunities when applied to highly efficient and specialized