Professional Documents
Culture Documents
Vandenberghe
EE133A
11/2/2015
Midterm solutions
Problem 1. In the homework you derived the following factorization of a circulant Toeplitz matrix
T (a) with the n-vector a as its first column:
a1
a2
a3
..
.
an
a1
a2
..
.
T (a) =
an1 an2
an an1
an1
an
a1
..
..
.
.
an3
an2
a3
a4
a5
..
.
a1
a2
a2
a3
a4
..
.
= W H diag(W a)W.
n
an
a1
Here W is the n n discrete Fourier Transform matrix and diag(W a) is the diagonal matrix with
the vector W a (the discrete Fourier transform of a) on its diagonal.
1. Suppose T (a) is nonsingular. Show that its inverse T (a)1 is a circulant Toeplitz matrix.
Give a fast method for computing the vector b that satisfies T (b) = T (a)1 .
2. Let a and b be two n-vectors. Show that the product T (a)T (b) is a circulant Toeplitz matrix.
Give a fast method for computing the vector c that satisfies T (c) = T (a)T (b).
Solution.
1. The inverse is given by
T (a)1 =
1 H
W diag(W a)1 W.
n
1 H
W diag(W b)W.
n
1 H
W diag(W c)W
n
with c = (1/n)W H ((W a) (W b)). The vector c can be computed in order n log n flops by
taking the DFTs of a and b, multiplying them componentwise, and taking the inverse DFT.
AB =
.
..
..
..
..
.
.
.
.
An1 B An2 B Ann B
For example,
3 4
0
0
5 6
0
0
.
=
6 8 3 4
10 12
5 6
1
0
2 1
3 4
5 6
..
..
..
..
..
..
.
.
.
.
.
.
.
.
.
.
.
.
T
T
T
A1n B
A2n B
Ann B
An1 B An2 B Ann B
2
2
(A11 + + An1 )I
(A11 A12 + + An1 An2 )I (A11 A1n + + An1 Ann )I
(A12 A11 + + An2 An1 )I
(A212 + + A2n2 )I
(A12 A1n + + An2 Ann )I
=
..
..
..
..
.
.
.
.
(A1n A11 + + Ann An1 )I (A1n A12 + + Ann An2 )I
(A21n + + A2nn )I
I 0 0
0 I 0
= . . .
. . ...
.. ..
0 0
because AT A = I and B T B = I.
2
R11
0
QT1 A = .
..
.. .
.
.
.
.
0
The symbols denote elements that may or may not be zero.
Let a = (A11 , A21 , . . . , Am1 ) be the first column of A. Define an m-vector
1
1
a + se1
v=p
1 + |A11 |/kak kak
where s = 1 if A11 0 and s = 1 if A11 < 0. The vector e1 is the first unit vector (1, 0, . . . , 0).
v v =
=
=
=
T
1
1
1
a + se1
a + se1
1 + |A11 |/kak kak
kak
T
1
a a
A11
2
+ 2s
+s
1 + |A11 |/kak kak2
kak
2 + 2|A11 |/kak
1 + |A11 |/kak
2.
1
a + se1 ) = skake1
kak
This takes 2mn flops for the product y = v T A, another mn for the outer product vy T , and
mn for the addition to A. The total is 4mn.