Objectives

Determine the pratical efficiency of the Karatsuba's algorithm in AXIOM or MAPLE. That is, for a pair of ramdom univariate polynomials of degree $ n$ determine experimentally which algorithm to use between the Karatsuba's algorithm and the classical (quadratic) one. Obviously, this will depend not only on $ n$ but also on the coefficient ring. The following coefficients rings are recommended: These choices will become clear later.

If you choose to work with MAPLE, you must implement your own univariate polynomial arithmetic by means of a canonical representation. To do do, you can adapt the file polynomials.input which implements multivariate polynomial arithmetic by means of a canonical representation. This is needed since in your implementation of the Karatsuba's algorithm you must control which algorithm is used during the recursive calls. If you would be using the built-in polynomial multiplication of MAPLE, then you would not know. As you can guess, the MAPLE polynomial multiplication already uses the Karatsuba's algorithm and other tricks.

Marc Moreno Maza
2008-01-07