Dividing polynomials when you only know their values - Applied

2 downloads 0 Views 165KB Size Report
Apr 26, 2004 - mial algebra by values, without first converting to another basis such as the monomial basis. In this talk I expand on some details from that ...
Dividing polynomials when you only know their values Amirhossein Amiraslani 26 April 2004 Abstract A recent paper by Amiraslani, Corless, Gonzalez-Vega and Shakoori studies polynomial algebra by values, without first converting to another basis such as the monomial basis. In this talk I expand on some details from that paper, namely the method we used to divide (multivariate and univariate) polynomials given only by values. This is a surprisingly valuable operation, and with it one can solve systems of polynomial equations without first constructing a Gr¨obner basis, or one can compute Gr¨obner bases if desired.

Introduction This paper discusses algorithms for division of polynomials given by values. For the context and philosophy of this approach, see [1].

1

Univariate division

The univariate case is substantially easier than the multivariate case, in that remainders are (however computed) automatically unique, in any basis. We wish to divide the polynomial A(x), given by its values aj , 1 ≤ j ≤ N on the ordered grid xj by the polynomial B(x) given by its values bj on the same grid. We assume deg (A) = n and deg (B) = m are known, and n ≥ m, else the problem is trivial. We seek the values Qj and Rj such that aj = Qj bj + Rj

1 ≤ j ≤ N,

(1)

where the Qj are the values of a polynomial of degree n − m, whilst the Rj are the values of a polynomial of degree at most m − 1. We have 2N unknowns, and only N equations. We now impose the degree constraints. We could require that derivatives Q(n−m+1) (xj ) = 0 and R(m) (xj ) = 0 for all xj , which gives us 2N more equations, overconstraining the system. By using the techniques of [1], we may express these derivatives as a linear combination of the values Qj and of the values Rj . However, we may also impose these degree constraints by using differences, which makes the result simpler in the case of equally spaced grids.

1

