Gaussian Elimination for Linear Systems

Similar documents
Numerical methods for solving linear systems

Roundoff Analysis of Gaussian Elimination

Dense LU factorization and its error analysis

COURSE Numerical methods for solving linear systems. Practical solving of many problems eventually leads to solving linear systems.

Direct Methods for Solving Linear Systems. Simon Fraser University Surrey Campus MACM 316 Spring 2005 Instructor: Ha Le

Lecture Notes of Matrix Computations

1 Multiply Eq. E i by λ 0: (λe i ) (E i ) 2 Multiply Eq. E j by λ and add to Eq. E i : (E i + λe j ) (E i )

Lecture Note 2: The Gaussian Elimination and LU Decomposition

Direct Methods for Solving Linear Systems. Matrix Factorization

5. Direct Methods for Solving Systems of Linear Equations. They are all over the place...

Linear Algebraic Equations

Scientific Computing

Lecture 2 INF-MAT : , LU, symmetric LU, Positve (semi)definite, Cholesky, Semi-Cholesky

Computational Linear Algebra

Lecture 9. Errors in solving Linear Systems. J. Chaudhry (Zeb) Department of Mathematics and Statistics University of New Mexico

5 Solving Systems of Linear Equations

14.2 QR Factorization with Column Pivoting

LU Factorization. LU factorization is the most common way of solving linear systems! Ax = b LUx = b

Numerical Linear Algebra

Program Lecture 2. Numerical Linear Algebra. Gaussian elimination (2) Gaussian elimination. Decompositions, numerical aspects

Numerical Linear Algebra

Gaussian Elimination and Back Substitution

Iterative techniques in matrix algebra

Numerical Methods I Solving Square Linear Systems: GEM and LU factorization

Numerical Methods - Numerical Linear Algebra

Applied Mathematics 205. Unit II: Numerical Linear Algebra. Lecturer: Dr. David Knezevic

Chapter 4 No. 4.0 Answer True or False to the following. Give reasons for your answers.

Computational Methods. Systems of Linear Equations

4. Direct Methods for Solving Systems of Linear Equations. They are all over the place...

CME 302: NUMERICAL LINEAR ALGEBRA FALL 2005/06 LECTURE 9

2.1 Gaussian Elimination

Solving Linear Systems of Equations

A Backward Stable Hyperbolic QR Factorization Method for Solving Indefinite Least Squares Problem

Ax = b. Systems of Linear Equations. Lecture Notes to Accompany. Given m n matrix A and m-vector b, find unknown n-vector x satisfying

Lecture 12 (Tue, Mar 5) Gaussian elimination and LU factorization (II)

Pivoting. Reading: GV96 Section 3.4, Stew98 Chapter 3: 1.3

Solving Dense Linear Systems I

CHAPTER 6. Direct Methods for Solving Linear Systems

CS412: Lecture #17. Mridul Aanjaneya. March 19, 2015

LU Factorization. Marco Chiarandini. DM559 Linear and Integer Programming. Department of Mathematics & Computer Science University of Southern Denmark

Scientific Computing: An Introductory Survey

Linear Systems of n equations for n unknowns

Lecture Notes to Accompany. Scientific Computing An Introductory Survey. by Michael T. Heath. Chapter 2. Systems of Linear Equations

Lecture 7. Gaussian Elimination with Pivoting. David Semeraro. University of Illinois at Urbana-Champaign. February 11, 2014

Numerical Linear Algebra

11 Adjoint and Self-adjoint Matrices

Outline. Math Numerical Analysis. Errors. Lecture Notes Linear Algebra: Part B. Joseph M. Mahaffy,

Matrix Factorization and Analysis

LU Factorization. LU Decomposition. LU Decomposition. LU Decomposition: Motivation A = LU

1.5 Gaussian Elimination With Partial Pivoting.

5.6. PSEUDOINVERSES 101. A H w.

Review Questions REVIEW QUESTIONS 71

4.2 Floating-Point Numbers

Solving Linear Systems Using Gaussian Elimination. How can we solve

