Numerical Polynomial Algebra Hans J. Stetter Institute for Applied and numerical Mathematics Vienna University of Technology Vienna, Austria
slam. Society for Industrial and Applied Mathematics Philadelphia
Copyright © 2004 by the Society for Industrial and Applied Mathematics. 109876543 21 All rights reserved. Printed in the United States of America. No part of this book may be reproduced, stored, or transmitted in any manner without the written permission of the publisher. For information, write to the Society for Industrial and Applied Mathematics, 3600 University City Science Center, Philadelphia, PA 19104-2688. MAPLE is a registered trademark of Waterloo Maple Inc. MATLAB is a registered trademark of The MathWorks, Inc. For MATLAB product information, please contact: The MathWorks, Inc., 3 Apple Hill Drive, Natick, MA 01760-2098 USA, 508-647-7000, Fax: 508-647-7101.
[email protected]. www.mathworks.com/ Mathematica is a registered trademark of Wolfram Research, Inc.
Library of Congress Cataloging-in-Publication Data Stetter, Hans J., 1930Numerical polynomial algebra / Hans J. Stetter. p. cm. Includes bibliographical references and index. ISBN 0-89871-557-1 (pbk.) 1. Polynomials. 2. Numerical analysis. I. Title.
QA161.P59S742004
512.9'422-dc22
2004041691
About the cover: The cover art shows the discretized image of the variety of a pseudofactorizable polynomial in three variables; cf. Example 7.13 and Figure 7.5 for the varieties of the pseudofactors.
siam. is a registered trademark.
Contents Preface
XI
Acknowledgments
XV
I
1
Polynomials and Numerical Analysis
1
Polynomials 1.1 Linear Spaces of Polynomials 1.2 Polynomials as Functions 1.3 Rings and Ideals of Polynomials 1.3.1 Polynomial Rings 1.3.2 Polynomial Ideals 1.4 Polynomials and Affine Varieties 1.5 Polynomials in Scientific Computing 1.5.1 Polynomials in Scientific and Industrial Applications . . . .
2
Representations of Polynomial Ideals 2.1 Ideal Bases 2.2 Quotient Rings of Polynomial Ideals 2.2.1 Linear Spaces of Residue Classes and Their Multiplicative Structure 2.2.2 Commuting Families of Matrices 2.3 Dual Spaces of Polynomial Ideals 2.3.1 Dual Vector Spaces 2.3.2 Dual Spaces of Quotient Rings 2.4 The Central Theorem of Polynomial Systems Solving 2.4.1 Basis Transformations in R and D 2.4.2 A Preliminary Version 2.4.3 The General Case 2.5 Normal Sets and Border Bases 2.5.1 Monomial Bases of a Quotient Ring 2.5.2 Border Bases of Polynomial Ideals 2.5.3 Groebner Bases
v
3
4 7 12 12 13 16 20 21
25 25 29 29 36 39 39 42 46 46 49 50 54 54 58 60
vi
Contents 2.5.4
Polynomial Interpolation
61
3
Polynomials with Coefficients of Limited Accuracy 3.1 Data of Limited Accuracy 3.1.1 Empirical Data 3.1.2 Empirical Polynomials 3.1.3 Valid Approximate Results 3.2 Estimation of the Result Indetermination 3.2.1 Well-Posed and Ill-Posed Problems 3.2.2 Condition of an Empirical Algebraic Problem 3.2.3 Linearized Estimation of the Result Indetermination 3.3 Backward Error of Approximate Results 3.3.1 Determination of the Backward Error 3.3.2 Transformations of an Empirical Polynomial 3.4 Refinement of Approximate Results
67 67 67 71 73 76 76 79 84 86 88 92 95
4
Approximate Numerical Computation 4.1 Solution Algorithms for Numerical Algebraic Problems 4.2 Numerical Stability of Computational Algorithms 4.2.1 Generation and Propagation of Computational Errors 4.2.2 Numerical Stability 4.2.3 Causes for Numerical Instability 4.3 Floating-Point Arithmetic 4.3.1 Floating-Point Numbers 4.3.2 Arithmetic with Floating-Point Numbers 4.3.3 Floating-Point Errors 4.3.4 Local Use of Higher Precision 4.4 Use of Intervals 4.4.1 Interval Arithmetic 4.4.2 Validation Within Intervals 4.4.3 Interval Mathematics and Scientific Computing
101 101 105 105 108 110 113 114 115 118 120 123 123 125 128
n 5
Univariate Polynomial Problems
133
Univariate Polynomials 135 5.1 Intrinsic Polynomials 135 5.1.1 Some Analytic Properties 135 5.1.2 Spaces of Polynomials 137 5.1.3 Some Algebraic Properties 140 5.1.4 The Multiplicative Structure 143 5.1.5 Numerical Determination of Zeros of Intrinsic Polynomials . 146 5.2 Zeros of Empirical Univariate Polynomials 148 5.2.1 Backward Error of Polynomial Zeros 149 5.2.2 Pseudozero Domains for Univariate Polynomials 152 5.2.3 Zeros with Large Modulus 154
Contents
vii
5.3
Polynomial Division 157 5.3.1 Sensitivity Analysis of Polynomial Division 157 5.3.2 Division of Empirical Polynomials 160 Polynomial Interpolation 163 5.4.1 Classical Representations of Interpolation Polynomials . ... 163 5.4.2 Sensitivity Analysis of Univariate Polynomial Interpolation . 166 5.4.3 Interpolation Polynomials for Empirical Data 168
5.4
6
m 7
Various Tasks with Empirical Univariate Polynomials 173 6.1 Algebraic Predicates 173 6.1.1 Algebraic Predicates for Empirical Data 173 6.1.2 Real Polynomials with Real Zeros 178 6.1.3 Stable Polynomials 180 6.2 Divisors of Empirical Polynomials 183 6.2.1 Divisors and Zeros 183 6.2.2 Sylvester Matrices 185 6.2.3 Refinement of an Approximate Factorization 188 6.2.4 Multiples of Empirical Polynomials 192 6.3 Multiple Zeros and Zero Clusters 194 6.3.1 Intuitive Approach 194 6.3.2 Zero Clusters of Empirical Polynomials 196 6.3.3 Cluster Polynomials 198 6.3.4 Multiple Zeros of Empirical Polynomials 202 6.3.5 Zero Clusters about Infinity 204 6.4 Greatest Common Divisors 206 6.4.1 Intrinsic Polynomial Systems in One Variable 206 6.4.2 Empirical Polynomial Systems in One Variable 211 6.4.3 Algorithmic Determination of Approximate Common Divisors 214 6.4.4 Refinement of Approximate Common Zeros and Divisors . . 218 6.4.5 Example 219 Multivariate Polynomial Problems
225
One Multivariate Polynomial 229 7.1 Analytic Aspects 229 7.1.1 Intuitional Difficulties with Real and Complex Data 229 7.1.2 Taylor Approximations 230 7.1.3 Nearest Points on a Manifold 233 7.2 Empirical Multivariate Polynomials 237 7.2.1 Valid Results for Empirical Polynomials 237 7.2.2 Pseudozero Sets of Empirical Multivariate Polynomials . . . 240 7.2.3 Condition of Zero Manifolds . 242 7.3 Singular Points on Algebraic Manifolds 246 7.3.1 Singular Zeros of Empirical Polynomials 246
viii
Contents
7.4
7.3.2 Determination of Singular Zeros 7.3.3 Manifold Structure at a Singular Point Numerical Factorization of a Multivariate Polynomial 7.4.1 Analysis of the Problem 7.4.2 An Algorithmic Approach 7.4.3 Algorithmic Details 7.4.4 Condition of a Multivariate Factorization
249 251 254 254 258 261 266
8
Zero-Dimensional Systems of Multivariate Polynomials 8.1 Quotient Rings and Border Bases of 0-Dimensional Ideals 8.1.1 The Quotient Ring of a Specified Dual Space 8.1.2 The Ideal Generated by a Normal Set Ring 8.1.3 Quasi-Univariate Normal Sets 8.2 Normal Set Representations of 0-Dimensional Ideals 8.2.1 Computation of Normal Forms and Border Basis Expansions 8.2.2 The Syzygies of a Border Basis 8.2.3 Admissible Data for a Normal Set Representation 8.3 Regular Systems of Polynomials 8.3.1 Complete Intersections 8.3.2 Continuity of Polynomial Zeros 8.3.3 Expansion by a Complete Intersection System 8.3.4 Number of Zeros of a Complete Intersection System 8.4 Groebner Bases 8.4.1 Term Order and Order-Based Reduction 8.4.2 Groebner Bases 8.4.3 Direct Characterization of Reduced Groebner Bases 8.4.4 Discontinuous Dependence of Groebner Bases on P 8.5 Multiple Zeros of Intrinsic Polynomial Systems 8.5.1 Dual Space of a Multiple Zero 8.5.2 Normal Set Representation for a Multiple Zero 8.5.3 From Multiplication Matrices to Dual Space
9
Systems of Empirical Multivariate Polynomials 343 9.1 Regular Systems of Empirical Polynomials 344 9.1.1 Backward Error of Polynomial Zeros 344 9.1.2 Pseudozero Domains for Multivariate Empirical Systems . . 347 9.1.3 Feasible Normal Sets for Regular Empirical Systems 349 9.1.4 Sets of Ideals of System Neighborhoods 350 9.2 Approximate Representations of Polynomial Ideals 355 9.2.1 Approximate Normal Set Representations 355 9.2.2 Refinement of an Approximate Normal Set Representation . . 358 9.2.3 Refinement Towards the Exact Representation 363 9.3 Multiple Zeros and Zero Clusters 366 9.3.1 Approximate Dual Space for a Zero Cluster 367 9.3.2 Further Refinement 371 9.3.3 Clusterldeals 373
273 274 274 278 282 286 286 290 295 300 300 304 306 309 314 314 317 321 323 328 328 334 335
Contents
9.4
9.5 9.6
10
ix 9.3.4 Asymptotic Analysis of Zero Clusters Singular Systems of Empirical Polynomials 9.4.1 Singular Systems of Linear Polynomials 9.4.2 Singular Polynomial Systems; Simple d-Points 9.4.3 A Nontrivial Example 9.4.4 Multiple d-Points Singular Polynomial Systems with Diverging Zeros 9.5.1 Inconsistent Linear Systems 9.5.2 BKK-Deficient Polynomial Systems Multivariate Interpolation 9.6.1 Principal Approach 9.6.2 Special Situations 9.6.3 Smoothing Interpolation
376 381 382 386 391 394 398 398 400 404 404 406 407
Numerical Basis Computation 411 10.1 Algorithmic Computation of Groebner Bases 411 10.1.1 Principles of Groebner Basis Algorithms 411 10.1.2 Avoiding Ill-Conditioned Representations 414 10.1.3 Groebner Basis Computation for Floating-Point Systems . . . 416 10.2 Algorithmic Computation of Normal Set Representations 417 10.2.1 An Intuitive Approach 418 10.2.2 Determination of a Normal Set for a Complete Intersection . 421 10.2.3 Basis Computation with Specified Normal Set 423 10.3 Numerical Aspects of Basis Computation 429 10.3.1 Two Fundamental Difficulties 429 10.3.2 Pivoting 431 10.3.3 Basis Computation with Empirical Data 433 10.3.4 A Numerical Example 434
IV Positive-Dimensional Polynomial Systems
443
11
447 447
Matrix Eigenproblems for Positive-Dimensional Systems 11.1 Multiplicative Structure of co-Dimensional Quotient Rings 11.1.1 Quotient Rings and Normal Sets of Positive-Dimensional Ideals 11.1.2 Finite Sections of Infinite Multiplication Matrices 11.1.3 Extension of the Central Theorem 11.2 Singular Matrix Eigenproblems 11.2.1 The Solution Space of a Singular Matrix Eigenproblem . . 11.2.2 Algorithmic Determination of Parametric Eigensolutions . . 11.2.3 Algorithmic Determination of Regular Eigensolutions . . . . 11.3 Zero Sets from Finite Multiplication Matrices 11.3.1 One-Dimensional Zero Sets 11.3.2 Multi-Dimensional Zero Sets 11.3.3 Direct Computation of Two-Dimensional Eigensolutions . .
447 449 451 452 . 452 . 454 456 457 457 460 . 460
x
Contents
11.4
Index
A Quasi-0-Dimensional Approach 11.4.1 Quotient Rings with Parameters 11.4.2 A Modified Approach
462 463 464 467
Preface "Numerical Polynomial Algebra" is not a standard designation of a mathematical discipline; therefore, I should start by explaining the title of this book. Historically, in the growth of computational mathematics, which occurred in parallel with the breath-taking explosion in the performance of computational machinery, all areas of mathematics which play a role in the modelling and analysis of real world phenomena developed their branch of Numerical Analysis: Linear Algebra, Differential Equations, Approximation, Optimization, etc. The collective term Numerical Analysis turned out to be appropriate: The fact that data and relations from the real world inevitably have a limited accuracy make it necessary to embed the computational tasks into metric spaces: Few parts of computational scientific computing can proceed without approximations and without the analytic background (like norms, for example) to deal with the inherent indeterminations. Numerical Linear Algebra is the best-known example: It originated from an embedding of the constructive parts of classical linear algebra into linear functional analysis, and its growth into one of the supporting pillars of scientific computing was driven by the use of analytic tools like mappings, norms, convergent iteration, etc. Empirical data could easily be fitted into this conceptual frame so that the approximate solution of approximate linear problems with approximate data could be conceived and implemented. One area of mathematics did not follow that trend: classical nonlinear algebra. It had undergone a remarkable algorithmic development in the late 19th century; then the axiomatic age had turned it into an abstract discipline. When the symbol manipulation capabilities of electronic computers became evident, a faction of algebraists remembered the algorithmic aspects of their field and developed them into "Computer Algebra," as a computational tool for the solution of constructive problems in pure mathematics. They have designed and implemented algorithms which delight the algebraic community; but at the same time, this enterprise has somehow prevented the growth of a numerical nonlinear algebra. The inadequacy of this mathematically interesting project for realistic problems is exposed when the solution of a system of linear equations with numerical coefficients is obtained in the form of fractions of integers with hundreds of digits. But nonlinear algebraic tasks do exist in scientific computing: Multivariate polynomials are a natural modelling tool. This creates multivariate systems of polynomial equations, multivariate interpolation problems, decomposition problems (factorization) etc.; the modelling of nontrivial geometric constellations alone generates a multitude of nonlinear algebraic problems. These computational tasks from the real world possess (some) data with limited accuracy and there are no exact solutions; thus, they are generally not accessible by the sophisticated exact xi
xii
Preface
tools which Computer Algebra has provided. At the same time, they often require a global structural analysis of the situation and cannot satisfactorily be solved with general-purpose tools of Numerical Analysis. (The computation of the zeros of one univariate polynomial became an exception: Here, algebra and numerical analysis joined ranks to develop efficient and reliable black-box software for the—necessarily approximate—solution of this task.) Thus, in the late 20th century, a no man's land between computer algebra and numerical analysis had remained on the landscape of scientific computing which invited discovery and cultivation for general usage. But—most surprisingly—this challenge of pioneering a "numerical nonlinear algebra" remained practically unnoticed by the many young mathematicians hungry for success, even by those working in the immediate neighborhood of the glaring white spot. When I accepted that challenge more than 10 years ago and tried to recruit help for my expeditions, my soliciting was met with little resonance. On these expeditions, I have met stimulating mathematical adventures all along the way and interesting unsolved problems wherever I proceeded. Many of these problems are still waiting for their efficient solution. From the beginning, in stepping into this virgin territory, I found it more important to set up directions and road posts than to investigate and plot small areas meticulously. I believe that I have now gained an overview of large parts of that territory and I wish to communicate my findings in printed form, beyond my many lectures at conferences and seminars over the past years. This has been the motive for writing this book. The more restrictive title "Numerical Polynomial Algebra" (instead of the original "Numerical Nonlinear Algebra") expresses the fact that there remain interesting and computationally important areas in nonlinear algebra which I have not even touched. A number of principles have guided the composition of this text: The most prominent one is continuity: Throughout, all data are from C or R so that all quantities and relations are automatically embedded into analysis, as in Numerical Linear Algebra. Derivatives of maps are widely used, not just formally but also quantitatively. This permits an analysis of the sensitivity of results to small changes in the data of a problem ("condition"). Continuity is the indispensable basis for the use of floating-point computation— or any other approximate computation. Concepts which are inherently discontinuous (like g.c.d., radical, etc.) must be reinterpreted or abandoned. Continuitiy is also a prerequisite for the consideration of data with limited accuracy which we systematically assume throughout the text, with a concept of families of neighborhoods as a formal basis. Correctness of a result is replaced by its validity, conceived as a continuous property represented by a numerical value not as a discrete property (yes-no): A result is valid if it is the exact result of nearby data, which is established by a backward error analysis. For multicomponent quantities, we use weighted maximum norms throughout; but a weighted 2-norm would do just as well. The interpretation of algebraic relations as continuous maps permits the systematic use of iterative refinement as an algorithmic tool. Crude initial results may be refined into sufficiently valid ones by the use of local linearization, a standard tool throughout analysis. Within polynomial algebra proper, I have tried to employ the quotient ring aspect of ideals wherever possible. The vector space structure of quotient rings and the linear mapping structure of multiplication permit an ample use of concepts and algorithms from (numerical) linear algebra. The determination of all zeros of a polynomial system from the eigenvectors of
Preface
xiii
the multiplication matrices of the associated quotient ring is the most prominent example. I have widely used standard linear algebra notations. The systematic use of row vectors for coefficients and of column vectors for bases has proved very helpful; within monomial basis vectors, components are always arranged by increasing degree or term order. These conventions may lead to linear systems bTA = cT for row vectors and elimination from right to left, which is somewhat nonstandard, but the internal consistency of this notational principle has been an ample reward. Another guiding principle has been to write a textbook rather than a monograph. For a novel area of practical importance—which numerical polynomial algebra is in many ways—it is crucial that students are given the opportunity to absorb its principles. I hope that this book may be used as a text for relevant courses in Mathematics and Computer Science and to help students get acquainted with the numerical solution of quantitative problems in commutative algebra. I have included "Exercises" with all sections of the book; as usual, they are meant to challenge the reader's understanding by confronting him/her with numerical and theoretical problems. Also, most of the numerical examples in the text are not only demonstrations for the relevance of formal results but an invitation for a replication of the indicated computation. The textbook approach has also kept me from including references to technical papers within the text. Instead, I have added "Historical and Bibliographical Notes" at the end of each chapter which put the material into perspective and point to contributors of its development. The dual nature of the subject area as a part of numerical analysis as well as of polynomial algebra requires that the text be attractive and readable for students and scientists from both fields. As I know from my own experience, a standard numerical analyst knows few concepts and results from commutative algebra, and a standard algebraist has a natural aversion to approximate data and approximate computation which appear as foreign elements in his/her world. Therefore, I have seen it necessary to include low level introductory sections on matters of numerical analysis as well as of polynomial algebra, and I have tried to refrain from highly technical language in either subject area. Thus, a reader well versed in one of the areas must find some passages trivial or naive, but I consider this less harmful than assuming a technical knowledge which part of the intended readership does not possess. Beyond students and colleagues from numerical analysis and computer algebra, the intended readership comprises experts from various areas in scientific computing. Polynomial algebra provides specialized and effective tools for many of their tasks, in particular for tasks with strong geometric aspects. They may be interested to see how many nontrivial algebraic problems can be solved efficiently in a meaningful way for data with limited accuracy. Altogether, I hope that this book may arouse general interest in a neglected area of computational mathematics where—for a while at least—interesting research projects abound and publishable results lurk behind every corner. This should make the area particularly attractive for scientists in the beginning phases of their careers. For me personally, my encounter with numerical polynomial algebra has become a crucial event in my scientific life. It happened at a time when, with my advancing age, my interest in mathematical research had begun to decrease. In particular, I had lost interest in highly technical investigations as they are indispensable in any advanced scientific field. At that point, through some coincidences, I became aware of the fact that many fundamental aspects of the numerical treatment of nonlinear algebraic problems had hardly been touched. In my 60s, I began to learn the basics of commutative algebra and to apply my lifelong experience in numerical analysis to
xiv
Preface
it—and my fascination grew with every new insight. This late love affair of my scientific life has gained me 10 or more years of intense intellectual activity for which I can only be grateful. The result is this book, and—like a late lover—I must ask forgiveness for some foolish ideas in it which may irritate my younger and more meticulous colleagues. This book also marks the end of my active scientific research. I have decided that I will devote my few or many remaining years to other activities which I have delayed long enough. If my mind should, for a short while, continue to tempt me with mathematical ideas and problems, I will simply put them on my homepage for others to exploit. I also owe it to my dear wife Christine who has so often patiently acknowledged the priority of science in our 44 years of married life that this state does not continue to the very end. Without her continuing love and support, this last mark of my scientific life would not have come into existence.
Vienna, July 2003
Hans J. Stetter
Acknowledgments Fifteen years ago, when I began to get interested in the numerical solving of polynomial systems, my knowledge of commutative algebra was nil. I could not have gained even modest insight into polynomial algebra represented in this book without the advice and help of many colleagues much more knowledgeable in the area; implicitly or explicitly, they have contributed a great deal to my work. I wish to express my gratitude to my early road companion H. M. Moeller; B. Buchberger, H. Hong, J. Schicho, F. Winkler at RISC; my friends at ORCCA, R. Corless, K. Geddes, M. Giesbrecht, D. Jeffrey, I. Kotsireas, G. Labahn, G. Reid, S. Watt, and a number of people at Waterloo Maple Inc.; my friends and collaborators in China, Huang Y. Zh., Wu W. D., Wu W. Ts., Zhi L. H.; in the USA, B. Caviness, G. Collins, D. Cox, G. Hoffmann, E. Kaltofen, Y. N. Lakshman, T. Y. Li, D. Manocha, V. Pan, S. Steinberg, M. Sweedler, B. Trager, J. Verschelde; in Japan, H. Kobayashi, M. T. Noda, T. Sasaki, K. Shirayanagi; in France, J.-Ch. Faugere, I. Emiris (now back in Greece), D. Lazard, B. Mourrain, M.-F. Roy; in Italy, D. Bini, P. M. Gianni, M. G. Marinari, T. Mora, L. Robbiano, C. Traverso; in Spain, L. Gonzdles-Vega, T. Recio; in Germany, J. Apel, J. Calmet, K. Gatermann, J.v.z. Gathen, T. Sauer, F. Schwarz, W. Seiler, V. Weispfenning; in Russia, V. Gerdt; my students J. Haunschmied, V. Hribernig, A. Kondratyev, G. Thallinger; and the numerous other colleagues all over the world who have discussed matters of polynomial algebra with me on various occasions.
xv
This page intentionally left blank
Parti
Polynomials and Numerical Analysis
This page intentionally left blank
Chapter 1
Polynomials
In their use as modelling tools in Scientific Computing, polynomials appear, at first, simply as a special class of functions from the Cs to C (or Rs to R). Such polynomials are automatically objects of univariate (s = 1) or multivariate (s > 1) analysis over the complex or real numbers. For linear polynomials, this fact has played virtually no role in classical linear algebra; but it has become a fundamental aspect of today's numerical linear algebra where concepts from analysis (norms, neighborhoods, convergence, etc.) and related results are widely used in the design and analysis of computational algorithms. In an analogous manner, the consideration of polynomial algebra as a part of analysis plays a fundamental role in numerical polynomial algebra', it will be widely used throughout this book. In particular, this embedding of algebra into analysis permits the extension of algebraic algorithms to polynomials with coefficients of limited accuracy; cf. Chapter 3. On the other hand, certain sets of polynomials have special algebraic structures: they may be linear spaces, rings, ideals, etc. Algebraic properties related to these structures may play a crucial role in solving computational tasks involving polynomials, e.g., for finding zeros of polynomial systems; cf. Chapter 2. In this introductory chapter, we consider various aspects of polynomials which will play a fundamental role in our later investigations. The following notations will generally be used (but without strict adherence): scalars and coefficients e C or R: lower-case Greek letters a, f3, y,... elements (points) e Cs or Rs : lower-case Greek letters £ , ? / , £ , . . . vectors of coefficients etc. : lower-case Latin letters a,b,c,... 5-dim. variables (indeterminates): lower-case Latin letters x, y, z,... polynomials : lower-case Latin letters p,q,... systems of polynomials : upper-case Latin letters P, Q,...
3
Chapter 1. Polynomials
4
1.1
Linear Spaces of Polynomials
Definition 1.1. A monomial in the s variables x\,..., xs is the power product
j is the exponent and \j\ := ^CT=i J° tne degree of the monomial x}. The set of all monomials in s variables will be denoted by Ts, independently of the notation for the variables. Tj C Ts is the set of monomials in s variables of degree < d. For example, x2y?>z is a monomial of degree 6 in T3 and hence contained in T% for d > 6. Note that each monomial set Td contains the monomial 1 = x° = JC(Q'-'0). Proposition 1.1. Td contains (d~^s) monomials; (d+sd~~1) of these have exact degreed. Proof: The proposition follows from fundamental formulas in combinatorics. Obviously, the number of different monomials grows rapidly with the number of variables s and the degree d. For example, there are 126 monomials of degree < 5 in 4 variables, and 3003 monomials of degree < 8 in 6 variables. This rapid growth is a major reason for the high computational complexity of many polynomial algorithms. Definition 1.2. A complex (real) polynomial1 in s variables is a finite linear combination of monomials from Ts with coefficients from C or R, resp.:
The set J C Ns0 which contains the exponents of those monomials which are present in the polynomial p (i.e. which have a nonvanishing coefficient) is the support of p; deg(/?) := max;6y 17'| is the (total) degree of p. The summands of a polynomial are called terms. The exponent and the degree of a term are those of the associated monomial, Definition 13. A polynomial p with a support J such that \j\ = deg(p) for each j e J is called homogeneous. n The following is a polynomial of total degree 4 in the 3 variables jc, y, z:
The terms of degree 4 form a homogeneous polynomial of total degree 4 :
Definition 1.4. The set of all complex (real) polynomials in s variables will be denoted by Psc of PK resp., independently of the notation for the variables. When the coefficient domain is evident, the notation Ps will be used. Pd c Ps will denote the set of polynomials in s variables of total degree < d. Obviously, Psd is a linear space (vector space) over C or R, resp., of dimension (d^) (cf. Proposition 1.1); addition and multiplication by a scalar are defined in the natural way. A 'Throughout this book, only such polynomials are considered; cf. the preface.
1.1. Linear Spaces of Polynomials
5_
generic basis in Psd is furnished by the monomials of Tj arranged in some linear order. With respect to such a basis, the coefficients of a polynomial p are the components of p as an element of the linear space, i.e. p is represented by the vector of its coefficients (ordered appropriately). The zero element 0 is the zero polynomial with ctj = 0 for all j. Vector space computations in Psd (i.e. addition and multiplication by a scalar) are thus reduced to the analogous computations with the coefficient vectors, as in any linear space. However, polynomials may also be multiplied—and multiplication generally results in a polynomial of higher degree which is outside the linear space of the factor polynomials; cf. section 1.3. Therefore, the vector space notation for polynomials can only be used within specified contexts. On the other hand, because of its simplicity, it shouldbe used in computations with polynomials wherever it is feasible. Another reason for a potential inadequacy of vector space notation in dealing with polynomials is the fact that the cardinality | J\ of the support J of a polynomial may be very small relative to the magnitude of the associated basis Tj so that almost all components are 0. Such polynomials are called sparse in analogy to the use of this word in linear algebra. Multivariate polynomials which appear in scientific computing are generally sparse. Fortunately, we will often have to deal with linear spaces 72. of polynomials from some Ps with a fixed uniform support J so that a fixed monomial basis {*', j e J} can be used. Moreover, in these spaces 7£, multiplication of the element polynomials is defined in a way that it does not lead out of 7£; hence in spite of their fixed dimensions |J|, they are commutative rings, so-called quotient rings. We will formally introduce and discuss these objects in section 2.2 and later use them a great deal. In numerical polynomial algebra, a good deal of the algorithmic manipulations of polynomials are linear operations', in this context, we will widely employ the standard notations of numerical linear algebra. To facilitate this practice, we will generally collect the coefficients of a polynomial into a row vector a7 = (... a/...) and its monomials into a column vector x = (...*•>...) r . Then
The use of row vectors for coefficients agrees with the common notation aT\ for linear polynomials in linear algebra; therefore it is the natural choice. It implies, however, that a linear system for the computation of a coefficient vector aT appears in the form aT A = bT. For the sake of a systematic notation (which greatly assists the human intuitive and associative powers), we will not transpose such systems during formal manipulations. Example 1.1: The monomial vector for polynomials from P\ (univariate polynomials of maximal degree d) is x := (1, x,..., xd)T. A shift of the origin to £ € R requires a rewriting to the
6
Chapter 1. Polynomials
basis vector
the corresponding rewriting of a polynomial p is simply achieved:
Naturally, we may freely use bases other than monomial for linear spaces of polynomials if it is advantageous for the understanding of a situation or for the design and analysis of computational algorithms. For example, we may wish to have a basis which is orthogonal w.r.t. some special scalar product, or which has other desirable properties. Polynomials, in particular multivariate ones, often occur in sets or systems. We denote systems of polynomials by capital letters; e.g.,
Notationally and operationally, such systems will often be treated as vectors of polynomials:
It is true that this notation implies an order of the polynomials in the system which has originally not been there. But such an (arbitrary) order is also generated by the assignment of subscripts and generally without harm.
Exercises 1. (a) Consider the linear space T\ (cf. Definition 1.4). What is its dimension? Introduce a monomial basis; consider reasons for choosing various orders for the basis monomials xj in the basis vector x. (b) Differentiation w.r.t. x\ and X2, resp., are linear operations in P%. For a fixed basis vector x, which matrices D\,Di represent differentiation so that -j^ x = D, x, i = 1,2. Which matrix represents dxa*3x2 ? How can you tell from the £>,- that all derivatives of an order greater than 4 vanish for p e "P|? (c) With p(x} = aT\, show that the coefficient vector of -j^ p(x} is aTD{. Check that D\Di = D^D\. Explain why the commutatitivity is necessary and sufficient to make the notation q(Di, D 2 ), with q e P2, meaningful. What is the coefficient vector of