The Weak and Strong Stability of Algorithms in Numerical Linear Algebra*
Total Page:16
File Type:pdf, Size:1020Kb
View metadata, citation and similar papers at core.ac.uk brought to you by CORE provided by Elsevier - Publisher Connector The Weak and Strong Stability of Algorithms in Numerical Linear Algebra* James R. Bunch Department of Mathematics University of Califmia, San Diego La Jolla, California In memory of James H. Wilkinson Submittedby I. Duff ABSTRACT The stability of algorithms in numerical linear algebra is discussed. The concept of stability is extended to notions of weak stability and strong stability. Justifications are given for these extensions, and the implications of error analyses in terms of these definitions are discussed. The concept of weak stability helps to clarify some of the controversy which has arisen concerning the stability of algorithms for Toeplitz systems. 1. INTRODUCTION The concepts of stability of an algorithm, condition of a matrix, and backward error analysis are intimately connected to the works of James H. Wilkinson, e.g., in [ 17, 18, 191. Th ese concepts of conditioning, stability, and backward error analysis are briefly reviewed in Sections 2, 3, and 4, respec- tively. In Sections 5 and 6 the concept of stability is extended to include the concepts of weak and strong stability. The need for such definitions is discussed, and examples are given. In Section 7 the stability, strong stability, and weak stability of algorithms for solving Toeplitz systems are discussed. These new concepts should clarify some of the confusion concerning the *Support for this work was providedby NSF Grant DMS 83-18412, by the Center for Nonlinear Studies, Los Alamos National Laboratory, and by the Department of Computer Science, Stanford University. LINEAR ALGEBRA AND ITS APPLZCATZONS 88/89:49-66 (1987) 49 nil:Elsevier Science Publishing Co., Inc., 1987 52 Vanderbilt Ave., New York, NY 10017 00243795/87/$3..50 50 JAMES R. BUNCH stability of algorithms for Toeplitz systems and help to settle some of the controversy concerning their stability. 2. PERTURBATION AND CONDITIONING It is very common in scientific and engineering computations that the data are imprecise, i.e., the data have finite precision. For example, ai j = 1.234 f 0.001 means that we are taking the value of aij to be 1.234 and we guarantee that the true value of aij lies between 1.233 and 1.235. Expressing this in terms of a system of linear equations (to choose one numerical linear algebra problem for convenience), this says that we have the rz X 72 system Ax = b, which is only an approximation to the true problem in nature d? = 6. Also, we hope to have some additional information, lGij - (1, jI < g, j and 16, - bi I< hi, 1~ i, j < n, giving the accuracy of the data. Our first question is: if A is close to A and b is close to 6, is x close to x”, whenever A and A” are nonsingular? Unfortunately, the answer is that x is not necessarily close to x”. Consider EXAMPLE 1 [lo]. Let 1.00 0.99 A=A’= ], b= [ ::;;], and 6= [ :::;::I. 0.99 0.98 Then 1 X= [ 1 1 and ‘= [ _,;203]’ Thus a change of size lop4 in the system has caused a change of size 2 in the solution. When can we be guaranteed that x is close to x”? It would be nice to answer this in terms of 1fi - xi1 < something, but it is easier to answer it in terms of norms. Let l/P for 1~ p coo, and llxllx = lim Ilrllp. P-m Then I141m= maxhI. I WEAK AND STRONG STABILITY 51 Let The only p-norms that are actually used are the 1, 2, and CO. The l-norm and the co-norm are used for linear equations (because they are cheap to compute), and the %-norm is used for eigenv&es,singular values, and least squares. Now let ]I. (I be any p-norm. Then we have the following THEOREM 1 [ 161. IfA,x = b and Ax” = 6, where A is nonsingular, und if I/A - AlI ]]A-‘]] < 1, then A is nonsingular, and lb - fll ll4l IW’II II* - AlI + I@ - &II -Tc 1 - II* - AlI IW’II IIAII llbll I ’ This can be read as: “the relative perturbation of the solution is bounded by II4 II*-‘II II* - AlI 1 - ll*ll II*-‘II llAll times the relative perturbation of the matrix and the right hand side.” The quantity ]]A]]]]A- ‘I] appears to be quite important; it is called the condition number of A (for linear equations or for inversion) and is denoted by K(A). (Note: K(A) > 1.) We can restate Theorem 1 as: If Ax = b and A? = 6, where A is nonsingular, and if II*-AlI 1 IIAII Yqqp then A is non-singular and IL-fll ~ 44 llxll II* - AlI ~-K(A) IIAII 52 JAMES R. RUNCH This says that if the relative perturbations of the matrix A and the right hand side b are small, then the relative perturbation of the solution is also small as long as A is well conditioned [i.e., K(A) is not too large]. Of course, the roles of A and A can be reversed. Let’s now quantify this. Suppose that the relative perturbations in A and b are lo-‘, i.e., IIA - AlI = 1o-‘_ IJb- 41 IIAll llbll ’ i.e., the relative accuracy of the data is lo-’ (a relative error of about 1 in the rth significant decimal digit). Let K(A) = lop. Then Theorem 1 says that if r > p then thus the relative change in the solution is at mcst (approximately) 2 in the (p - r)th significant decimal digit. (We have stated this as if p, r, and 9 were integers; of course, they need not be integers. We have also assumed lop-’ -=z 1.) For example, if IIA - All = 1op’_ Ilb- 611 IIAII llbll and if K(A) = lo:‘, then 11x- 211 lo3 ,lxll < 1 _ 10~4 2x lo-‘= 2x lo-“; i 1 so the relative error in the solution is at most 2 in the fourth significant decimal digit. Thus, the condition number, K(A) = lo’, gives the number T of significant decimal digits that may be lost in the accuracy of the solution in comparison with the accuracy of the data, or conversely it gives the number r of significant decimal digits that the error in the solution may be increased in comparison with the error in the data. WEAK AND STRONG STABILITY 53 How large may K(A) be before we consider A to be ill conditioned? That depends on the accuracy of the data and the accuracy desired in the solution. If the data have a relative error of 10m7 and the relative error in the solution is to be guaranteed to be < 10e4, then K(A) must be < 0.5 X lo3 = 500, but if the relative error in the solution is to be guaranteed to be < lo-‘, then K(A) must be Q 0.5 X lo5 = 50,000, while if the relative error in the solution is to be guaranteed to be < 1O-6, then K(A) must be < 5. Thus, whether a matrix is well or ill conditioned depends on the accuracy of the data and how much accuracy is required in the solution. In the above, A would be considered well conditioned if K(A) < 500 in the first case, < 50000 in the second case, and < 5 in the third case. Note that since K(A) > 1,the greatest accuracy that can be guaranteed in the solution is 2 x 10A7. Thus we cannot be guaranteed more accuracy in the solution than in the data. (Of course, we may always be lucky, but we cannot be guaranteed it.) Now let us look back at Example 1. Here IJb - 611, 1.06 lb - x”llca K~( A) = 39,601, Ilb,l, = 1.99 XIOP4, and = 2.0203, IIXIICC while Theorem 1 guaranteed that lb - fll ~ < 2.1094, II4 which was true. In order to be guaranteed that IIX - fll ~ 1op2 lIdI ’ we would need Ilb- &II < 2.53x 10P7. llbll 3. STABILITY The finite precision of computer arithmetic can cause quite disastrous results for algorithms when solving mathematical problems on computers. 54 JAMES R. BUNCH For example Gaussian elimination is quite disastrous in finite precision arithmetic. Suppose that we are using 9 decimal digit floating point arith- metic; a computation of 1-t 10P ‘” , 10” + lo-“, and 1O’a + 1 would give 1, 105, and 10 r0 respectively. EXAMPLE 2. Let and h= ; . [ 1 Then 1 1 1 X= z l-lo-‘n [ 1-2x10P10 1 [I1 Using Gaussian elimination, we multiply the first row by 10” and subtract from the second; in exact arithmetic we obtain lo-‘O [ 0 1-:,,o]x= [2-:,l$ but in 9 decimal digit arithmetic we obtain loPro _:,$= [ _:olo]. [ 0 Backsolving, we obtain as the computed solution, x^= 0 [ 1 1’ which is a disastrous solution. (Note: K~( A) = 4/(1 - 10P lo) E 4.) The numbers in a computer (%X = the computer numbers) are not closed under addition, subtraction, multiplication, and division; i.e., if u and b are in WJV then a + b, a - b, a x b, or a/b need not necessarily be in %?_.K-some good approximation to a + b, a - h, a x b, or u/h will be in WEAK AND STRONG STABILITY 55 %?_.V, but not necessarily a + b, a - b, a x b, or a/b itself. This situation has dire consequences. Almost all of the mathematics that we use assumes that we are in a closed number system; e.g., the Gaussian elimination algorithm assumes a closed number system.