LINEAR SYSTEMS (11) Intensive Computation

Solving Linear Systems of Equations

Lecture 2 Decompositions, perturbations

Orthogonalization and least squares methods

Algebra C Numerical Linear Algebra Sample Exam Problems

GAUSSIAN ELIMINATION AND LU DECOMPOSITION (SUPPLEMENT FOR MA511)

The Solution of Linear Systems AX = B

CSE 160 Lecture 13. Numerical Linear Algebra

Chapter 2 - Linear Equations

Introduction to PDEs and Numerical Methods Lecture 7. Solving linear systems

6. Iterative Methods for Linear Systems. The stepwise approach to the solution...

Analysis of Block LDL T Factorizations for Symmetric Indefinite Matrices

Linear Algebra Section 2.6 : LU Decomposition Section 2.7 : Permutations and transposes Wednesday, February 13th Math 301 Week #4

Gaussian Elimination without/with Pivoting and Cholesky Decomposition

CME 302: NUMERICAL LINEAR ALGEBRA FALL 2005/06 LECTURE 6

DEN: Linear algebra numerical view (GEM: Gauss elimination method for reducing a full rank matrix to upper-triangular

Solving Linear Systems 1 Review We start with a review of vectors and matrices and matrix-matrix and matrixvector multiplication and other matrix and

Solving linear equations with Gaussian Elimination (I)

AMS526: Numerical Analysis I (Numerical Linear Algebra)

Engineering Computation

MATH 3511 Lecture 1. Solving Linear Systems 1

Orthonormal Transformations and Least Squares

1 Error analysis for linear systems

Numerical Linear Algebra And Its Applications

lecture 2 and 3: algorithms for linear algebra

A Review of Matrix Analysis

Introduction to Mathematical Programming

Today s class. Linear Algebraic Equations LU Decomposition. Numerical Methods, Fall 2011 Lecture 8. Prof. Jinbo Bi CSE, UConn

NUMERICAL LINEAR ALGEBRA. Lecture notes for MA 660A/B. Rudi Weikard

Applied Linear Algebra

LECTURE NOTES ELEMENTARY NUMERICAL METHODS. Eusebius Doedel

Orthogonal Transformations

Applied Numerical Linear Algebra. Lecture 8

Iterative solution methods

Fundamentals of Numerical Linear Algebra

9. Numerical linear algebra background

Numerical Linear Algebra

Solving large scale eigenvalue problems

V C V L T I 0 C V B 1 V T 0 I. l nk

Matrix decompositions

JACOBI S ITERATION METHOD

9. Numerical linear algebra background

Jim Lambers MAT 610 Summer Session Lecture 2 Notes

AIMS Exercise Set # 1

STAT 309: MATHEMATICAL COMPUTATIONS I FALL 2018 LECTURE 13

Mathematics for Engineers. Numerical mathematics

Transcription:

Gaussian Elimination for Linear Systems Tsung-Ming Huang Department of Mathematics National Taiwan Normal University October 3, 2011 1/56

Outline 1 Elementary matrices 2 LR-factorization 3 Gaussian elimination 4 Cholesky factorization 5 Error estimation for linear systems 2/56

Elementary matrices Let A C n n be a nonsingular matrix. We want to solve the linear system Ax = b by (a) Direct methods (finite steps); (b) Iterative methods (convergence). (See Chapter 4) 3/56

A = A 1 := L 1 A A 2 := L 2 A 1 1 1 0 3 2 1 1 1 3 1 1 2 1 2 3 1 = L 2 L 1 A 1 0 0 0 2 1 0 0 3 0 1 0 1 0 0 1 1 0 0 0 0 1 0 0 0 4 1 0 0 3 0 1 A = A 1 = 1 1 0 3 0 1 1 5 0 4 1 7 0 3 3 2 1 1 0 3 0 1 1 5 0 0 3 13 0 0 0 13 4/56

We have A = L 1 1 L 1 2 A 2 = LR. where L and R are lower and upper triangular, respectively. Question How to compute L 1 1 and L 1 2? L 1 = L 2 = 1 0 0 0 2 1 0 0 3 0 1 0 1 0 0 1 1 0 0 0 0 1 0 0 0 4 1 0 0 3 0 1 = I = I 0 2 3 1 0 0 4 3 [ ] 1 0 0 0 [ ] 0 1 0 0 5/56

Definition 1 A matrix of the form is called an elementary matrix. I αxy (α F,x,y F n ) The eigenvalues of (I αxy ) are {1,1,...,1,1 αy x}. Compute (I αxy )(I βxy ) = I (α+β αβy x)xy. If αy x 1 0 and let β = where 1 α + 1 β = y x. α αy x 1, then α+β αβy x = 0. We have (I αxy ) 1 = (I βxy ), 6/56

Example 1 Let x F n, and x x = 1. Let H = {z : z x = 0} and Q = I 2xx (Q = Q,Q 1 = Q). Then Q reflects each vector with respect to the hyperplane H. Let y = αx+w, w H. Then, we have Qy = αqx+qw = αx+w 2(x w)x = αx+w. 7/56

Let y = e i to be the i-th column of the unit matrix and x = l i = [0,,0,l i+1,i,,l n,i ] T. Then, 1... I +l i e T i = 1 l i+1,i.... l n,i 1 Since e T i l i = 0, we have (1) (I +l i e T i ) 1 = (I l i e T i ). 8/56

From the equality (I +l 1 e T 1)(I +l 2 e T 2) = I +l 1 e T 1 +l 2 e T 2 +l 1 (e T 1l 2 )e T 2 = I +l 1 e T 1 +l 2 e T 2 follows that Theorem 2 (I +l 1e T 1) (I +l ie T i ) (I +l n 1e T n 1) = I +l 1e T 1 +l 2e T 2 + +l n 1e T n 1 1. = l.. 21 0........ (2) l n1 l n,n 1 1 A lower triangular with 1 on the diagonal can be written as the product of n 1 elementary matrices of the form (1). Remark: (I+l 1 e T 1 + +l n 1e T n 1 ) 1 = (I l n 1 e T n 1 ) (I l 1e T 1 ) which can not be simplified as in (2). 9/56

LR-factorization Definition 3 Given A C n n, a lower triangular matrix L with 1 on the diagonal and an upper triangular matrix R. If A = LR, then the product LR is called a LR-factorization (or LR-decomposition) of A. 10/56

Basic problem Given b 0, b F n. Find a vector l 1 = [0,l 21,,l n1 ] T and c F such that (I l 1 e T 1)b = ce 1. Solution: { b1 = c, b i l i1 b 1 = 0, i = 2,...,n. { b1 = 0, it has no solution (since b 0), b 1 0, then c = b 1, l i1 = b i /b 1, i = 2,...,n. 11/56

Construction of LR-factorization: [ ] Let A = A (0) = a (0) 1 a (0) n. Apply basic problem to a (0) 1 : If a (0) 11 0, then there exists L 1 = I l 1 e T 1 such that Thus (I l 1 e T 1 )a(0) 1 = a (0) 11 e 1. A (1) = L 1 A (0) [ ] = La (0) 1 La (0) n a (0) 11 a (0) 12 a (0) 1n = 0 a (1) 22 a (1) 2n.... 0 a (1) n2 a (1) nn 12/56

The k-th step: = A (k) = L k A (k 1) = L k L k 1 L 1 A (0) (3) a (0) 11 a (0) 1n 0 a (1) 22 a (1) 2n..... 0..... a (k 1) kk a (k 1) kn.. 0 a (k) k+1,k+1 a (k).......... 0 0 0 a (k) n,k+1 a (k) nn k+1,n 13/56

If a (k 1) kk 0, for k = 1,...,n 1, then the method is executable and we have that A (n 1) = L n 1 L 1 A (0) = R is an upper triangular matrix. Thus, A = LR. Explicit representation of L: L k = I l k e T k, L 1 k = I +l k e T k L = L 1 1 L 1 n 1 = (I +l 1e T 1 ) (I +l n 1e T n 1 ) = I +l 1 e T 1 + +l n 1e T n 1 (by (2)). 14/56

Theorem 4 Let A be nonsingular. Then A has an LR-factorization (A = LR) if and only if κ i := det(a i ) 0, where A i is the leading principal matrix of A, i.e., for i = 1,...,n 1. A i = a 11. a i1 a 1i. a ii Proof: (Necessity ): Since A = LR, we have a 11 a 1i l 11 0 r 11 r 1i.. =......... a i1 a ii l i1 l ii 0 r ii From det(a) 0 follows that det(l) 0 and det(r) 0. Thus, l jj 0 and r jj 0, for j = 1,...,n. Hence κ i = l 11 l ii r 11 r ii 0., 15/56

(Sufficiency ): From (3) we have A (0) = (L 1 1 L 1 i )A (i). Consider the (i + 1)-th leading principle determinant. From (3) we have = a 11 a i,i+1.. a i+1,i+1 a i+1 1 0 l 21................. l i+1,1 l i+1,i 1 a (0) 11 a (0) 12 a (0) 1,i+1 a (1) 22 a (1) 2,i+1...... a (i 1) ii a (i 1) i,i+1 0 a (i) i+1,i+1. Thus, κ i = 1 a (0) 11 a(1) 22 a(i) i+1,i+1 0 which implies a(i) i+1,i+1 0. Therefore, the LR-factorization of A exists. 16/56

Theorem 5 If a nonsingular matrix A has an LR-factorization with A = LR and l 11 = = l nn = 1, then the factorization is unique. Proof: Let A = L 1 R 1 = L 2 R 2. Then L 1 2 L 1 = R 2 R 1 1 = I. Corollary 6 If a nonsingular matrix A has an LR-factorization with A = LDR, where D is diagonal, L and R T are unit lower triangular (with one on the diagonal) if and only if κ i 0. 17/56

Theorem 7 Let A be a nonsingular matrix. Then there exists a permutation P, such that P A has an LR-factorization. Proof: By construction! Consider (3): There is a permutation P k, which interchanges the k-th row with a row of index large than k, such that 0 a (k 1) kk ( P k A (k 1) ). This procedure is executable, for k = 1,...,n 1. So we have L n 1 P n 1 L k P k L 1 P 1 A (0) = R. (4) Let P be a permutation which affects only elements k+1,...,n. It holds P(I l k e T k )P 1 = I (Pl k )e T k = I l k e T k = L k, (e T k P 1 = e T k ) where L k is lower triangular. Hence we have PL k = L k P. 18/56

Now write all P k in (4) to the right as L n 1 Ln 2 L 1 P n 1 P 1 A (0) = R. Then we have PA = LR with L 1 = L n 1 Ln 2 L 1 and P = P n 1 P 1. 19/56

Gaussian elimination Given a linear system Ax = b with A nonsingular. We first assume that A has an LR-factorization, i.e., A = LR. Thus LRx = b. We then (i) solve Ly = b; (ii) solve Rx = y. These imply that LRx = Ly = b. From (4), we have L n 1 L 2 L 1 (A b) = (R L 1 b). 20/56

Algorithm: Gaussian elimination without permutation 1: for k = 1,...,n 1 do 2: if a kk = 0 then 3: Stop. 4: else 5: ω j := a kj (j = k +1,...,n); 6: end if 7: for i = k +1,...,n do 8: η := a ik /a kk, a ik := η; 9: for j = k +1,...,n do 10: a ij := a ij ηω j, b j := b j ηb k. 11: end for 12: end for 13: end for 14: x n = b n /a nn ; 15: for i = n 1,n 2,...,1 do 16: x i = (b i n j=i+1 a ijx j )/a ii. 17: end for 21/56

Cost of computation (A flop is a floating point operation): (i) LR-factorization: 2n 3 /3 flops; (ii) Computation of y: n 2 flops; (iii) Computation of x: n 2 flops. For A 1 : 8/3n 3 2n 3 /3+2kn 2 (k = n linear systems). 22/56

Pivoting: (a) Partial pivoting; (b) Complete pivoting. From (3), we have A (k 1) = a (0) 11 a (0) 1n. 0.... a (k 2) k 1,k 1 a (k 2) k 1,n. 0 a (k 1) kk... 0... 0 a (k 1) nk a (k 1) kn. a nn (k 1). 23/56

Partial pivoting Find a p {k,...,n} such that a pk = max k i n a ik (r k = p) swap a kj with a pj for j = k,...,n, and b k with b p. Replacing stopping step in Line 3 of Gaussian elimination Algorithm by (5), we have a new factorization of A with partial pivoting, i.e., PA = LR (by Theorem 7 and l ij 1 for i,j = 1,...,n). For solving linear system Ax = b, we use PAx = Pb L(Rx) = P T b b. It needs extra n(n 1)/2 comparisons. (5) 24/56

Complete pivoting Find p,q {k,...,n} such that a pq max k i,j n a ij, (r k := p,c k := q) swap a kj and b k with a pj and b p, resp., (j = k,...,n), swap a ik with a iq (i = 1,...,n). Replacing stopping step in Line 3 of Gaussian elimination Algorithm by (6), we also have a new factorization of A with complete pivoting, i.e., PAΠ = LR (by Theorem 7 and l ij 1, for i,j = 1,...,n). For solving linear system Ax = b, we use PAΠ(Π T x) = Pb LR x = b x = Π x. It needs n 3 /3 comparisons. (6) 25/56

Let A = [ 10 4 1 1 1 ] be in three decimal-digit floating point arithmetic. κ(a) = A A 1 4. A is well-conditioned. Without pivoting: [ ] 1 0 L = fl(1/10 4, fl(1/10 ) 1 4 ) = 10 4, [ ] 10 4 1 R = 0 fl(1 10 4, fl(1 10 1) 4 1) = 10 4. [ ][ ] [ ] 1 0 10 4 1 10 4 1 LR = 10 4 1 0 10 4 = A. 1 0 26/56

Here a 22 entirely lost from computation. It is numerically unstable. [ ] [ ] 1 1 Let Ax =. Then x. 2 1 [ ] 1 But Ly = solves y 2 1 = 1 and y 2 = fl(2 10 4 1) = 10 4, Rˆx = y solves ˆx 2 = fl(( 10 4 )/( 10 4 )) = 1, ˆx 1 = fl((1 1)/10 4 ) = 0. We have an erroneous solution with cond(l), cond(r) 10 8. 27/56

Partial pivoting: L = R = [ ] [ 1 0 fl(10 4 = /1) 1 [ ] 1 1 0 fl(1 10 4 = ) L and R are both well-conditioned. 1 0 10 4 1 [ 1 1 0 1 ]. ], 28/56

LDR- and LL T -factorizations Algorithm 2 [Crout s factorization or compact method] For k = 1,...,n, for p = 1,2,...,k 1, r p := d p a pk, ω p := a kp d p, d k := a kk k 1 p=1 a kpr p, if d k = 0, then stop; else for i = k +1,...,n, a ik := (a ik k 1 p=1 a ipr p )/d k, a ki := (a ki k 1 p=1 ω pa pi )/d k. Cost: n 3 /3 flops. With partial pivoting: see Wilkinson EVP pp.225-. Advantage: One can use double precision for inner product. 29/56

Theorem 8 If A is nonsingular, real and symmetric, then A has a unique LDL T factorization, where D is diagonal and L is a unit lower triangular matrix (with one on the diagonal). Proof: A = LDR = A T = R T DL T. It implies L = R T. 30/56

Theorem 9 If A is symmetric and positive definite, then there exists a lower triangular G R n n with positive diagonal elements such that A = GG T. Proof: A is symmetric positive definite x T Ax 0 for all nonzero vector x R n κ i 0 for i = 1,...,n all eigenvalues of A are positive From Corollary 6 and Theorem 8 we have A = LDL T. From L 1 AL T = D follows that d k = (e T k L 1 )A(L T e k ) > 0. Thus, G = Ldiag{d 1/2 1,,d 1/2 n } is real, and then A = GG T. 31/56

Derive an algorithm for computing the Cholesky factorization A = GG T : Let g 11 0 0. A [a ij] and G = g 21 g..... 22..... 0. g n1 g n2 g nn Assume the first k 1 columns of G have been determined after k 1 steps. By componentwise comparison with g 11 0 0 g 11 g 21 g n1. [a ij] = g 21 g..... 22 0 g 22 g n2..... 0.........., g n1 g n2 g nn 0 0 g nn one has a kk = k j=1 g 2 kj, 32/56

which gives Moreover, a ik = k 1 gkk 2 = a kk k g ij g kj, j=1 j=1 g 2 kj. i = k +1,...,n, hence the k-th column of G can be computed by k 1 / g ik = a ik g ij g kj g kk, i = k +1,...,n. j=1 33/56

Cholesky Factorization Input: n n symmetric positive definite matrix A. Output: Cholesky factorization A = GG T. 1: Initialize G = 0. 2: for k = 1,...,n do 3: G(k,k) = A(k,k) k 1 j=1 G(k,j)G(k,j) 4: for i = k +1,...,n do ( 5: G(i,k) = A(i,k) ) / k 1 j=1 G(i,j)G(k,j) G(k,k) 6: end for 7: end for In addition to n square root operations, there are approximately n [2k 2+(2k 1)(n k)] = 1 3 n3 + 1 2 n2 5 6 n k=1 floating-point arithmetic required by the algorithm. 34/56

For solving symmetric, indefinite systems: See Golub/ Van Loan Matrix Computation pp. 159-168. PAP T = LDL T, D is 1 1 or 2 2 block-diagonal matrix, P is a permutation and L is lower triangular with one on the diagonal. 35/56

Error estimation for linear systems Consider the linear system and the perturbed linear system Ax = b, (7) (A+δA)(x+δx) = b+δb, (8) where δa and δb are errors of measure or round-off in factorization. Definition 10 Let be an operator norm and A be nonsingular. Then κ κ(a) = A A 1 is a condition number of A corresponding to. 36/56

Theorem 11 (Forward error bound) Let x be the solution of (7) and x+δx be the solution of the perturbed linear system (8). If δa A 1 < 1, then ( δx x κ δa A + δb ). b Proof: From (8) we have 1 κ δa A (A+δA)δx+Ax+δAx = b+δb. Thus, δx = (A+δA) 1 [(δa)x δb]. (9) 37/56

Here, Corollary 2.7 implies that (A+δA) 1 exists. Now, (A+δA) 1 = (I +A 1 δa) 1 A 1 A 1 1 1 A 1 δa. On the other hand, b = Ax implies b A x. So, 1 x A b. (10) A From (9) follows that δx 1 1 A 1 δa ( δa x + δb ). By using (10), the inequality (11) is proved. Remark 1 If κ(a) is large, then A (for the linear system Ax = b) is called ill-conditioned, else well-conditioned. 38/56

Error analysis for Gaussian algorithm A computer in characterized by four integers: (a) the machine base β; (b) the precision t; (c) the underflow limit L; (d) the overflow limit U. Define the set of floating point numbers. F = {f = ±0.d 1 d 2 d t β e 0 d i < β,d 1 0,L e U} {0}. Let G = {x R m x M} {0}, where m = β L 1 and M = β U (1 β t ) are the minimal and maximal numbers of F \{0} in absolute value, respectively. 39/56

We define an operator fl : G F by fl(x) = the nearest c F to x by rounding arithmetic. One can show that fl satisfies fl(x) = x(1+ε), ε eps, where eps = 1 2 β1 t. (If β = 2, then eps = 2 t ). It follows that fl(a b) = (a b)(1+ε) or fl(a b) = (a b)/(1+ε), where ε eps and = +,,,/. 40/56

Given x,y R n. The following algorithm computes x T y and stores the result in s. s = 0, for k = 1,...,n, s = s+x k y k. Theorem 12 If n2 t 0.01, then n n fl( x k y k ) = x k y k [1+1.01(n+2 k)θ k 2 t ], θ k 1 k=1 k=1 Proof of Theorem 12 41/56

Let the exact LR-factorization of A be L and R (A = LR) and let L, R be the LR-factorization of A by using Gaussian Algorithm (without pivoting). There are two possibilities: (i) Forward error analysis: Estimate L L and R R. (ii) Backward error analysis: Let L R be the exact LR-factorization of a perturbed matrix à = A+E. Then E will be estimated, i.e., E?. Theorem 13 The LR-factorization L and R of A using Gaussian Elimination with partial pivoting satisfies L R = A+E, (2.6) where with E n 2 ρ A 2 t (2.7) ρ = max i,j,k a (k) ij / A. (2.8) 42/56

Applying Theorem 12 to the linear system Ly = b and Rx = y, respectively, the solution x satisfies or ( L+δ L)( R+δ R)x = b ( L R+(δ L) R+ L(δ R)+(δ L)(δ R))x = b. (2.9) Since L R = A+E, substituting this equation into (2.9) we get [A+E +(δ L) R+ L(δ R)+(δ L)(δ R)]x = b. The entries of L and R satisfy l ij 1, and r ij ρ A. 43/56

Therefore, we get L n, R nρ A, δ L n(n+1) 2 1.01 2 t, δ R n(n+1) 2 1.01ρ2 t. In practical implementation we usually have n 2 2 t << 1. So it holds Let δ L δ R n 2 ρ A 2 t. (2.10) δa = E +(δ L) R+ L(δ R)+(δ L)(δ R). (2.11) Then, from (2.7) and (2.10) we get δa E + δ L R + L δ R + δ L δ R 1.01(n 3 +3n 2 )ρ A 2 t (2.12) 44/56

Theorem 14 For a linear system Ax = b the solution x computed by Gaussian Elimination with partial pivoting is the exact solution of the equation (A+δA)x = b and δa satisfies (2.12). Remark: The quantity ρ defined by (2.9) is called a growth factor. The growth factor measures how large the numbers become during the process of elimination. In practice, ρ is usually of order 10 for partial pivot selection. But it can be as large as ρ = 2 n 1, when A = 1 0 0 1 1 1 0 0 1. 1......... 1........ 0 1 1 1 1 1 1 1 1 1 1. 45/56

Better estimates hold for special types of matrices. For example in the case of upper Hessenberg matrices, that is, matrices of the form A =................ 0 the bound ρ (n 1) can be shown. (Hessenberg matrices arise in eigenvalus problems.) 46/56

For tridiagonal matrices A = α 1 β 2 0 γ 2..................... βn 0 γ n α n it can even be shown that ρ 2 holds for partial pivot selection. Hence, Gaussian elimination is quite numerically stable in this case. 47/56

For complete pivot selection, Wilkinson (1965) has shown that a k ij f(k)max a ij i,j with the function f(k) := k 1 2 [ ] 2 1 3 1 1 1 1 2 2 4 3 k (k 1). This function grows relatively slowly with k: k 10 20 50 100 f(k) 19 67 530 3300 48/56

Even this estimate is too pessimistic in practice. Up until now, no matrix has been found which fails to satisfy a (k) ij (k +1)max a ij k = 1,2,...,n 1, i,j when complete pivot selection is used. This indicates that Gaussian elimination with complete pivot selection is usually a stable process. Despite this, partial pivot selection is preferred in practice, for the most part, because: (i) Complete pivot selection is more costly than partial pivot selection. (To compute A (i), the maximum from among (n i+1) 2 elements must be determined instead of n i+1 elements as in partial pivot selection.) (ii) Special structures in a matrix, i.e. the band structure of a tridiagonal matrix, are destroyed in complete pivot selection. 49/56

Iterative Improvement: Suppose that the linear system Ax = b has been solved via the LR-factorization PA = LR. Now we want to improve the accuracy of the computed solution x. We compute Then in exact arithmatic we have r = b Ax, Ly = Pr, Rz = y, x new = x+z. Ax new = A(x+z) = (b r)+az = b. (2.13) This leads to solve by using PA = LR. Az = r 50/56

Unfortunately, r = fl(b Ax) renders an x new that is no more accurate than x. It is necessary to compute the residual b Ax with extended precision floating arithmetic. Algorithm 4 Compute P A = LR (t-digit) Repeat: r := b Ax (2t-digit) Solve Ly = Pr for y (t-digit) Solve Rz = y for z (t-digit) Update x = x+z (t-digit) From Theorem 14 we have (A+δA)z = r, i.e., A(I +F)z = r with F = A 1 δa. (2.14) 51/56

Theorem 15 Let {x k } be the sequence constructed by Algorithm 4 for solving Ax = b and x = A 1 b be the exact solution. Assume F k in (2.14) satisfying F k σ < 1/2 for all k. Then {x k } x. Proof of Theorem 15 Corollary 16 If 1.01(n 3 +3n 2 )ρ2 t A A 1 < 1/2, then Algorithm 4 converges. Proof: From (2.14) and (2.12) follows that F k 1.01(n 3 +3n 2 )ρ2 t κ(a) < 1/2. 52/56

Appendix Proof of Theorem 12: Let s p = fl( p k=1 x ky k ) be the partial sum in Algorithm 41. Then s 1 = x 1 y 1 (1+δ 1 ) with δ 1 eps and for p = 2,...,n, s p = fl[s p 1 +fl(x p y p )] = [s p 1 +x p y p (1+δ p )](1+ε p ) with δ p, ε p eps. Therefore fl(x T y) = s n = n x k y k (1+γ k ), k=1 where (1+γ k ) = (1+δ k ) n j=k (1+ε j), and ε 1 0. Thus, n n fl( x k y k ) = x k y k [1+1.01(n+2 k)θ k 2 t ]. k=1 k=1 The result follows immediately from the following useful Lemma. 53/56

Lemma 7.1 If (1+α) = n k=1 (1+α k), where α k 2 t and n2 t 0.01, then n (1+α k ) = 1+1.01nθ2 t with θ 1. k=1 Proof: From assumption it is easily seen that (1 2 t ) n n (1+α k ) (1+2 t ) n. k=1 Expanding the Taylor expression of (1 x) n as 1 < x < 1, we get Hence (1 x) n = 1 nx+ n(n 1) (1 θx) n 2 x 2 1 nx. 2 (1 2 t ) n 1 n2 t. 54/56

Now, we estimate the upper bound of (1+2 t ) n : e x = 1+x+ x2 2! + x3 3! + = 1+x+ x 2 x(1+ x 3 + 2x2 + ). 4! If 0 x 0.01, then 1+x e x 1+x+0.01x 1 2 ex 1+1.01x (Here, we use the fact e 0.01 < 2 to the last inequality.) Let x = 2 t. Then the left inequality of (55) implies (1+2 t ) n e 2 t n Let x = 2 t n. Then the second inequality of (55) implies From (55) and (55) we have e 2 tn 1+1.01n2 t (1+2 t ) n 1+1.01n2 t. Return 55/56

Proof of Theorem 15: From (2.14) and r k = b Ax k we have A(I +F k )z k = b Ax k. Since A is nonsingular, we have (I +F k )z k = x x k. From x k+1 = x k +z k we have (I +F k )(x k+1 x k ) = x x k, i.e., (I +F k )x k+1 = F k x k +x. (2.15) Subtracting both sides of (2.15) from (I +F k )x we get (I +F k )(x k+1 x ) = F k (x k x ). Then, x k+1 x = (I +F k ) 1 F k (x k x ). Hence, x k+1 x F k x k x 1 F k σ 1 σ x k x. Let τ = σ/(1 σ). Then x k x τ k 1 x 1 x. But σ < 1/2 follows τ < 1. This implies convergence of Algorithm 4. Return 56/56