English

Fast polynomial evaluation and composition

Symbolic Computation 2013-07-29 v2

Abstract

The library \emph{fast\_polynomial} for Sage compiles multivariate polynomials for subsequent fast evaluation. Several evaluation schemes are handled, such as H\"orner, divide and conquer and new ones can be added easily. Notably, a new scheme is introduced that improves the classical divide and conquer scheme when the number of terms is not a pure power of two. Natively, the library handles polynomials over gmp big integers, boost intervals, python numeric types. And any type that supports addition and multiplication can extend the library thanks to the template design. Finally, the code is parallelized for the divide and conquer schemes, and memory allocation is localized and optimized for the different evaluation schemes. This extended abstract presents the concepts behind the \emph{fast\_polynomial} library. The sage package can be downloaded at \url{http://trac.sagemath.org/sage_trac/ticket/13358}.

Keywords

Cite

@article{arxiv.1307.5655,
  title  = {Fast polynomial evaluation and composition},
  author = {Guillaume Moroz},
  journal= {arXiv preprint arXiv:1307.5655},
  year   = {2013}
}
R2 v1 2026-06-22T00:55:18.698Z