
1 Polynomials in One Variable The study of systems of polynomial equations in many variables requires a good understanding of what can be said about one polynomial equation in one variable. The purpose of this lecture is to provide some basic tools on this matter. We shall consider the problem of how to compute and how to represent the zeros of a general polynomial of degree d in one variable x: d d1 2 p(x)=adx+ad1x−+ +a2x +a1x+a0. (1) − ··· 1.1 The Fundamental Theorem of Algebra We begin by assuming that the coefficients ai lie in the field É of rational numbers, with ad = 0, where the variable x ranges over the field C of complex 6 numbers. Our starting point is the fact that C is algebraically closed. Theorem 1. (Fundamental Theorem of Algebra) The polynomial p(x) has d roots, counting multiplicities, in the field C of complex numbers. If the degree d is four or less, then the roots are functions of the coefficients which can be expressed in terms of radicals. The command solve in maple will produce these familiar expressions for us: > solve(a2 * x^2 + a1 * x + a0, x ); 2 1/2 2 1/2 -a1 + (a1 - 4 a2 a0) -a1 - (a1 - 4 a2 a0) 1/2 ------------------------, 1/2 ------------------------ a2 a2 > lprint( solve(a3 * x^3 + a2 * x^2 + a1 * x + a0, x )[1] ); 1/6/a3*(36*a1*a2*a3-108*a0*a3^2-8*a2^3+12*3^(1/2)*(4*a1^3*a3 -a1^2*a2^2-18*a1*a2*a3*a0+27*a0^2*a3^2+4*a0*a2^3)^(1/2)*a3) ^(1/3)+2/3*(-3*a1*a3+a2^2)/a3/(36*a1*a2*a3-108*a0*a3^2-8*a2^3 +12*3^(1/2)*(4*a1^3*a3-a1^2*a2^2-18*a1*a2*a3*a0+27*a0^2*a3^2 +4*a0*a2^3)^(1/2)*a3)^(1/3)-1/3*a2/a3 1 The polynomial p(x) has d distinct roots if and only if its discriminant is nonzero. Can you spot the discriminant of the cubic equation in the previous maple output ? In general, the discriminant is computed from the resultant of p(x) and its first derivative p0(x) as follows: 1 discrx(p(x)) = resx(p(x),p0(x)). ad · This is an irreducible polynomial in the coefficients a0,a1,...,ad. It follows from Sylvester’s matrix for the resultant that the discriminant is a homoge- neous polynomial of degree 2d 2. Here is the discriminant of a quartic: − > f := a4 * x^4 + a3 * x^3 + a2 * x^2 + a1 * x + a0 : > lprint(resultant(f,diff(f,x),x)/a4); -192*a4^2*a0^2*a3*a1-6*a4*a0*a3^2*a1^2+144*a4*a0^2*a2*a3^2 +144*a4^2*a0*a2*a1^2+18*a4*a3*a1^3*a2+a2^2*a3^2*a1^2 -4*a2^3*a3^2*a0+256*a4^3*a0^3-27*a4^2*a1^4-128*a4^2*a0^2*a2^2 -4*a3^3*a1^3+16*a4*a2^4*a0-4*a4*a2^3*a1^2-27*a3^4*a0^2 -80*a4*a3*a1*a2^2*a0+18*a3^3*a1*a2*a0 This sextic is the determinant of the following 7 7-matrix divided by a4: × > with(linalg): > sylvester(f,diff(f,x),x); [a4a3a2a1a000] [] [ 0 a4 a3 a2 a1 a0 0 ] [] [00 a4a3a2a1a0] [] [4 a4 3 a3 2 a2 a1 0 0 0 ] [] [0 4a4 3a3 2a2 a1 0 0] [] [ 0 0 4 a4 3 a3 2 a2 a1 0 ] [] [0 0 0 4a4 3a3 2a2 a1] 2 Galois theory tells us that there is no general formula which expresses the roots of p(x) in radicals if d 5. For specific instances with d not too ≥ big, say d 10, it is possible to compute the Galois group of p(x) over É . Occasionally,≤ one is lucky and the Galois group is solvable, in which case maple has a chance of finding the solution of p(x) = 0 in terms of radicals. > f := x^6 + 3*x^5 + 6*x^4 + 7*x^3 + 5*x^2 + 2*x+1: > galois(f); "6T11", {"[2^3]S(3)", "2 wr S(3)", "2S_4(6)"}, "-", 48, {"(2 4 6)(1 3 5)", "(1 5)(2 4)", "(3 6)"} > solve(f,x)[1]; 1/2 1/3 1/12 (-6 (108 + 12 69 ) 1/2 2/3 1/2 1/2 1/3 1/2 + 6 I (3 (108 + 12 69 ) + 8 69 + 8 (108 + 12 69 ) ) ) / 1/2 1/3 +72) / (108+1269 ) / The number 48 is the order of the Galois group and its name is "6T11".Of course, the user now has to consult help(galois) in order to learn more. 1.2 Numerical Root Finding In symbolic computation, we frequently consider a polynomial problem as solved if it has been reduced to finding the roots of one polynomial in one variable. Naturally, the latter problem can still be a very interesting and challenging one from the perspective of numerical analysis, especially if d gets very large or if the ai are given by floating point approximations. In the problems studied in this course, however, the ai are usually exact rational numbers and the degree d rarely exceeds 200. For numerical solving in this range, maple does reasonably well and matlab has no difficulty whatsoever. 3 > Digits := 6: > f := x^200 - x^157 + 8 * x^101 - 23 * x^61 + 1: > fsolve(f,x); .950624, 1.01796 This polynomial has only two real roots. To list the complex roots, we say: > fsolve(f,x,complex); -1.02820-.0686972 I, -1.02820+.0686972 I, -1.01767-.0190398 I, -1.01767+.0190398 I, -1.01745-.118366 I, -1.01745 + .118366 I, -1.00698-.204423 I, -1.00698+.204423 I, -1.00028 - .160348 I, -1.00028+.160348 I, -.996734-.252681 I, -.996734 + .252681 I, -.970912-.299748 I, -.970912+.299748 I, -.964269 - .336097 I, ETC...ETC.. Our polynomial p(x) is represented in matlab as the row vector of its coefficients [ad ad 1 ... a2 a1 a0]. For instance, the following two commands compute the three− roots of the dense cubic p(x)=31x3+23x2 +19x+ 11. >> p = [31 23 19 11]; >> roots(p) ans = -0.0486 + 0.7402i -0.0486 - 0.7402i -0.6448 Representing the sparse polynomial p(x)=x200 x157 +8x101 23x61 +1 considered above requires introducing lots of zero− coefficients: − >> p=[1 zeros(1,42) -1 zeros(1,55) 8 zeros(1,39) -23 zeros(1,60) 1] >> roots(p) ans = -1.0282 + 0.0687i -1.0282 - 0.0687i -1.0177 + 0.0190i -1.0177 - 0.0190i -1.0174 + 0.1184i -1.0174 - 0.1184i ETC...ETC.. 4 We note that convenient facilities are available for calling matlab inside of maple and for calling maple inside of matlab. We wish to encourage our readers to experiment with the passage of data between these two programs. Some numerical methods for solving a univariate polynomial equation p(x) = 0 work by reducing this problem to computing the eigenvalues of the companion matrix of p(x), which is defined as follows. Consider the quotient ring V = É [x]/ p(x) modulo the ideal generated by the polynomial p(x). h i The ring V is a d-dimensional É -vector space. Multiplication by the variable x defines a linear map from this vector space to itself. Timesx : V V,f(x) x f(x). (2) → 7→ · The companion matrix is the d d-matrix which represents the endomorphism × 2 d 1 Timesx with respect to the distinguished monomial basis 1,x,x ,...,x − of V . Explicitly, the companion matrix of p(x) looks like{ this: } 00 0 a /ad ··· − 0 10 0 a /ad ··· − 1 Times = 01 0 a2/ad (3) x ··· − . .. . 00... 1 ad 1/ad − − Proposition 2. The zeros of p(x) are the eigenvalues of the matrix Timesx. C Proof. Suppose that f(x) is a polynomial in C [x] whose image in V = ⊗ C [x]/ p(x) is an eigenvector of (2) with eigenvalue λ. Then x f(x)= λ f(hx) ini the quotient ring, which means that (x λ) f(x) is a· multiple of·p(x). Since f(x) is not a multiple of p(x), we conclude− · that λ isaroot of p(x) as desired. Conversely, if µ any root of p(x) then the polynomial f(x)=p(x)/(x µ) represents an eigenvector of (2) with eigenvalue µ. − Corollary 3. The following statements about p(x) É [x] are equivalent: ∈ The polynomial p(x) is square-free, i.e., it has no multiple roots in C . • The companion matrix Timesx is diagonalizable. • The ideal p(x) is a radical ideal in É [x]. • h i 5 We note that the set of multiple roots of p(x) can be computed symboli- cally by forming greatest common divisor of p(x) and its derivative: q(x) = gcd(p(x),p0(x)) (4) Thus the three conditions in the Corollary are equivalent to q(x)=1.In general, we compute the radical of any ideal in É [x] as follows: Rad p(x) = p(x)/q(x) (5) h i h i 1.3 Real Roots In this subsection we describe symbolic methods for computing information about the real roots of a univariate polynomial p(x). In what follows, we assume that p(x) is a squarefree polynomial. It is easy to achieve this by removing all multiplicities as in (4) and (5).
Details
-
File Typepdf
-
Upload Time-
-
Content LanguagesEnglish
-
Upload UserAnonymous/Not logged-in
-
File Pages57 Page
-
File Size-