IDEAS home Printed from https://ideas.repec.org/a/gam/jmathe/v7y2019i5p441-d232243.html
   My bibliography  Save this article

Algorithms and Data Structures for Sparse Polynomial Arithmetic

Author

Listed:
  • Mohammadali Asadi

    (Department of Computer Science, University of Western Ontario, London, ON N6A 5B7, Canada)

  • Alexander Brandt

    (Department of Computer Science, University of Western Ontario, London, ON N6A 5B7, Canada)

  • Robert H. C. Moir

    (Department of Computer Science, University of Western Ontario, London, ON N6A 5B7, Canada)

  • Marc Moreno Maza

    (Department of Computer Science, University of Western Ontario, London, ON N6A 5B7, Canada)

Abstract

We provide a comprehensive presentation of algorithms, data structures, and implementation techniques for high-performance sparse multivariate polynomial arithmetic over the integers and rational numbers as implemented in the freely available Basic Polynomial Algebra Subprograms (BPAS) library. We report on an algorithm for sparse pseudo-division, based on the algorithms for division with remainder, multiplication, and addition, which are also examined herein. The pseudo-division and division with remainder operations are extended to multi-divisor pseudo-division and normal form algorithms, respectively, where the divisor set is assumed to form a triangular set. Our operations make use of two data structures for sparse distributed polynomials and sparse recursively viewed polynomials, with a keen focus on locality and memory usage for optimized performance on modern memory hierarchies. Experimentation shows that these new implementations compare favorably against competing implementations, performing between a factor of 3 better (for multiplication over the integers) to more than 4 orders of magnitude better (for pseudo-division with respect to a triangular set).

Suggested Citation

  • Mohammadali Asadi & Alexander Brandt & Robert H. C. Moir & Marc Moreno Maza, 2019. "Algorithms and Data Structures for Sparse Polynomial Arithmetic," Mathematics, MDPI, vol. 7(5), pages 1-29, May.
  • Handle: RePEc:gam:jmathe:v:7:y:2019:i:5:p:441-:d:232243
    as

    Download full text from publisher

    File URL: https://www.mdpi.com/2227-7390/7/5/441/pdf
    Download Restriction: no

    File URL: https://www.mdpi.com/2227-7390/7/5/441/
    Download Restriction: no
    ---><---

    Corrections

    All material on this site has been provided by the respective publishers and authors. You can help correct errors and omissions. When requesting a correction, please mention this item's handle: RePEc:gam:jmathe:v:7:y:2019:i:5:p:441-:d:232243. See general information about how to correct material in RePEc.

    If you have authored this item and are not yet registered with RePEc, we encourage you to do it here. This allows to link your profile to this item. It also allows you to accept potential citations to this item that we are uncertain about.

    We have no bibliographic references for this item. You can help adding them by using this form .

    If you know of missing items citing this one, you can help us creating those links by adding the relevant references in the same way as above, for each refering item. If you are a registered author of this item, you may also want to check the "citations" tab in your RePEc Author Service profile, as there may be some citations waiting for confirmation.

    For technical questions regarding this item, or to correct its authors, title, abstract, bibliographic or download information, contact: MDPI Indexing Manager (email available below). General contact details of provider: https://www.mdpi.com .

    Please note that corrections may take a couple of weeks to filter through the various RePEc services.

    IDEAS is a RePEc service. RePEc uses bibliographic data supplied by the respective publishers.