Abstract

This paper develops a fast method of binary segmentation for multivariate integer polynomials and applies it to polynomial multiplication, pseudodivision, resultant and gcd calculations. In the univariate case, binary segmentation yields the fastest known method for multiplication of integer polynomials, even slightly faster than fast Fourier transform methods (however, the underlying fast integer multiplication method is based on fast Fourier transforms). Fischer and Paterson ("SIAM-AMS Proceedings, 1974," pp. 113-125) seem to be the first authors who suggest binary segmentation for polynomials with coefficients in {0, 1}. Schönhage (J. Complexity1 (1985), 118-137), as well as Bini and Pan (J. Complexity2 (1986), 179-203) have applied the binary segmentation to univariate polynomial division and gcd calculation. In the multivariate case, well- known methods are the iterated application of univariate binary segmentation and Kronecker′s map. Our method of binary segmentation to the contrary is based on a one-step algebra homomorphism mapping multivariate polynomials directly into integers. More precisely, the variables x1, . , xn of a multivariate polynomial are substituted by integers 2ν1, . , 2νn, where ν1 < · · · < νn are chosen as small as possible. If n is the number of variables, d bounds the total degrees, and l bounds the bit lengths of the input, we achieve the bit complexities O(ψ((2d)n (n log d + l))) for multivariate multiplication, O(d ψ(d2n(n log d + l))) for multivariate pseudo-division (provided n = O(d log d)), and O(d ψ((2d2)n (n log d + l))) for multivariate subresultant chain calculation. Here ψ(l) = l log l log log l denotes the complexity of integer multiplication.

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