Professional Documents
Culture Documents
MA 214 Lecture 7
MA 214 Lecture 7
1 Doolittle’s factorization
1 Doolittle’s factorization
2 Crout’s factorization
1 Doolittle’s factorization
2 Crout’s factorization
3 Cholesky’s factorization
A = LLT .
Theorem
Let A be an n × n matrix with real entries such that
A is symmetric and
positive definite.
Then A has a unique factorization
A = LLT
where L is a lower triangular matrix with a positive diagonal.
Theorem
Let A be an n × n matrix with real entries such that
A is symmetric and
positive definite.
Then A has a unique factorization
A = LLT
where L is a lower triangular matrix with a positive diagonal.
Proof Is by Induction. We can use the proof to construct the
Cholesky’s factorization.
⇒ Lk l = a
⇒ Lk l = a
A forward substitution yields the vector l. (Lk is invertible !?)
MA 214 - NA Spring 2023-24 6 / 26
LU Factorization: Cholesky’s factorization (contd.)
Finally, we have
lT l + l(k+1)(k+1)
2
= a(k+1)(k+1)
and this gives
2
l(k+1)(k+1) = a(k+1)(k+1) − lT l,
Noting that l2(k+1)(k+1) is positive and taking square root, we are done.
1 L1 = (3).
1 L1 = (3).
3 0
2 L2 = .
1 1
1 L1 = (3).
3
0
2 L2 = .
1
1
3 0 0
3 L= 1 1 √ 0 .
−2/3 11/3 82/3
MA 214 - NA Spring 2023-24 8 / 26
LU Factorization: Cholesky’s factorization (contd.)
Other ways to compute L
Direct comparison:
X
n X
i−1
+ (j − 1) (Addition/Subtraction)
i=1 j=1
MA 214 - NA Spring 2023-24 11 / 26
Operation Count
Cholesky’s Factorization
Non-diagonal elements are for each j,
!
1 X
j−1
division: 1(i > 1), subtraction: 1(i > 2, j > 1),
lij = aij − lik ljk ;
ljj multiplication: j − 1, addition: j − 2,
k=1
for i = 1, 2, . . . , n; j = 1, 2, . . . , i − 1.
Xn X i−1
⇒ j (Multiplication/Division)
i=1 j=1
X
n X
i−1
n3
+ (j − 1) (Addition/Subtraction) = + O(n2 ).
3
i=1 j=1
MA 214 - NA Spring 2023-24 11 / 26
Operation Count (contd.)
Cholesky’s Factorization
Diagonal elements are
v
u
u X
i−1
t
l = a − l 2,
ii ii ik
k=1
for i = 1, 2, . . . , n.
for i = 1, 2, . . . , n.
k=1
for i = 1, 2, . . . , n.
k=1 multiplication: i − 1.
for i = 1, 2, . . . , n.
k=1 multiplication: i − 1.
for i = 1, 2, . . . , n.
X
n
⇒ 2 (i − 1) = n(n − 1).
i=1
k=1 multiplication: i − 1.
for i = 1, 2, . . . , n.
X
n
⇒ 2 (i − 1) = n(n − 1).
i=1
n3
Total arithmetic operations (or Total flops) = +O(n2 )
3
MA 214 - NA Spring 2023-24 12 / 26
Operation Count (contd.)
Addition/Subtraction = (n − 1) + (n − 2) + · · · + 1 = n(n−1)
2
n(n−1)
Multiplication/Division = (n − 1) + (n − 2) + · · · + 1 = 2
Addition/Subtraction = (n − 1) + (n − 2) + · · · + 1 = n(n−1)
2
n(n−1)
Multiplication/Division = (n − 1) + (n − 2) + · · · + 1 = 2
3. The back substitution
Addition/Subtraction = (n − 1) + (n − 2) + · · · + 1 = n(n−1)
2
n(n−1)
Multiplication/Division = (n − 1) + (n − 2) + · · · + 1 = 2
3. The back substitution
n(n−1)
Addition/Subtraction = (n − 1) + (n − 2) + · · · + 1 = 2
Addition/Subtraction = (n − 1) + (n − 2) + · · · + 1 = n(n−1)
2
n(n−1)
Multiplication/Division = (n − 1) + (n − 2) + · · · + 1 = 2
3. The back substitution
Addition/Subtraction = (n − 1) + (n − 2) + · · · + 1 = n(n−1)
2
Multiplication/Division = n + (n − 1) + · · · + 1 = n(n+1)
2
Addition/Subtraction = (n − 1) + (n − 2) + · · · + 1 = n(n−1)
2
n(n−1)
Multiplication/Division = (n − 1) + (n − 2) + · · · + 1 = 2
3. The back substitution
Addition/Subtraction = (n − 1) + (n − 2) + · · · + 1 = n(n−1)
2
Multiplication/Division = n + (n − 1) + · · · + 1 = n(n+1)
2
Total number of operations
Addition/Subtraction = (n − 1) + (n − 2) + · · · + 1 = n(n−1)
2
n(n−1)
Multiplication/Division = (n − 1) + (n − 2) + · · · + 1 = 2
3. The back substitution
Addition/Subtraction = (n − 1) + (n − 2) + · · · + 1 = n(n−1)
2
Multiplication/Division = n + (n − 1) + · · · + 1 = n(n+1)
2
Total number of operations
Addition/Subtraction = n(n−1)(2n−1)
6 + n(n−1)
2 + n(n−1)
2 = n(n−1)(2n+5)
6
2
Multiplication/Division = n(n +3n−1)
3
MA 214 - NA Spring 2023-24 16 / 26
Operation Count (contd.)
For elimination, we have
n(n − 1)(2n − 1) n(n − 1)
Multiplication/Division = +
6 2
In Cholesky’s factorization
1
Total number of operations = n3 + O(n2 ).
3