2011
DOI: 10.1145/1940475.1940521
|View full text |Cite
|
Sign up to set email alerts
|

Sparse polynomial multiplication and division in Maple 14

Abstract: We report on new codes for sparse multivariate polynomial multiplication and division over the integers that we have integrated into Maple 14's expand and divide commands. We describe our polynomial data structure and compare it with the one used by Maple. We then present some benchmarks comparing our software with the Magma, Maple, Singular, Trip and Pari computer algebra systems and also illustrating how multivariate polynomial factorization benefits from our improvements to polynomial multiplication and div… Show more

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
2
1
1
1

Citation Types

1
8
0

Year Published

2012
2012
2019
2019

Publication Types

Select...
3
2
1

Relationship

1
5

Authors

Journals

citations
Cited by 8 publications
(9 citation statements)
references
References 10 publications
(1 reference statement)
1
8
0
Order By: Relevance
“…One way to speed up polynomial multiplication, division, or factorization would be to convert the input to a more suitable data structure, compute the result, then convert back. This is what we did for in [13] for Maple 14 for polynomial multiplication and division. Singular 3-1-4 does this for polynomial division and factorization.…”
Section: Resultssupporting
confidence: 69%
See 1 more Smart Citation
“…One way to speed up polynomial multiplication, division, or factorization would be to convert the input to a more suitable data structure, compute the result, then convert back. This is what we did for in [13] for Maple 14 for polynomial multiplication and division. Singular 3-1-4 does this for polynomial division and factorization.…”
Section: Resultssupporting
confidence: 69%
“…The first improvement (compare Maple 13 and Maple 16) is due to our improvements to polynomial multiplication and division in [14,15,16] which we reported at ISSAC 2010 in [13]. The speedup for factorization is due to the speedup in polynomial multiplication and division.…”
Section: A Factorization Benchmarkmentioning
confidence: 87%
“…Sec. 8.4 in [17] and [44]), i.e. by reducing multivariate multiplication to a multiplication of sparse univariate polynomials by appropriate replacement of variables.…”
Section: Multivariate Polynomialsmentioning
confidence: 99%
“…Sparse univariate multiplication is done with a plain O(nm log(nm)) algorithm (where n and m are numbers of nonzero terms in polynomi-als and the logarithm occurs due to search in the tree), hence the complexity of multivariate multiplication is also O(nm log(nm)). Nevertheless, Kronecker substitution allows to significantly (up to an order of magnitude) reduce the constant overhead: TreeMap[DegreeVector, Monomial] (sparse multivariate) is replaced with TreeMap[Long, Monomial] (sparse univariate) which is significantly faster (both on get() and put() operations) since comparing of long keys is much faster than comparing of DegreeVectors [44]. Actually, one can speed up even more by using HashMap instead of TreeMap since order of the intermediate terms is irrelevant.…”
Section: Multivariate Polynomialsmentioning
confidence: 99%
“…Even those based on the naive techniques are a matter of constant improvements in terms of data structures, memory management, vectorization and parallelization [10,18,[24][25][26][27]32].…”
Section: Related Workmentioning
confidence: 99%