Fast polynomial evaluation and composition
Guillaume Moroz (INRIA Nancy - Grand Est / LORIA)

TL;DR
The paper introduces the fast_polynomial library for Sage, enabling efficient multivariate polynomial evaluation with various schemes, including a novel method for non-power-of-two term counts, optimized for performance and extensibility.
Contribution
It presents a new polynomial evaluation scheme that improves upon classical methods for non-power-of-two term counts and offers a flexible, parallelized implementation in Sage.
Findings
New evaluation scheme improves performance for non-power-of-two terms
Library supports multiple evaluation schemes and types
Parallelization and memory optimization enhance efficiency
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…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsPolynomial and algebraic computation · Numerical Methods and Algorithms · Logic, programming, and type systems