We may also impose the further conditions that p(`) (ξ) = 0 for all ` ≥ n − m + 1 in the case of Q and all ` ≥ m in the case of R. This gives N − (n − m) + N − (m) further, possibly redundant, conditions. To force a unique choice of solution, we minimize the norm of the solution vector by using the SVD or equivalently the Moore-Penrose inverse. As is well-known, using the SVD will minimize the norm of the solution in the case of column-rank deficient matrix problems. This has the incidental benefit of allowing this division algorithm to answer the boolean “divides?” question. We say that a(x) exactly divides b(x) if its remainder is “small enough”, that is, less than some pre-assigned tolerance (to within an acceptable factor). If the polynomials are given only on a grid, then what we are saying is that one polynomial divides another if the values of the remainder on the grid are small enough. This is an apparently sensible description in the face of data error. The generalization of this example to a full algorithm is clear: set up the division matrix, including the degree constraints, and solve the system using the SVD (or a more special-purpose direct minimization scheme, perhaps minimizing the maximum value of the remainder on the grid).

2

Multivariate Division

The generalization of the previous section to the multivariate case is reasonably straightforward. One chooses an ordering to express remainders, say [φ1 (x), φ2 (x), . . . , φN (x)], in the Lagrange basis case (when this corresponds to a vector of polynomial values on the grid) for example by traversing the grid in a definite order, and this specifies the placement of the entries in the division matrix. The degree constraint rows now must relate the values of the polynomial given at points recorded at possibly distant places in the vector of polynomial values, but this is just a matter of bookkeeping. One important refinement is that the degree constraints must now express the idea that “no leading term of the divisors may divide any term in the remainder”. Typically this can be imposed by requiring that (in the two-dimensional case, with an obvious generalization to m dimensions) ∂d p(x, y) = 0 (2) ∂xk ∂y d−k and this can be specified as usual by a linear constraint. Imposing this on every available point on the grid usually gives enough constraints to specify the problem. A typical shape of the resulting matrix (for a specific bivariate problem taken from [1]) is shown in Figure 1.

3

Solving Systems of Polynomials by Division

Suppose that we are given I = {fi (x)}, 1 ≤ i ≤ n, x = (x1 , x2 , . . . , xs ) and assume that V (I) is zero-dimensional. Suppose also that we are given a basis for K[x], perhaps the monomial basis 1, x1 , . . . , xs , x21 , . . . , or perhaps the family of Lagrange Polynomials, and an ordering. 2

0 20 40 60 80 100 120 140 160 180 200 0

20

40 60 nz = 930

80

Figure 1: The shape of an example multivariate division matrix M

3

Consider first the case where we use a monomial ordering and the usual division algorithm. Take α ∈ P K randomly, and consider a (non-unique) remainder of a random polynomial ρ , say ρ ∼ N i=1 ri φi (x) where no leading term of any fi divides any φi . The symbol ∼ shows the result of finding a non-unique remainder by the usual division algorithm. By the randomness of ρ we conclude that generically all the remainder basis elements φi that we need are present (this need not be so initially, but we give an algorithm below to ensure that this is eventually the case). Now for each φi (x), use the standard division algorithm to compute a non-unique remainder nurem

(x1 − α)φi (x)

(3)

where nurem stands for non-unique remainder and, if no new φ˜j are introduced by these divisions, express each as N X (x1 − α)φi (x) ∼ rij φj . (4) j=1

If for some φi we need some new φ˜j to express the non-unique remainder, we may add each such φ˜j to the list of φj at the end, say φN +1 = φ˜j , and extend each previously computed remainder N X (x1 − α)φi ∼ rij φj + 0 · φN +1 (5) j=1

This is analogous to the process of adding S-polynomials to a set of ideal generators. Will this process terminate? If {fi } is a Gr¨obner basis already, and the variety of the ideal is zero-dimensional, then with probability 1 it will terminate on the first step. In any case the number of possible φ˜j to add is finite (by hypothesis I is zero-dimensional). But, if f is not a Gr¨obner basis, then we do not as yet have reason to expect the process to terminate. Theorem 3.1. If a total-degree ordering is used, then this process terminates. Proof : See [1]. From nowP on we suppose that the set {φi }N i=1 is fixed, and closed under the operation (x1 − α)φi ∼ N r φ . ij j j=1 In the case of Lagrange bases, we presume that our totality of sample points determines such a closed remainder space basis. Theorem 3.2. If the grid contains enough points to provide a closed remainder space basis, and if the zero-dimensional variety of the ideal contains only simple roots, then all roots appear as eigenvalues of the matrix rij . Proof. Since (x1 − α)φi (x) ∼

N X j=1

4

rij φj (x)

(6)

then each x∗ ∈ V (I) parameterizes an eigenvector of the matrix [rij ] because at the variety, the relation above becomes equality: thus      φ1 (x∗ ) r11 r12 . . . r1N φ1 (x∗ )  φ2 (x∗ )   r21 r22 . . . r2N   φ2 (x∗ )       ∗ (7) (x1 − α)  .  =  .. .. .. ..   ..    .  . . ... .  . φN (x∗ ) rN 1 . . . . . . rN N φN (x∗ )

In the monomial basis, we know how to find x∗ given such an eigenvector [10]. For the Lagrange basis case, we may find each coordinate x∗k of x∗ from the eigenvector U = α[L1 (x∗ ), L2 (x∗ ), . . . , LN (x∗ )] by taking moments. (i)

(i)

(i)

Corollary 3.3. If the interpolation points have coordinates (y1 , y2 , . . . , ys ) for 1 ≤ i ≤ N, then ÁX N N X (i) ∗ xk = yk ui ui , (8) i=1

i=1

because the linear polynomial xk is interpolated by

P

(i)

yk Li (x).

The proof is given in [1]. Corollary 3.4. Every root x∗ of V (I) may be found by searching the eigenvectors of R, taking moments, and verifying afterwards that fi (x∗ ) = 0 for 1 ≤ i ≤ N. Remark 3.5. Of course, there are eigenvectors of R that do not parameterize by roots (unless {fi } a Gr¨obner basis). So this approach shares, with the method of resultants, the drawback of introducing extraneous roots. It is hoped that fast black-box methods for solving structured eigenproblems may allow this method to be useful in some circumstances. For now, we note that the method computes pseudozeros—that is, points x∗ for which the |fi (x∗ )| are numerically small. One expects the numerical characteristics of such a method to be more faithful to the uncertainty model of the data, because no artificial bases are introduced that could potentially transform a well-conditioned problem to an ill-conditioned one. Acknowledgement: We thank Jeffrey B. Farr for a helpful discussion.

References [1] Amiraslani, A., Corless, R. M., Gonzalez-Vega, L., and Shakoori, A. Polynomial Algebra by Values. Tech. Rep. TR-04-01, at http:// www.orcca.on.ca/ TechReports, Ontario Research Centre for Computer Algebra, 2004. 5

[2] Barnett, S. Matrices: Methods and Applications. Clarendon, Oxford, 1990. [3] Corless, R. M., and Litt, G. Generalized companion matrices for polynomials not expressed in monomial bases. unpublished. [4] Corless, R. M., Watt, S. M., and Zhi, L. QR factoring to compute the GCD of univariate approximate polynomials. IEEE Transactions on Signal Processing (2004). [5] Diaz-Toca, G., and Gonzalez-Vega, L. Barnett’s theorems about the greatest common divisor of several univariate polynomials through Bezout-like matrices. Journal of Symbolic Computation 34, 1 (2002), 59–81. [6] Fortune, S. Polynomial root finding using iterated eigenvalue computation. In Proc. ISSAC (London, Canada, 2001), B. Mourrain, Ed., ACM, pp. 121–128. [7] Giesbrecht, M. W., Labahn, G., and shin Lee, W. Symbolic-numeric sparse interpolation of multivariate polynomials. preprint. [8] Shakoori, A. Solving bivariate polynomials by eigenvalues. Master’s thesis, University of Western Ontario, 2003. Department of Applied Mathematics. [9] Smith, B. T. Error bounds for zeros of a polynomial based upon Gerschgorin’s theorem. Journal of the Association for Computing Machinery 17, 4 (October 1970), 661–674. [10] Stetter, H. J. Numerical Polynomial Algebra. SIAM, 2004. [11] Zippel, R. Effective Polynomial Computation. Kluwer Academic, Boston, 1993.

6