Mcissac91.Pdf
Total Page:16
File Type:pdf, Size:1020Kb
Efficient Techniques for Multipolynomial Resultant Algorithms Dinesh Manocha and John Canny Computer Science Division University of California Berkeley, CA 94720 Abstract 1 Introduction Computational methods for manipulating sets of Finding the solution to a system of non-linear poly- polynomial equations are becoming of greater im- nomial equations over a given field is a classical and portance due to the use of polynomial equations in fundamental problem in computational algebra. This various applications. In some cases we need to elim- problem arises in symbolic and numeric techniques inate variables from a given system of polynomial used to manipulate sets of polynomial equations. equations to obtain a ‘(symbolical y smaller” system, Many applications in computer algebra, robotics, while in others we desire to compute the numerical geometric and solid modeling use sets of polyno- solutions of non-linear polynomial equations. Re- mial equations for object representation (as a semi- cently, the techniques of Gr6bner bases and polyno- algebraic set) and for defining constraints (as an al- mial continuation have received much attention as gebraic set). The main operations in these appli- algorithmic methods for these symbolic and numeric cat ions can be classified into two types: simultane- applications. When it comes to practice, these meth- ous elimination of one or more variables from a given ods are slow and not effective for a variety of rea- set of polynomial equations to obtain a “symbolically sons. In this paper we present efficient techniques for smaller” system and computing the numeric solutions applying multipolynomial resultant algorithms and of a system of polynomial equations. Elimination show their effectiveness for manipulating system of theory, a branch of classical algebraic geometry, in- polynomial equations. In particular, we present ef- vestigates the condition under which sets of polyno- ficient algorithms for computing the resultant of a mials have common roots. Its results were known at system of polynomial equations (whose coefficients least a century ago [Ma16; Sa1885; Wd50] and still may be symbolic variables). These algorithms can appear in modern treatments of algebraic geometry, be used for interpolating polynomials from their val- although in non-constructive form. The main result ues and expanding symbolic determinants. Moreover, is the construction of a single resultant polynomial of we use multipolynomial resultants for computing the n homogeneous polynomial equations in n unknowns, real or complex solutions of non-linear polynomial such that the vanishing of the resultant is a necessary equations. We also discuss the implementation of and sufficient condition for the given system to have these algorithms in the context of certain applic~ a non-trivial solution. We call this resultant the Mul- tions. tipolynornial Resultant of the given system of poly- nomial equations. The multipolynomial resultant of the system of polynomial equations can be used for eliminating the variables and computing the numeric solutions of a given system of polynomial equations. Recently the technique of Gr6bner bases has Permission to copy without fee all or part of this material is received much attention as an algorithmic method granted provided that the copies are not made or distributed for for determining properties of polynomial equations direct commercial advantage, the ACM copyright notice and the [Bu85; Bu89]. Its applications include ideal member- title of the publication and its date appear, and notice is given ship besides eliminating a set of variables or comput- that copying is by permission of the Association for Computing ing the numerical solutions of a system of polyno- Machinery. To copy otherwise, or to republish, requires a fee and/or specific permission. 10ther authors have used the term multiequatioual resul- o 1991 ACM 0-89791 -437 -6/91 /0006 /0086 . ..$1 .50 tants [BGW88] 86 mial equations. One of the main difficulties in using smaller” system. The algorithm can be used for inter- Gr6bner bases is that the method may be slow for polating polynomials from their values and expand- even small problems. In the worst case, its running ing symbolic determinants. We also describe an ef- time may can be doubly exponential in the number ficient implementation of the algorithm and present of variables [MM82]. Even in special cases where this its performance for applications like implicitization. doubly exponential behavior is not observed, deriving Moreover, we effectively use resultants for comput- tight upper bounds on the method’s running time is ing the numeric solutions of a system of polynomial difficult. This behavior is also observed in practice. equations in the domain of interest. In this case, For example, it is difficult to implicitize even low de- we reduce the problem to computing eigenvalues of gree parametric surfaces by using Gr6bner bases in a a matrix. Efficient algorithms for computing eigen- reasonable amount of time and space [H090]. Fur- valuea are well known and their implementations are thermore, issues of numerical stability make them available as part of standard packages like EISPACK unattractive for computing numeric solutions of poly- [GV89]. Furthermore, in the context of floating point nomial equations [M090]. computations, the numerical accuracy of these oper- As far as numerical applications are concerned ations is well understood. The rest of the paper is the technique of polynomial continuation has gained organized as follows. In Section 2 we give a brief pre- importance for computing the full list of geometri- view of different formulations used for computing the cally isolated solutions to a system of polynomial result ant of a system of polynomials. In Section 3, equations. They have been used in many robotics and we present an algorithm for eliminating one or more engineering applications [M087; WM90]. Although variables from the given system of equations and ex- continuation methods have a solid theoretical back- press the resultant as a polynomial in the coefficients ground and a high degree of computational reliability of given equations (which maybe symbolic variables) (in some cases), its usage is limited to applications re- and finally in Section 4, we give details of the algo- quiring all the solutions in the complex domain and rithm used for computing the numeric solutions of a thereby making them slow for some practical applica- given system of polynom-ials in the domain of inter- tions where only real solutions are needed. In many est. cases the system of polynomial equations may have a high Bezout number (the total number of solutions in the complex domain), but we are only interested in 2 Multipolynomial Resultants the solutions in a small subset of the real domain (the domain of interest). The continuation technique re- Given n homogeneous polynomial in n unknowns, the quires starting with a particular system of equations resultant of the given system of equations is a poly- having the same Bezout number as the given system nomial in the coefficients of the given equations. The and marching along to compute all the solutions of most familiar form of the resultant is the Sylvester’s the given system. It is difficult to restrict them to formulation for the csse n = 2. In this case, the computing the solutions in the domain of interest. resultant can always be expressed as determinant of Multipolynomiai resultant algorithms provide a matrix. However, a single determinant formula- the most efficient methods (ss far ss asymptotic com- tion may not exist for any arbitrary n and the most plexity is concerned) for solving systems of poly- general formulation of resultant (to the best of our nomial equations or eliminating variables [BG W88]. knowledge) expresses it as a ratio of two determi- Their main advantage lies in the fact that the re- nants [Ma02; Ma21]. Many a times both the de- sultant can always be expressed as the ratio of two terminants evaluate to zero. To compute the resul- determinants and for small values of n (where n is tant we need to perturb the equations and use lim- the number of equations), as the determinant of a iting arguments. This corresponds to computing the single matrix. As a result, we are able to use algo- characteristic polynomials of both the determinants rithms from linear algebra and obtain tight bounds [Ca87]. The ratio of the two characteristic polyno- on the running times of multipolynomial resultant mials is termed the Generalized Characteristic Poly- algorithms. Furthermore, in many symbolic and nu- nomial, and the result ant corresponds to its constant meric applications, we may choose not to expand the term [Ca88]. If the constant term is zero, its low- determinants and use properties of matrices and de- est degree term contains important information and terminants to incorporate the use of resultants in the can be used for computing the proper components in specific applications [MC90; MC91a]. the presence of excess components. This formulation In this paper we present an interpolation based has advantages for both numeric and symbolic ap- algorithm to compute the resultant of a system plications [Ca88; MC90]. Many special cases, corre- of polynomial equations to obtain a “symbolically sponding to n = 2,3, 4,5,6 when the resultant can be 87 expressed aa the determinant of a matrix, are given require a large amount of virtual memory and in [Di08; J089; M025; MC27]. thereby slowing down the computations. 3. These systems use exact arithmetic and repre- sent the coefficients of intermediate expressions 3 Symbolic Elimination as bignums. As a result, the cost of arithmetic operations is quadratic in the coefficient size. In this section we present an algorithm for efficiently The coefficient size is proportional to the degree computing the resultant of a system of polynomial of the intermediate polynomial expressions be- equations, whose coefficients may be symbolic vari- ing generated and tends to grow exponentially ables. Computing the resultant involves construct- with the degree.