New Bounds on Quotient Polynomials with Applications to Exact Divisibility and Divisibility Testing of Sparse Polynomials

Abstract

A sparse polynomial (also called a lacunary polynomial) is a polynomial that has relatively few terms compared to its degree. The sparse-representation of a polynomial represents the polynomial as a list of its non-zero terms (coefficient-degree pairs). In particular, the degree of a sparse polynomial can be exponential in the sparse-representation size. We prove that for monic polynomials f,g∈C[x]f, g \in \mathbb{C}[x] such that gg divides ff, the β„“2\ell_2-norm of the quotient polynomial f/gf/g is bounded by βˆ₯fβˆ₯1β‹…O~(βˆ₯gβˆ₯03deg2f)βˆ₯gβˆ₯0βˆ’1\lVert f \rVert_1 \cdot \tilde{O}(\lVert{g}\rVert_0^3\text{deg}^2{ f})^{\lVert{g}\rVert_0 - 1}. This improves upon the exponential (in degf\text{deg}{ f}) bounds for general polynomials and implies that the trivial long division algorithm runs in time quasi-linear in the input size and number of terms of the quotient polynomial f/gf/g, thus solving a long-standing problem on exact divisibility of sparse polynomials. We also study the problem of bounding the number of terms of f/gf/g in some special cases. When f,g∈Z[x]f, g \in \mathbb{Z}[x] and gg is a cyclotomic-free (i.e., it has no cyclotomic factors) trinomial, we prove that βˆ₯f/gβˆ₯0≀O(βˆ₯fβˆ₯0size(f)2β‹…log⁑6degg)\lVert{f/g}\rVert_0 \leq O(\lVert{f}\rVert_0 \text{size}({f})^2 \cdot \log^6{\text{deg}{ g}}). When gg is a binomial with g(Β±1)β‰ 0g(\pm 1) \neq 0, we prove that the sparsity is at most O(βˆ₯fβˆ₯0(log⁑βˆ₯fβˆ₯0+log⁑βˆ₯fβˆ₯∞))O(\lVert{f}\rVert_0 ( \log{\lVert{f}\rVert_0} + \log{\lVert{f}\rVert_{\infty}})). Both upper bounds are polynomial in the input-size. We leverage these results and give a polynomial time algorithm for deciding whether a cyclotomic-free trinomial divides a sparse polynomial over the integers. As our last result, we present a polynomial time algorithm for testing divisibility by pentanomials over small finite fields when degf=O~(degg)\text{deg}{ f} = \tilde{O}(\text{deg}{ g})

    Similar works

    Full text

    thumbnail-image

    Available Versions