4 research outputs found

    On exact division and divisibility testing for sparse polynomials

    Full text link
    No polynomial-time algorithm is known to test whether a sparse polynomial G divides another sparse polynomial FF. While computing the quotient Q=F quo G can be done in polynomial time with respect to the sparsities of F, G and Q, this is not yet sufficient to get a polynomial-time divisibility test in general. Indeed, the sparsity of the quotient Q can be exponentially larger than the ones of F and G. In the favorable case where the sparsity #Q of the quotient is polynomial, the best known algorithm to compute Q has a non-linear factor #G#Q in the complexity, which is not optimal. In this work, we are interested in the two aspects of this problem. First, we propose a new randomized algorithm that computes the quotient of two sparse polynomials when the division is exact. Its complexity is quasi-linear in the sparsities of F, G and Q. Our approach relies on sparse interpolation and it works over any finite field or the ring of integers. Then, as a step toward faster divisibility testing, we provide a new polynomial-time algorithm when the divisor has a specific shape. More precisely, we reduce the problem to finding a polynomial S such that QS is sparse and testing divisibility by S can be done in polynomial time. We identify some structure patterns in the divisor G for which we can efficiently compute such a polynomial~S

    Faster Algorithms for Sparse Decomposition and Sparse Series Solutions to Differential Equations

    Get PDF
    Sparse polynomials are those polynomials with only a few non-zero coefficients relative to their degree. They can appear in practice in polynomial systems as inputs, where the degree of the input sparse polynomial can be exponentially larger than the bit length of the representation of it. This leads to the difficulties when computing with sparse polynomials, as many efficient algorithms for dense polynomials take polynomial-time in the degree, and hence an exponential number of operations in a natural representation of the sparse polynomial. In this thesis, we explore new and faster methods for sparse polynomials and power series. We reconsider algorithms for the sparse perfect power problem and derive a faster sparsity-sensitive algorithm. We then show a fast new algorithm for sparse polynomial decomposition, again sensitive to the sparsity of the input and output. Finally, our algorithms to solve the sparse perfect power and decomposition problems lead us to explore a generalization to solving the linear differential equation with sparse polynomial coefficients using a Newton-like method. We demonstrate an algorithm which will find sparse solutions if they exist, in time polynomial in the input and the output

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

    Full text link
    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,gC[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 f1O~(g03deg2f)g01\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,gZ[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/g0O(f0size(f)2log6degg)\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(f0(logf0+logf))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})

    Efficient Computation with Sparse and Dense Polynomials

    Get PDF
    Computations with polynomials are at the heart of any computer algebra system and also have many applications in engineering, coding theory, and cryptography. Generally speaking, the low-level polynomial computations of interest can be classified as arithmetic operations, algebraic computations, and inverse symbolic problems. New algorithms are presented in all these areas which improve on the state of the art in both theoretical and practical performance. Traditionally, polynomials may be represented in a computer in one of two ways: as a "dense" array of all possible coefficients up to the polynomial's degree, or as a "sparse" list of coefficient-exponent tuples. In the latter case, zero terms are not explicitly written, giving a potentially more compact representation. In the area of arithmetic operations, new algorithms are presented for the multiplication of dense polynomials. These have the same asymptotic time cost of the fastest existing approaches, but reduce the intermediate storage required from linear in the size of the input to a constant amount. Two different algorithms for so-called "adaptive" multiplication are also presented which effectively provide a gradient between existing sparse and dense algorithms, giving a large improvement in many cases while never performing significantly worse than the best existing approaches. Algebraic computations on sparse polynomials are considered as well. The first known polynomial-time algorithm to detect when a sparse polynomial is a perfect power is presented, along with two different approaches to computing the perfect power factorization. Inverse symbolic problems are those for which the challenge is to compute a symbolic mathematical representation of a program or "black box". First, new algorithms are presented which improve the complexity of interpolation for sparse polynomials with coefficients in finite fields or approximate complex numbers. Second, the first polynomial-time algorithm for the more general problem of sparsest-shift interpolation is presented. The practical performance of all these algorithms is demonstrated with implementations in a high-performance library and compared to existing software and previous techniques
    corecore