Abstract

A recent bivariate factorisation algorithm appeared in Abu-Salem et al. [Abu-Salem, F., Gao, S., Lauder, A., 2004. Factoring polynomials via polytopes. In: Proc. ISSAC’04. pp. 4–11] based on the use of Newton polytopes and a generalisation of Hensel lifting. Although possessing a worst-case exponential running time like the Hensel lifting algorithm, the polytope method should perform well for sparse polynomials whose Newton polytopes have very few Minkowski decompositions. A preliminary implementation in Abu-Salem et al. [Abu-Salem, F., Gao, S., Lauder, A., 2004. Factoring polynomials via polytopes. In: Proc. ISSAC’04. pp. 4–11] indeed reflects this property, but does not exploit the fact that the algorithm preserves the sparsity of the input polynomial, so that the total amount of work and space required are O ( d 4 ) and O ( d 2 ) respectively, for an input bivariate polynomial of total degree d . In this paper, we show that the polytope method can be made sensitive to the number of non-zero terms of the input polynomial, so that the input size becomes dependent on both the degree and the number of terms of the input bivariate polynomial. We describe a sparse adaptation of the polytope method over finite fields with prime order, which requires fewer bit operations and memory references given a degree d sparse polynomial whose number of terms t satisfies t < d 3 / 4 , and which is known to be the product of two sparse factors. For t < d , and using fast polynomial arithmetic over finite fields, our refinement reduces the amount of work per extension of a coprime dominating edge factorisation and the total spatial cost to O ( t λ d 2 + t 2 λ d L ( d ) + t 4 λ d ) bit operations and O ( t λ d ) bits of memory respectively, for some 1 / 2 ≤ λ < 1 , and L ( d ) = log d log log d . To the best of our knowledge, the sparse binary factorisations achieved using this adaptation are of the highest degree so far, reaching a world record degree of 20 000 for a very sparse bivariate polynomial over F 2 .

Full Text
Published version (Free)

Talk to us

Join us for a 30 min session where you can share your feedback and ask us any queries you have

Schedule a call