# The Matrix Cookbook

[ http://matrixcookbook.com ]
Kaare Brandt Petersen
Michael Syskind Pedersen
Version: February 16, 2008
What is this? These pages are a collection of facts (identities, approxima-
tions, inequalities, relations, ...) about matrices and matters relating to them.
It is collected in this form for the convenience of anyone who wants a quick
desktop reference .
Disclaimer: The identities, approximations and relations presented here were
obviously not invented but collected, borrowed and copied from a large amount
of sources. These sources include similar but shorter notes found on the internet
and appendices in books - see the references for a full list.
Errors: Very likely there are errors, typos, and mistakes for which we apolo-
gize and would be grateful to receive corrections at cookbook@2302.dk.
Its ongoing: The project of keeping a large repository of relations involving
matrices is naturally ongoing and the version will be apparent from the date in
topics is most welcome at cookbook@2302.dk.
Keywords: Matrix algebra, matrix relations, matrix identities, derivative of
determinant, derivative of inverse matrix, diﬀerentiate a matrix.
Acknowledgements: We would like to thank the following for contributions
and suggestions: Bill Baxter, Christian Rishøj, Douglas L. Theobald, Esben
Hoegh-Rasmussen, Jan Larsen, Korbinian Strimmer, Lars Christiansen, Lars
Kai Hansen, Leland Wilkinson, Liguo He, Loic Thibaut, Miguel Bar˜ao, Ole
Winther, Stephan Hattinger, and Vasile Sima. We would also like thank The
Oticon Foundation for funding our PhD studies.
1
CONTENTS CONTENTS
Contents
1 Basics 5
1.1 Trace and Determinants . . . . . . . . . . . . . . . . . . . . . . . 5
1.2 The Special Case 2x2 . . . . . . . . . . . . . . . . . . . . . . . . . 5
2 Derivatives 7
2.1 Derivatives of a Determinant . . . . . . . . . . . . . . . . . . . . 7
2.2 Derivatives of an Inverse . . . . . . . . . . . . . . . . . . . . . . . 8
2.3 Derivatives of Eigenvalues . . . . . . . . . . . . . . . . . . . . . . 9
2.4 Derivatives of Matrices, Vectors and Scalar Forms . . . . . . . . 9
2.5 Derivatives of Traces . . . . . . . . . . . . . . . . . . . . . . . . . 11
2.6 Derivatives of vector norms . . . . . . . . . . . . . . . . . . . . . 13
2.7 Derivatives of matrix norms . . . . . . . . . . . . . . . . . . . . . 13
2.8 Derivatives of Structured Matrices . . . . . . . . . . . . . . . . . 13
3 Inverses 16
3.1 Basic . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
3.2 Exact Relations . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
3.3 Implication on Inverses . . . . . . . . . . . . . . . . . . . . . . . . 19
3.4 Approximations . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
3.5 Generalized Inverse . . . . . . . . . . . . . . . . . . . . . . . . . . 20
3.6 Pseudo Inverse . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
4 Complex Matrices 22
4.1 Complex Derivatives . . . . . . . . . . . . . . . . . . . . . . . . . 22
5 Decompositions 25
5.1 Eigenvalues and Eigenvectors . . . . . . . . . . . . . . . . . . . . 25
5.2 Singular Value Decomposition . . . . . . . . . . . . . . . . . . . . 25
5.3 Triangular Decomposition . . . . . . . . . . . . . . . . . . . . . . 27
6 Statistics and Probability 28
6.1 Deﬁnition of Moments . . . . . . . . . . . . . . . . . . . . . . . . 28
6.2 Expectation of Linear Combinations . . . . . . . . . . . . . . . . 29
6.3 Weighted Scalar Variable . . . . . . . . . . . . . . . . . . . . . . 30
7 Multivariate Distributions 31
7.1 Student’s t . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
7.2 Cauchy . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32
7.3 Gaussian . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32
7.4 Multinomial . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32
7.5 Dirichlet . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32
7.6 Normal-Inverse Gamma . . . . . . . . . . . . . . . . . . . . . . . 32
7.7 Wishart . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32
7.8 Inverse Wishart . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33
Petersen & Pedersen, The Matrix Cookbook, Version: February 16, 2008, Page 2
CONTENTS CONTENTS
8 Gaussians 34
8.1 Basics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34
8.2 Moments . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36
8.3 Miscellaneous . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38
8.4 Mixture of Gaussians . . . . . . . . . . . . . . . . . . . . . . . . . 39
9 Special Matrices 40
9.1 Block matrices . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40
9.2 Discrete Fourier Transform Matrix, The . . . . . . . . . . . . . . 41
9.3 Hermitian Matrices and skew-Hermitian . . . . . . . . . . . . . . 42
9.4 Idempotent Matrices . . . . . . . . . . . . . . . . . . . . . . . . . 43
9.5 Orthogonal matrices . . . . . . . . . . . . . . . . . . . . . . . . . 43
9.6 Positive Deﬁnite and Semi-deﬁnite Matrices . . . . . . . . . . . . 44
9.7 Singleentry Matrix, The . . . . . . . . . . . . . . . . . . . . . . . 46
9.8 Symmetric, Skew-symmetric/Antisymmetric . . . . . . . . . . . . 48
9.9 Toeplitz Matrices . . . . . . . . . . . . . . . . . . . . . . . . . . . 48
9.10 Transition matrices . . . . . . . . . . . . . . . . . . . . . . . . . . 50
9.11 Units, Permutation and Shift . . . . . . . . . . . . . . . . . . . . 50
9.12 Vandermonde Matrices . . . . . . . . . . . . . . . . . . . . . . . . 51
10 Functions and Operators 53
10.1 Functions and Series . . . . . . . . . . . . . . . . . . . . . . . . . 53
10.2 Kronecker and Vec Operator . . . . . . . . . . . . . . . . . . . . 54
10.3 Solutions to Systems of Equations . . . . . . . . . . . . . . . . . 55
10.4 Vector Norms . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58
10.5 Matrix Norms . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58
10.6 Rank . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60
10.7 Integral Involving Dirac Delta Functions . . . . . . . . . . . . . . 60
10.8 Miscellaneous . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60
A One-dimensional Results 61
A.1 Gaussian . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61
A.2 One Dimensional Mixture of Gaussians . . . . . . . . . . . . . . . 62
B Proofs and Details 64
B.1 Misc Proofs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64
Petersen & Pedersen, The Matrix Cookbook, Version: February 16, 2008, Page 3
CONTENTS CONTENTS
Notation and Nomenclature
A Matrix
A
ij
Matrix indexed for some purpose
A
i
Matrix indexed for some purpose
A
ij
Matrix indexed for some purpose
A
n
Matrix indexed for some purpose or
The n.th power of a square matrix
A
−1
The inverse matrix of the matrix A
A
+
The pseudo inverse matrix of the matrix A (see Sec. 3.6)
A
1/2
The square root of a matrix (if unique), not elementwise
(A)
ij
The (i, j).th entry of the matrix A
A
ij
The (i, j).th entry of the matrix A
[A]
ij
The ij-submatrix, i.e. A with i.th row and j.th column deleted
a Vector
a
i
Vector indexed for some purpose
a
i
The i.th element of the vector a
a Scalar
'z Real part of a scalar
'z Real part of a vector
'Z Real part of a matrix
·z Imaginary part of a scalar
·z Imaginary part of a vector
·Z Imaginary part of a matrix
det(A) Determinant of A
Tr(A) Trace of the matrix A
diag(A) Diagonal matrix of the matrix A, i.e. (diag(A))
ij
= δ
ij
A
ij
eig(A) Eigenvalues of the matrix A
vec(A) The vector-version of the matrix A (see Sec. 10.2.2)
sup Supremum of a set
[[A[[ Matrix norm (subscript if any denotes what norm)
A
T
Transposed matrix
A
−T
The inverse of the transposed and vice versa, A
−T
= (A
−1
)
T
= (A
T
)
−1
.
A

Complex conjugated matrix
A
H
Transposed and complex conjugated matrix (Hermitian)
A⊗B Kronecker product
0 The null matrix. Zero in all entries.
I The identity matrix
J
ij
The single-entry matrix, 1 at (i, j) and zero elsewhere
Σ A positive deﬁnite matrix
Λ A diagonal matrix
Petersen & Pedersen, The Matrix Cookbook, Version: February 16, 2008, Page 4
1 BASICS
1 Basics
(AB)
−1
= B
−1
A
−1
(1)
(ABC...)
−1
= ...C
−1
B
−1
A
−1
(2)
(A
T
)
−1
= (A
−1
)
T
(3)
(A+B)
T
= A
T
+B
T
(4)
(AB)
T
= B
T
A
T
(5)
(ABC...)
T
= ...C
T
B
T
A
T
(6)
(A
H
)
−1
= (A
−1
)
H
(7)
(A+B)
H
= A
H
+B
H
(8)
(AB)
H
= B
H
A
H
(9)
(ABC...)
H
= ...C
H
B
H
A
H
(10)
1.1 Trace and Determinants
Tr(A) =
¸
i
A
ii
(11)
Tr(A) =
¸
i
λ
i
, λ
i
= eig(A) (12)
Tr(A) = Tr(A
T
) (13)
Tr(AB) = Tr(BA) (14)
Tr(A+B) = Tr(A) + Tr(B) (15)
Tr(ABC) = Tr(BCA) = Tr(CAB) (16)
det(A) =
¸
i
λ
i
λ
i
= eig(A) (17)
det(cA) = c
n
det(A), if A ∈ R
n×n
(18)
det(AB) = det(A) det(B) (19)
det(A
−1
) = 1/ det(A) (20)
det(A
n
) = det(A)
n
(21)
det(I +uv
T
) = 1 +u
T
v (22)
det(I + εA)

= 1 + εTr(A), ε small (23)
1.2 The Special Case 2x2
Consider the matrix A
A =
¸
A
11
A
12
A
21
A
22

Determinant and trace
det(A) = A
11
A
22
−A
12
A
21
(24)
Tr(A) = A
11
+ A
22
(25)
Petersen & Pedersen, The Matrix Cookbook, Version: February 16, 2008, Page 5
1.2 The Special Case 2x2 1 BASICS
Eigenvalues
λ
2
−λ Tr(A) + det(A) = 0
λ
1
=
Tr(A) +

Tr(A)
2
−4 det(A)
2
λ
2
=
Tr(A) −

Tr(A)
2
−4 det(A)
2
λ
1
+ λ
2
= Tr(A) λ
1
λ
2
= det(A)
Eigenvectors
v
1

¸
A
12
λ
1
−A
11

v
2

¸
A
12
λ
2
−A
11

Inverse
A
−1
=
1
det(A)
¸
A
22
−A
12
−A
21
A
11

(26)
Petersen & Pedersen, The Matrix Cookbook, Version: February 16, 2008, Page 6
2 DERIVATIVES
2 Derivatives
This section is covering diﬀerentiation of a number of expressions with respect to
a matrix X. Note that it is always assumed that X has no special structure, i.e.
that the elements of X are independent (e.g. not symmetric, Toeplitz, positive
deﬁnite). See section 2.8 for diﬀerentiation of structured matrices. The basic
assumptions can be written in a formula as
∂X
kl
∂X
ij
= δ
ik
δ
lj
(27)
that is for e.g. vector forms,
¸
∂x
∂y

i
=
∂x
i
∂y
¸
∂x
∂y

i
=
∂x
∂y
i
¸
∂x
∂y

ij
=
∂x
i
∂y
j
The following rules are general and very useful when deriving the diﬀerential of
an expression ([18]):
∂A = 0 (A is a constant) (28)
∂(αX) = α∂X (29)
∂(X+Y) = ∂X+ ∂Y (30)
∂(Tr(X)) = Tr(∂X) (31)
∂(XY) = (∂X)Y+X(∂Y) (32)
∂(X◦ Y) = (∂X) ◦ Y+X◦ (∂Y) (33)
∂(X⊗Y) = (∂X) ⊗Y+X⊗(∂Y) (34)
∂(X
−1
) = −X
−1
(∂X)X
−1
(35)
∂(det(X)) = det(X)Tr(X
−1
∂X) (36)
∂(ln(det(X))) = Tr(X
−1
∂X) (37)
∂X
T
= (∂X)
T
(38)
∂X
H
= (∂X)
H
(39)
2.1 Derivatives of a Determinant
2.1.1 General form
∂ det(Y)
∂x
= det(Y)Tr
¸
Y
−1
∂Y
∂x

(40)
2.1.2 Linear forms
∂ det(X)
∂X
= det(X)(X
−1
)
T
(41)
∂ det(AXB)
∂X
= det(AXB)(X
−1
)
T
= det(AXB)(X
T
)
−1
(42)
Petersen & Pedersen, The Matrix Cookbook, Version: February 16, 2008, Page 7
2.2 Derivatives of an Inverse 2 DERIVATIVES
2.1.3 Square forms
If X is square and invertible, then
∂ det(X
T
AX)
∂X
= 2 det(X
T
AX)X
−T
(43)
If X is not square but A is symmetric, then
∂ det(X
T
AX)
∂X
= 2 det(X
T
AX)AX(X
T
AX)
−1
(44)
If X is not square and A is not symmetric, then
∂ det(X
T
AX)
∂X
= det(X
T
AX)(AX(X
T
AX)
−1
+A
T
X(X
T
A
T
X)
−1
) (45)
2.1.4 Other nonlinear forms
Some special cases are (See [9, 7])
∂ ln det(X
T
X)[
∂X
= 2(X
+
)
T
(46)
∂ ln det(X
T
X)
∂X
+
= −2X
T
(47)
∂ ln [ det(X)[
∂X
= (X
−1
)
T
= (X
T
)
−1
(48)
∂ det(X
k
)
∂X
= k det(X
k
)X
−T
(49)
2.2 Derivatives of an Inverse
¿From [26] we have the basic identity
∂Y
−1
∂x
= −Y
−1
∂Y
∂x
Y
−1
(50)
from which it follows
∂(X
−1
)
kl
∂X
ij
= −(X
−1
)
ki
(X
−1
)
jl
(51)
∂a
T
X
−1
b
∂X
= −X
−T
ab
T
X
−T
(52)
∂ det(X
−1
)
∂X
= −det(X
−1
)(X
−1
)
T
(53)
∂Tr(AX
−1
B)
∂X
= −(X
−1
BAX
−1
)
T
(54)
Petersen & Pedersen, The Matrix Cookbook, Version: February 16, 2008, Page 8
2.3 Derivatives of Eigenvalues 2 DERIVATIVES
2.3 Derivatives of Eigenvalues

∂X
¸
eig(X) =

∂X
Tr(X) = I (55)

∂X
¸
eig(X) =

∂X
det(X) = det(X)X
−T
(56)
2.4 Derivatives of Matrices, Vectors and Scalar Forms
2.4.1 First Order
∂x
T
a
∂x
=
∂a
T
x
∂x
= a (57)
∂a
T
Xb
∂X
= ab
T
(58)
∂a
T
X
T
b
∂X
= ba
T
(59)
∂a
T
Xa
∂X
=
∂a
T
X
T
a
∂X
= aa
T
(60)
∂X
∂X
ij
= J
ij
(61)
∂(XA)
ij
∂X
mn
= δ
im
(A)
nj
= (J
mn
A)
ij
(62)
∂(X
T
A)
ij
∂X
mn
= δ
in
(A)
mj
= (J
nm
A)
ij
(63)
2.4.2 Second Order

∂X
ij
¸
klmn
X
kl
X
mn
= 2
¸
kl
X
kl
(64)
∂b
T
X
T
Xc
∂X
= X(bc
T
+cb
T
) (65)
∂(Bx +b)
T
C(Dx +d)
∂x
= B
T
C(Dx +d) +D
T
C
T
(Bx +b) (66)
∂(X
T
BX)
kl
∂X
ij
= δ
lj
(X
T
B)
ki
+ δ
kj
(BX)
il
(67)
∂(X
T
BX)
∂X
ij
= X
T
BJ
ij
+J
ji
BX (J
ij
)
kl
= δ
ik
δ
jl
(68)
Petersen & Pedersen, The Matrix Cookbook, Version: February 16, 2008, Page 9
2.4 Derivatives of Matrices, Vectors and Scalar Forms 2 DERIVATIVES
See Sec 9.7 for useful properties of the Single-entry matrix J
ij
∂x
T
Bx
∂x
= (B+B
T
)x (69)
∂b
T
X
T
DXc
∂X
= D
T
Xbc
T
+DXcb
T
(70)

∂X
(Xb +c)
T
D(Xb +c) = (D+D
T
)(Xb +c)b
T
(71)
Assume W is symmetric, then

∂s
(x −As)
T
W(x −As) = −2A
T
W(x −As) (72)

∂x
(x −s)
T
W(x −s) = 2W(x −s) (73)

∂s
(x −s)
T
W(x −s) = −2W(x −s) (74)

∂x
(x −As)
T
W(x −As) = 2W(x −As) (75)

∂A
(x −As)
T
W(x −As) = −2W(x −As)s
T
(76)
2.4.3 Higher order and non-linear
∂(X
n
)
kl
∂X
ij
=
n−1
¸
r=0
(X
r
J
ij
X
n−1−r
)
kl
(77)
For proof of the above, see B.1.1.

∂X
a
T
X
n
b =
n−1
¸
r=0
(X
r
)
T
ab
T
(X
n−1−r
)
T
(78)

∂X
a
T
(X
n
)
T
X
n
b =
n−1
¸
r=0

X
n−1−r
ab
T
(X
n
)
T
X
r
+(X
r
)
T
X
n
ab
T
(X
n−1−r
)
T

(79)
See B.1.1 for a proof.
Assume s and r are functions of x, i.e. s = s(x), r = r(x), and that A is a
constant, then

∂x
s
T
Ar =
¸
∂s
∂x

T
Ar +
¸
∂r
∂x

T
A
T
s (80)
Petersen & Pedersen, The Matrix Cookbook, Version: February 16, 2008, Page 10
2.5 Derivatives of Traces 2 DERIVATIVES
Using the above we have for the gradient and the hessian
f = x
T
Ax +b
T
x (81)

x
f =
∂f
∂x
= (A+A
T
)x +b (82)

2
f
∂x∂x
T
= A+A
T
(83)
2.5 Derivatives of Traces
2.5.1 First Order

∂X
Tr(X) = I (84)

∂X
Tr(XA) = A
T
(85)

∂X
Tr(AXB) = A
T
B
T
(86)

∂X
Tr(AX
T
B) = BA (87)

∂X
Tr(X
T
A) = A (88)

∂X
Tr(AX
T
) = A (89)

∂X
Tr(A⊗X) = Tr(A)I (90)
Petersen & Pedersen, The Matrix Cookbook, Version: February 16, 2008, Page 11
2.5 Derivatives of Traces 2 DERIVATIVES
2.5.2 Second Order

∂X
Tr(X
2
) = 2X
T
(91)

∂X
Tr(X
2
B) = (XB+BX)
T
(92)

∂X
Tr(X
T
BX) = BX+B
T
X (93)

∂X
Tr(XBX
T
) = XB
T
+XB (94)

∂X
Tr(AXBX) = A
T
X
T
B
T
+B
T
X
T
A
T
(95)

∂X
Tr(X
T
X) = 2X (96)

∂X
Tr(BXX
T
) = (B+B
T
)X (97)

∂X
Tr(B
T
X
T
CXB) = C
T
XBB
T
+CXBB
T
(98)

∂X
Tr

X
T
BXC

= BXC+B
T
XC
T
(99)

∂X
Tr(AXBX
T
C) = A
T
C
T
XB
T
+CAXB (100)

∂X
Tr

(AXb +c)(AXb +c)
T

= 2A
T
(AXb +c)b
T
(101)

∂X
Tr(X⊗X) =

∂X
Tr(X)Tr(X) = 2Tr(X)I (102)
See [7].
2.5.3 Higher Order

∂X
Tr(X
k
) = k(X
k−1
)
T
(103)

∂X
Tr(AX
k
) =
k−1
¸
r=0
(X
r
AX
k−r−1
)
T
(104)

∂X
Tr

B
T
X
T
CXX
T
CXB

= CXX
T
CXBB
T
+C
T
XBB
T
X
T
C
T
X
+CXBB
T
X
T
CX
+C
T
XX
T
C
T
XBB
T
(105)
2.5.4 Other

∂X
Tr(AX
−1
B) = −(X
−1
BAX
−1
)
T
= −X
−T
A
T
B
T
X
−T
(106)
Petersen & Pedersen, The Matrix Cookbook, Version: February 16, 2008, Page 12
2.6 Derivatives of vector norms 2 DERIVATIVES
Assume B and C to be symmetric, then

∂X
Tr

(X
T
CX)
−1
A

= −(CX(X
T
CX)
−1
)(A+A
T
)(X
T
CX)
−1
(107)

∂X
Tr

(X
T
CX)
−1
(X
T
BX)

= −2CX(X
T
CX)
−1
X
T
BX(X
T
CX)
−1
+2BX(X
T
CX)
−1
(108)
See [7].
norms og matrix norms.
2.6 Derivatives of vector norms
2.6.1 Two-norm

∂x
[[x −a[[
2
=
x −a
[[x −a[[
2
(109)

∂x
x −a
|x −a|
2
=
I
|x −a|
2

(x −a)(x −a)
T
|x −a|
3
2
(110)
∂[[x[[
2
2
∂x
=
∂[[x
T
x[[
2
∂x
= 2x (111)
2.7 Derivatives of matrix norms
For more on matrix norms, see Sec. 10.5.
2.7.1 Frobenius norm

∂X
[[X[[
2
F
=

∂X
Tr(XX
H
) = 2X (112)
See (202).
2.8 Derivatives of Structured Matrices
Assume that the matrix A has some structure, i.e. symmetric, toeplitz, etc.
In that case the derivatives of the previous section does not apply in general.
Instead, consider the following general rule for diﬀerentiating a scalar function
f(A)
df
dA
ij
=
¸
kl
∂f
∂A
kl
∂A
kl
∂A
ij
= Tr
¸
¸
∂f
∂A

T
∂A
∂A
ij
¸
(113)
The matrix diﬀerentiated with respect to itself is in this document referred to
as the structure matrix of A and is deﬁned simply by
∂A
∂A
ij
= S
ij
(114)
If A has no special structure we have simply S
ij
= J
ij
, that is, the structure
matrix is simply the singleentry matrix. Many structures have a representation
in singleentry matrices, see Sec. 9.7.6 for more examples of structure matrices.
Petersen & Pedersen, The Matrix Cookbook, Version: February 16, 2008, Page 13
2.8 Derivatives of Structured Matrices 2 DERIVATIVES
2.8.1 The Chain Rule
Sometimes the objective is to ﬁnd the derivative of a matrix which is a function
of another matrix. Let U = f(X), the goal is to ﬁnd the derivative of the
function g(U) with respect to X:
∂g(U)
∂X
=
∂g(f(X))
∂X
(115)
Then the Chain Rule can then be written the following way:
∂g(U)
∂X
=
∂g(U)
∂x
ij
=
M
¸
k=1
N
¸
l=1
∂g(U)
∂u
kl
∂u
kl
∂x
ij
(116)
Using matrix notation, this can be written as:
∂g(U)
∂X
ij
= Tr

(
∂g(U)
∂U
)
T
∂U
∂X
ij

. (117)
2.8.2 Symmetric
If A is symmetric, then S
ij
= J
ij
+J
ji
−J
ij
J
ij
and therefore
df
dA
=
¸
∂f
∂A

+
¸
∂f
∂A

T
−diag
¸
∂f
∂A

(118)
That is, e.g., ([5]):
∂Tr(AX)
∂X
= A+A
T
−(A◦ I), see (122) (119)
∂ det(X)
∂X
= det(X)(2X
−1
−(X
−1
◦ I)) (120)
∂ ln det(X)
∂X
= 2X
−1
−(X
−1
◦ I) (121)
2.8.3 Diagonal
If X is diagonal, then ([18]):
∂Tr(AX)
∂X
= A◦ I (122)
2.8.4 Toeplitz
Like symmetric matrices and diagonal matrices also Toeplitz matrices has a
special structure which should be taken into account when the derivative with
respect to a matrix with Toeplitz structure.
Petersen & Pedersen, The Matrix Cookbook, Version: February 16, 2008, Page 14
2.8 Derivatives of Structured Matrices 2 DERIVATIVES
∂Tr(AT)
∂T
(123)
=
∂Tr(TA)
∂T
=

Tr(A) Tr([A
T
]
n1
) Tr([[A
T
]
1n
]
n−1,2
) · · · A
n1
Tr([A
T
]
1n
)) Tr(A)
.
.
.
.
.
.
.
.
.
Tr([[A
T
]
1n
]
2,n−1
)
.
.
.
.
.
.
.
.
. Tr([[A
T
]
1n
]
n−1,2
)
.
.
.
.
.
.
.
.
.
.
.
. Tr([A
T
]
n1
)
A
1n
· · · Tr([[A
T
]
1n
]
2,n−1
) Tr([A
T
]
1n
)) Tr(A)
¸
¸
¸
¸
¸
¸
¸
≡ α(A)
As it can be seen, the derivative α(A) also has a Toeplitz structure. Each value
in the diagonal is the sum of all the diagonal valued in A, the values in the
diagonals next to the main diagonal equal the sum of the diagonal next to the
main diagonal in A
T
. This result is only valid for the unconstrained Toeplitz
matrix. If the Toeplitz matrix also is symmetric, the same derivative yields
∂Tr(AT)
∂T
=
∂Tr(TA)
∂T
= α(A) +α(A)
T
−α(A) ◦ I (124)
Petersen & Pedersen, The Matrix Cookbook, Version: February 16, 2008, Page 15
3 INVERSES
3 Inverses
3.1 Basic
3.1.1 Deﬁnition
The inverse A
−1
of a matrix A ∈ C
n×n
is deﬁned such that
AA
−1
= A
−1
A = I, (125)
where I is the nn identity matrix. If A
−1
exists, A is said to be nonsingular.
Otherwise, A is said to be singular (see e.g. [12]).
The submatrix of a matrix A, denoted by [A]
ij
is a (n − 1) (n − 1) matrix
obtained by deleting the ith row and the jth column of A. The (i, j) cofactor
of a matrix is deﬁned as
cof(A, i, j) = (−1)
i+j
det([A]
ij
), (126)
The matrix of cofactors can be created from the cofactors
cof(A) =

cof(A, 1, 1) cof(A, 1, n)
.
.
. cof(A, i, j)
.
.
.
cof(A, n, 1) cof(A, n, n)
¸
¸
¸
¸
¸
¸
¸
(127)
The adjoint matrix is the transpose of the cofactor matrix
T
, (128)
3.1.3 Determinant
The determinant of a matrix A ∈ C
n×n
is deﬁned as (see [12])
det(A) =
n
¸
j=1
(−1)
j+1
A
1j
det ([A]
1j
) (129)
=
n
¸
j=1
A
1j
cof(A, 1, j). (130)
3.1.4 Construction
The inverse matrix can be constructed, using the adjoint matrix, by
A
−1
=
1
det(A)
For the case of 2 2 matrices, see section 1.2.
Petersen & Pedersen, The Matrix Cookbook, Version: February 16, 2008, Page 16
3.2 Exact Relations 3 INVERSES
3.1.5 Condition number
The condition number of a matrix c(A) is the ratio between the largest and the
smallest singular value of a matrix (see Section 5.2 on singular values),
c(A) =
d
+
d

(132)
The condition number can be used to measure how singular a matrix is. If the
condition number is large, it indicates that the matrix is nearly singular. The
condition number can also be estimated from the matrix norms. Here
c(A) = |A| |A
−1
|, (133)
where | | is a norm such as e.g the 1-norm, the 2-norm, the ∞-norm or the
Frobenius norm (see Sec 10.5 for more on matrix norms).
The 2-norm of A equals

(max(eig(A
H
A))) [12, p.57]. For a symmetric
matrix, this reduces to [[A[[
2
= max([eig(A)[) [12, p.394]. If the matrix ia
symmetric and positive deﬁnite, [[A[[
2
= max(eig(A)). The condition number
based on the 2-norm thus reduces to
|A|
2
|A
−1
|
2
= max(eig(A)) max(eig(A
−1
)) =
max(eig(A))
min(eig(A))
. (134)
3.2 Exact Relations
3.2.1 Basic
(AB)
−1
= B
−1
A
−1
(135)
3.2.2 The Woodbury identity
The Woodbury identity comes in many variants. The latter of the two can be
found in [12]
(A+CBC
T
)
−1
= A
−1
−A
−1
C(B
−1
+C
T
A
−1
C)
−1
C
T
A
−1
(136)
(A+UBV)
−1
= A
−1
−A
−1
U(B
−1
+VA
−1
U)
−1
VA
−1
(137)
If P, R are positive deﬁnite, then (see [29])
(P
−1
+B
T
R
−1
B)
−1
B
T
R
−1
= PB
T
(BPB
T
+R)
−1
(138)
3.2.3 The Kailath Variant
(A+BC)
−1
= A
−1
−A
−1
B(I +CA
−1
B)
−1
CA
−1
(139)
See [4, page 153].
Petersen & Pedersen, The Matrix Cookbook, Version: February 16, 2008, Page 17
3.2 Exact Relations 3 INVERSES
3.2.4 The Searle Set of Identities
The following set of identities, can be found in [24, page 151],
(I +A
−1
)
−1
= A(A+I)
−1
(140)
(A+BB
T
)
−1
B = A
−1
B(I +B
T
A
−1
B)
−1
(141)
(A
−1
+B
−1
)
−1
= A(A+B)
−1
B = B(A+B)
−1
A (142)
A−A(A+B)
−1
A = B−B(A+B)
−1
B (143)
A
−1
+B
−1
= A
−1
(A+B)B
−1
(144)
(I +AB)
−1
= I −A(I +BA)
−1
B (145)
(I +AB)
−1
A = A(I +BA)
−1
(146)
3.2.5 Rank-1 update of Moore-Penrose Inverse
The following is a rank-1 update for the Moore-Penrose pseudo-inverse of real
valued matrices and proof can be found in [17]. The matrix G is deﬁned below:
(A+cd
T
)
+
= A
+
+G (147)
Using the the notation
β = 1 +d
T
A
+
c (148)
v = A
+
c (149)
n = (A
+
)
T
d (150)
w = (I −AA
+
)c (151)
m = (I −A
+
A)
T
d (152)
the solution is given as six diﬀerent cases, depending on the entities [[w[[,
[[m[[, and β. Please note, that for any (column) vector v it holds that v
+
=
v
T
(v
T
v)
−1
=
v
T
||v||
2
. The solution is:
Case 1 of 6: If [[w[[ = 0 and [[m[[ = 0. Then
G = −vw
+
−(m
+
)
T
n
T
+ β(m
+
)
T
w
+
(153)
= −
1
[[w[[
2
vw
T

1
[[m[[
2
mn
T
+
β
[[m[[
2
[[w[[
2
mw
T
(154)
Case 2 of 6: If [[w[[ = 0 and [[m[[ = 0 and β = 0. Then
G = −vv
+
A
+
−(m
+
)
T
n
T
(155)
= −
1
[[v[[
2
vv
T
A
+

1
[[m[[
2
mn
T
(156)
Petersen & Pedersen, The Matrix Cookbook, Version: February 16, 2008, Page 18
3.3 Implication on Inverses 3 INVERSES
Case 3 of 6: If [[w[[ = 0 and β = 0. Then
G =
1
β
mv
T
A
+

β
[[v[[
2
[[m[[
2
+[β[
2

[[v[[
2
β
m+v

[[m[[
2
β
(A
+
)
T
v +n

T
(157)
Case 4 of 6: If [[w[[ = 0 and [[m[[ = 0 and β = 0. Then
G = −A
+
nn
+
−vw
+
(158)
= −
1
[[n[[
2
A
+
nn
T

1
[[w[[
2
vw
T
(159)
Case 5 of 6: If [[m[[ = 0 and β = 0. Then
G =
1
β
A
+
nw
T

β
[[n[[
2
[[w[[
2
+[β[
2

[[w[[
2
β
A
+
n +v

[[n[[
2
β
w+n

T
(160)
Case 6 of 6: If [[w[[ = 0 and [[m[[ = 0 and β = 0. Then
G = −vv
+
A
+
−A
+
nn
+
+v
+
A
+
nvn
+
(161)
= −
1
[[v[[
2
vv
T
A
+

1
[[n[[
2
A
+
nn
T
+
v
T
A
+
n
[[v[[
2
[[n[[
2
vn
T
(162)
3.3 Implication on Inverses
If (A+B)
−1
= A
−1
+B
−1
then AB
−1
A = BA
−1
B (163)
See [24].
3.3.1 A PosDef identity
Assume P, R to be positive deﬁnite and invertible, then
(P
−1
+B
T
R
−1
B)
−1
B
T
R
−1
= PB
T
(BPB
T
+R)
−1
(164)
See [29].
3.4 Approximations
The following is a Taylor expansion
(I +A)
−1
= I −A+A
2
−A
3
+ ... (165)
The following approximation is from [21] and holds when A large and symmetric
A−A(I +A)
−1
A

= I −A
−1
(166)
If σ
2
is small compared to Q and M then
(Q+ σ
2
M)
−1

= Q
−1
−σ
2
Q
−1
MQ
−1
(167)
Petersen & Pedersen, The Matrix Cookbook, Version: February 16, 2008, Page 19
3.5 Generalized Inverse 3 INVERSES
3.5 Generalized Inverse
3.5.1 Deﬁnition
A generalized inverse matrix of the matrix A is any matrix A

such that (see
[25])
AA

A = A (168)
The matrix A

is not unique.
3.6 Pseudo Inverse
3.6.1 Deﬁnition
The pseudo inverse (or Moore-Penrose inverse) of a matrix A is the matrix A
+
that fulﬁls
I AA
+
A = A
II A
+
AA
+
= A
+
III AA
+
symmetric
IV A
+
A symmetric
The matrix A
+
is unique and does always exist. Note that in case of com-
plex matrices, the symmetric condition is substituted by a condition of being
Hermitian.
3.6.2 Properties
Assume A
+
to be the pseudo-inverse of A, then (See [3])
(A
+
)
+
= A (169)
(A
T
)
+
= (A
+
)
T
(170)
(cA)
+
= (1/c)A
+
(171)
(A
T
A)
+
= A
+
(A
T
)
+
(172)
(AA
T
)
+
= (A
T
)
+
A
+
(173)
Assume A to have full rank, then
(AA
+
)(AA
+
) = AA
+
(174)
(A
+
A)(A
+
A) = A
+
A (175)
Tr(AA
+
) = rank(AA
+
) (See [25]) (176)
Tr(A
+
A) = rank(A
+
A) (See [25]) (177)
3.6.3 Construction
Assume that A has full rank, then
Petersen & Pedersen, The Matrix Cookbook, Version: February 16, 2008, Page 20
3.6 Pseudo Inverse 3 INVERSES
A n n Square rank(A) = n ⇒ A
+
= A
−1
A n m Broad rank(A) = n ⇒ A
+
= A
T
(AA
T
)
−1
A n m Tall rank(A) = m ⇒ A
+
= (A
T
A)
−1
A
T
Assume Adoes not have full rank, i.e. Ais nm and rank(A) = r < min(n, m).
The pseudo inverse A
+
can be constructed from the singular value decomposi-
tion A = UDV
T
, by
A
+
= V
r
D
−1
r
U
T
r
(178)
where U
r
, D
r
, and V
r
are the matrices with the degenerated rows and columns
deleted. A diﬀerent way is this: There do always exist two matrices C n r
and D r m of rank r, such that A = CD. Using these matrices it holds that
A
+
= D
T
(DD
T
)
−1
(C
T
C)
−1
C
T
(179)
See [3].
Petersen & Pedersen, The Matrix Cookbook, Version: February 16, 2008, Page 21
4 COMPLEX MATRICES
4 Complex Matrices
4.1 Complex Derivatives
In order to diﬀerentiate an expression f(z) with respect to a complex z, the
Cauchy-Riemann equations have to be satisﬁed ([7]):
df(z)
dz
=
∂'(f(z))
∂'z
+ i
∂·(f(z))
∂'z
(180)
and
df(z)
dz
= −i
∂'(f(z))
∂·z
+
∂·(f(z))
∂·z
(181)
or in a more compact form:
∂f(z)
∂·z
= i
∂f(z)
∂'z
. (182)
A complex function that satisﬁes the Cauchy-Riemann equations for points in a
region R is said yo be analytic in this region R. In general, expressions involving
complex conjugate or conjugate transpose do not satisfy the Cauchy-Riemann
equations. In order to avoid this problem, a more generalized deﬁnition of
complex derivative is used ([23], [6]):
• Generalized Complex Derivative:
df(z)
dz
=
1
2

∂f(z)
∂'z
−i
∂f(z)
∂·z

. (183)
• Conjugate Complex Derivative
df(z)
dz

=
1
2

∂f(z)
∂'z
+ i
∂f(z)
∂·z

. (184)
The Generalized Complex Derivative equals the normal derivative, when f is an
analytic function. For a non-analytic function such as f(z) = z

, the derivative
equals zero. The Conjugate Complex Derivative equals zero, when f is an
analytic function. The Conjugate Complex Derivative has e.g been used by [20]
Notice:
df(z)
dz
=
∂f(z)
∂'z
+ i
∂f(z)
∂·z
. (185)
• Complex Gradient Vector: If f is a real function of a complex vector z,
then the complex gradient vector is given by ([14, p. 798])
∇f(z) = 2
df(z)
dz

(186)
=
∂f(z)
∂'z
+ i
∂f(z)
∂·z
.
Petersen & Pedersen, The Matrix Cookbook, Version: February 16, 2008, Page 22
4.1 Complex Derivatives 4 COMPLEX MATRICES
• Complex Gradient Matrix: If f is a real function of a complex matrix Z,
then the complex gradient matrix is given by ([2])
∇f(Z) = 2
df(Z)
dZ

(187)
=
∂f(Z)
∂'Z
+ i
∂f(Z)
∂·Z
.
These expressions can be used for gradient descent algorithms.
4.1.1 The Chain Rule for complex numbers
The chain rule is a little more complicated when the function of a complex
u = f(x) is non-analytic. For a non-analytic function, the following chain rule
can be applied ([7])
∂g(u)
∂x
=
∂g
∂u
∂u
∂x
+
∂g
∂u

∂u

∂x
(188)
=
∂g
∂u
∂u
∂x
+

∂g

∂u

∂u

∂x
Notice, if the function is analytic, the second term reduces to zero, and the func-
tion is reduced to the normal well-known chain rule. For the matrix derivative
of a scalar function g(U), the chain rule can be written the following way:
∂g(U)
∂X
=
Tr((
∂g(U)
∂U
)
T
∂U)
∂X
+
Tr((
∂g(U)
∂U

)
T
∂U

)
∂X
. (189)
4.1.2 Complex Derivatives of Traces
If the derivatives involve complex numbers, the conjugate transpose is often in-
volved. The most useful way to show complex derivative is to show the derivative
with respect to the real and the imaginary part separately. An easy example is:
∂Tr(X

)
∂'X
=
∂Tr(X
H
)
∂'X
= I (190)
i
∂Tr(X

)
∂·X
= i
∂Tr(X
H
)
∂·X
= I (191)
Since the two results have the same sign, the conjugate complex derivative (184)
should be used.
∂Tr(X)
∂'X
=
∂Tr(X
T
)
∂'X
= I (192)
i
∂Tr(X)
∂·X
= i
∂Tr(X
T
)
∂·X
= −I (193)
Here, the two results have diﬀerent signs, and the generalized complex derivative
(183) should be used. Hereby, it can be seen that (85) holds even if X is a
Petersen & Pedersen, The Matrix Cookbook, Version: February 16, 2008, Page 23
4.1 Complex Derivatives 4 COMPLEX MATRICES
complex number.
∂Tr(AX
H
)
∂'X
= A (194)
i
∂Tr(AX
H
)
∂·X
= A (195)
∂Tr(AX

)
∂'X
= A
T
(196)
i
∂Tr(AX

)
∂·X
= A
T
(197)
∂Tr(XX
H
)
∂'X
=
∂Tr(X
H
X)
∂'X
= 2'X (198)
i
∂Tr(XX
H
)
∂·X
= i
∂Tr(X
H
X)
∂·X
= i2·X (199)
By inserting (198) and (199) in (183) and (184), it can be seen that
∂Tr(XX
H
)
∂X
= X

(200)
∂Tr(XX
H
)
∂X

= X (201)
Since the function Tr(XX
H
) is a real function of the complex matrix X, the
complex gradient matrix (187) is given by
∇Tr(XX
H
) = 2
∂Tr(XX
H
)
∂X

= 2X (202)
4.1.3 Complex Derivative Involving Determinants
Here, a calculation example is provided. The objective is to ﬁnd the derivative of
det(X
H
AX) with respect to X ∈ C
m×n
. The derivative is found with respect to
the real part and the imaginary part of X, by use of (36) and (32), det(X
H
AX)
can be calculated as (see App. B.1.2 for details)
∂ det(X
H
AX)
∂X
=
1
2

∂ det(X
H
AX)
∂'X
−i
∂ det(X
H
AX)
∂·X

= det(X
H
AX)

(X
H
AX)
−1
X
H
A

T
(203)
and the complex conjugate derivative yields
∂ det(X
H
AX)
∂X

=
1
2

∂ det(X
H
AX)
∂'X
+ i
∂ det(X
H
AX)
∂·X

= det(X
H
AX)AX(X
H
AX)
−1
(204)
Petersen & Pedersen, The Matrix Cookbook, Version: February 16, 2008, Page 24
5 DECOMPOSITIONS
5 Decompositions
5.1 Eigenvalues and Eigenvectors
5.1.1 Deﬁnition
The eigenvectors v and eigenvalues λ are the ones satisfying
Av
i
= λ
i
v
i
(205)
AV = VD, (D)
ij
= δ
ij
λ
i
, (206)
where the columns of V are the vectors v
i
5.1.2 General Properties
Assume that A ∈ R
n×m
and B ∈ R
m×n
,
eig(AB) = eig(BA) (207)
A is n m ⇒ At most min(n, m) distinct λ
i
(208)
rank(A) = r ⇒ At most r non-zero λ
i
(209)
5.1.3 Symmetric
Assume A is symmetric, then
VV
T
= I (i.e. V is orthogonal) (210)
λ
i
∈ R (i.e. λ
i
is real) (211)
Tr(A
p
) =
¸
i
λ
p
i
(212)
eig(I + cA) = 1 + cλ
i
(213)
eig(A−cI) = λ
i
−c (214)
eig(A
−1
) = λ
−1
i
(215)
For a symmetric, positive matrix A,
eig(A
T
A) = eig(AA
T
) = eig(A) ◦ eig(A) (216)
5.2 Singular Value Decomposition
Any n m matrix A can be written as
A = UDV
T
, (217)
where
U = eigenvectors of AA
T
n n
D =

diag(eig(AA
T
)) n m
V = eigenvectors of A
T
A mm
(218)
Petersen & Pedersen, The Matrix Cookbook, Version: February 16, 2008, Page 25
5.2 Singular Value Decomposition 5 DECOMPOSITIONS
5.2.1 Symmetric Square decomposed into squares
Assume A to be n n and symmetric. Then

A

=

V

D

V
T

, (219)
where D is diagonal with the eigenvalues of A, and V is orthogonal and the
eigenvectors of A.
5.2.2 Square decomposed into squares
Assume A ∈ R
n×n
. Then

A

=

V

D

U
T

, (220)
where D is diagonal with the square root of the eigenvalues of AA
T
, V is the
eigenvectors of AA
T
and U
T
is the eigenvectors of A
T
A.
5.2.3 Square decomposed into rectangular
Assume V

D

U
T

= 0 then we can expand the SVD of A into

A

=

V V

¸
D 0
0 D

¸
U
T
U
T

, (221)
where the SVD of A is A = VDU
T
.
5.2.4 Rectangular decomposition I
Assume A is n m, V is n n, D is n n, U
T
is n m

A

=

V

D

U
T

, (222)
where D is diagonal with the square root of the eigenvalues of AA
T
, V is the
eigenvectors of AA
T
and U
T
is the eigenvectors of A
T
A.
5.2.5 Rectangular decomposition II
Assume A is n m, V is n m, D is mm, U
T
is mm

A

=

V

D
¸
¸

U
T
¸
¸
(223)
5.2.6 Rectangular decomposition III
Assume A is n m, V is n n, D is n m, U
T
is mm

A

=

V

D

U
T
¸
¸
, (224)
where D is diagonal with the square root of the eigenvalues of AA
T
, V is the
eigenvectors of AA
T
and U
T
is the eigenvectors of A
T
A.
Petersen & Pedersen, The Matrix Cookbook, Version: February 16, 2008, Page 26
5.3 Triangular Decomposition 5 DECOMPOSITIONS
5.3 Triangular Decomposition
5.3.1 Cholesky-decomposition
Assume A is positive deﬁnite, then
A = B
T
B, (225)
where B is a unique upper triangular matrix.
Petersen & Pedersen, The Matrix Cookbook, Version: February 16, 2008, Page 27
6 STATISTICS AND PROBABILITY
6 Statistics and Probability
6.1 Deﬁnition of Moments
Assume x ∈ R
n×1
is a random variable
6.1.1 Mean
The vector of means, m, is deﬁned by
(m)
i
= 'x
i
` (226)
6.1.2 Covariance
The matrix of covariance M is deﬁned by
(M)
ij
= '(x
i
−'x
i
`)(x
j
−'x
j
`)` (227)
or alternatively as
M = '(x −m)(x −m)
T
` (228)
6.1.3 Third moments
The matrix of third centralized moments – in some contexts referred to as
coskewness – is deﬁned using the notation
m
(3)
ijk
= '(x
i
−'x
i
`)(x
j
−'x
j
`)(x
k
−'x
k
`)` (229)
as
M
3
=

m
(3)
::1
m
(3)
::2
...m
(3)
::n

(230)
where ’:’ denotes all elements within the given index. M
3
can alternatively be
expressed as
M
3
= '(x −m)(x −m)
T
⊗(x −m)
T
` (231)
6.1.4 Fourth moments
The matrix of fourth centralized moments – in some contexts referred to as
cokurtosis – is deﬁned using the notation
m
(4)
ijkl
= '(x
i
−'x
i
`)(x
j
−'x
j
`)(x
k
−'x
k
`)(x
l
−'x
l
`)` (232)
as
M
4
=

m
(4)
::11
m
(4)
::21
...m
(4)
::n1
[m
(4)
::12
m
(4)
::22
...m
(4)
::n2
[...[m
(4)
::1n
m
(4)
::2n
...m
(4)
::nn

(233)
or alternatively as
M
4
= '(x −m)(x −m)
T
⊗(x −m)
T
⊗(x −m)
T
` (234)
Petersen & Pedersen, The Matrix Cookbook, Version: February 16, 2008, Page 28
6.2 Expectation of Linear Combinations 6 STATISTICS AND PROBABILITY
6.2 Expectation of Linear Combinations
6.2.1 Linear Forms
Assume X and x to be a matrix and a vector of random variables. Then (see
See [25])
E[AXB+C] = AE[X]B+C (235)
Var[Ax] = AVar[x]A
T
(236)
Cov[Ax, By] = ACov[x, y]B
T
(237)
Assume x to be a stochastic vector with mean m, then (see [7])
E[Ax +b] = Am+b (238)
E[Ax] = Am (239)
E[x +b] = m+b (240)
Assume A is symmetric, c = E[x] and Σ = Var[x]. Assume also that all
coordinates x
i
are independent, have the same central moments µ
1
, µ
2
, µ
3
, µ
4
and denote a = diag(A). Then (See [25])
E[x
T
Ax] = Tr(AΣ) +c
T
Ac (241)
Var[x
T
Ax] = 2µ
2
2
Tr(A
2
) + 4µ
2
c
T
A
2
c + 4µ
3
c
T
Aa + (µ
4
−3µ
2
2
)a
T
a (242)
Also, assume x to be a stochastic vector with mean m, and covariance M. Then
(see [7])
E[(Ax +a)(Bx +b)
T
] = AMB
T
+ (Am+a)(Bm+b)
T
(243)
E[xx
T
] = M+mm
T
(244)
E[xa
T
x] = (M+mm
T
)a (245)
E[x
T
ax
T
] = a
T
(M+mm
T
) (246)
E[(Ax)(Ax)
T
] = A(M+mm
T
)A
T
(247)
E[(x +a)(x +a)
T
] = M+ (m+a)(m+a)
T
(248)
E[(Ax +a)
T
(Bx +b)] = Tr(AMB
T
) + (Am+a)
T
(Bm+b) (249)
E[x
T
x] = Tr(M) +m
T
m (250)
E[x
T
Ax] = Tr(AM) +m
T
Am (251)
E[(Ax)
T
(Ax)] = Tr(AMA
T
) + (Am)
T
(Am) (252)
E[(x +a)
T
(x +a)] = Tr(M) + (m+a)
T
(m+a) (253)
See [7].
Petersen & Pedersen, The Matrix Cookbook, Version: February 16, 2008, Page 29
6.3 Weighted Scalar Variable 6 STATISTICS AND PROBABILITY
6.2.3 Cubic Forms
Assume x to be a stochastic vector with independent coordinates, mean m,
covariance M and central moments v
3
= E[(x −m)
3
]. Then (see [7])
E[(Ax +a)(Bx +b)
T
T
C)v
3
+Tr(BMC
T
)(Am+a)
+AMC
T
(Bm+b)
+(AMB
T
+ (Am+a)(Bm+b)
T
)(Cm+c)
E[xx
T
x] = v
3
+ 2Mm+ (Tr(M) +m
T
m)m
E[(Ax +a)(Ax +a)
T
T
A)v
3
+[2AMA
T
+ (Ax +a)(Ax +a)
T
](Am+a)
+Tr(AMA
T
)(Am+a)
E[(Ax +a)b
T
(Cx +c)(Dx +d)
T
] = (Ax +a)b
T
(CMD
T
+ (Cm+c)(Dm+d)
T
)
+(AMC
T
+ (Am+a)(Cm+c)
T
)b(Dm+d)
T
+b
T
(Cm+c)(AMD
T
−(Am+a)(Dm+d)
T
)
6.3 Weighted Scalar Variable
Assume x ∈ R
n×1
is a random variable, w ∈ R
n×1
is a vector of constants and
y is the linear combination y = w
T
x. Assume further that m, M
2
, M
3
, M
4
denotes the mean, covariance, and central third and fourth moment matrix of
the variable x. Then it holds that
'y` = w
T
m (254)
'(y −'y`)
2
` = w
T
M
2
w (255)
'(y −'y`)
3
` = w
T
M
3
w⊗w (256)
'(y −'y`)
4
` = w
T
M
4
w⊗w⊗w (257)
Petersen & Pedersen, The Matrix Cookbook, Version: February 16, 2008, Page 30
7 MULTIVARIATE DISTRIBUTIONS
7 Multivariate Distributions
7.1 Student’s t
The density of a Student-t distributed vector t ∈ R
P×1
, is given by
p(t[µ, Σ, ν) = (πν)
−P/2
Γ(
ν+P
2
)
Γ(ν/2)
det(Σ)
−1/2

1 + ν
−1
(t −µ)
T
Σ
−1
(t −µ)

(ν+P)/2
(258)
where µ is the location, the scale matrix Σ is symmetric, positive deﬁnite, ν
is the degrees of freedom, and Γ denotes the gamma function. For ν = 1, the
Student-t distribution becomes the Cauchy distribution (see sec 7.2).
7.1.1 Mean
E(t) = µ, ν > 1 (259)
7.1.2 Variance
cov(t) =
ν
ν −2
Σ, ν > 2 (260)
7.1.3 Mode
The notion mode meaning the position of the most probable value
mode(t) = µ (261)
7.1.4 Full Matrix Version
If instead of a vector t ∈ R
P×1
one has a matrix T ∈ R
P×N
, then the Student-t
distribution for T is
p(T[M, Ω, Σ, ν) = π
−NP/2
P
¸
p=1
Γ[(ν + P −p + 1)/2]
Γ[(ν −p + 1)/2]

ν det(Ω)
−ν/2
det(Σ)
−N/2

det

−1
+ (T−M)Σ
−1
(T−M)
T

−(ν+P)/2
(262)
where M is the location, Ω is the rescaling matrix, Σ is positive deﬁnite, ν is
the degrees of freedom, and Γ denotes the gamma function.
7.2 Cauchy
The density function for a Cauchy distributed vector t ∈ R
P×1
, is given by
p(t[µ, Σ) = π
−P/2
Γ(
1+P
2
)
Γ(1/2)
det(Σ)
−1/2

1 + (t −µ)
T
Σ
−1
(t −µ)

(1+P)/2
(263)
where µ is the location, Σ is positive deﬁnite, and Γ denotes the gamma func-
tion. The Cauchy distribution is a special case of the Student-t distribution.
Petersen & Pedersen, The Matrix Cookbook, Version: February 16, 2008, Page 31
7.3 Gaussian 7 MULTIVARIATE DISTRIBUTIONS
7.3 Gaussian
See sec. 8.
7.4 Multinomial
If the vector n contains counts, i.e. (n)
i
∈ 0, 1, 2, ..., then the discrete multino-
mial disitrbution for n is given by
P(n[a, n) =
n!
n
1
! . . . n
d
!
d
¸
i
a
ni
i
,
d
¸
i
n
i
= n (264)
where a
i
are probabilities, i.e. 0 ≤ a
i
≤ 1 and
¸
i
a
i
= 1.
7.5 Dirichlet
The Dirichlet distribution is a kind of “inverse” distribution compared to the
multinomial distribution on the bounded continuous variate x = [x
1
, . . . , x
P
]
[16, p. 44]
p(x[α) =
Γ

¸
P
p
α
p

¸
P
p
Γ(α
p
)
P
¸
p
x
αp−1
p
7.6 Normal-Inverse Gamma
7.7 Wishart
The central Wishart distribution for M∈ R
P×P
, M is positive deﬁnite, where
m can be regarded as a degree of freedom parameter [16, equation 3.8.1] [8,
section 2.5],[11]
p(M[Σ, m) =
1
2
mP/2
π
P(P−1)/4
¸
P
p
Γ[
1
2
(m + 1 −p)]

det(Σ)
−m/2
det(M)
(m−P−1)/2

exp
¸

1
2
Tr(Σ
−1
M)

(265)
7.7.1 Mean
E(M) = mΣ (266)
Petersen & Pedersen, The Matrix Cookbook, Version: February 16, 2008, Page 32
7.8 Inverse Wishart 7 MULTIVARIATE DISTRIBUTIONS
7.8 Inverse Wishart
The (normal) Inverse Wishart distribution for M ∈ R
P×P
, M is positive deﬁ-
nite, where m can be regarded as a degree of freedom parameter [11]
p(M[Σ, m) =
1
2
mP/2
π
P(P−1)/4
¸
P
p
Γ[
1
2
(m + 1 −p)]

det(Σ)
m/2
det(M)
−(m−P−1)/2

exp
¸

1
2
Tr(ΣM
−1
)

(267)
7.8.1 Mean
E(M) = Σ
1
m−P −1
(268)
Petersen & Pedersen, The Matrix Cookbook, Version: February 16, 2008, Page 33
8 GAUSSIANS
8 Gaussians
8.1 Basics
8.1.1 Density and normalization
The density of x ∼ ^(m, Σ) is
p(x) =
1

det(2πΣ)
exp
¸

1
2
(x −m)
T
Σ
−1
(x −m)

(269)
Note that if x is d-dimensional, then det(2πΣ) = (2π)
d
det(Σ).
Integration and normalization

exp
¸

1
2
(x −m)
T
Σ
−1
(x −m)

dx =

det(2πΣ)

exp
¸

1
2
x
T
Σ
−1
x +m
T
Σ
−1
x

dx =

det(2πΣ) exp
¸
1
2
m
T
Σ
−1
m

exp
¸

1
2
x
T
Ax +c
T
x

dx =

det(2πA
−1
) exp
¸
1
2
c
T
A
−T
c

If X = [x
1
x
2
...x
n
] and X = [c
1
c
2
...c
n
], then

exp
¸

1
2
Tr(X
T
AX) + Tr(C
T
X)

dX =

det(2πA
−1
)
n
exp
¸
1
2
Tr(C
T
A
−1
C)

The derivatives of the density are
∂p(x)
∂x
= −p(x)Σ
−1
(x −m) (270)

2
p
∂x∂x
T
= p(x)

Σ
−1
(x −m)(x −m)
T
Σ
−1
−Σ
−1

(271)
8.1.2 Marginal Distribution
Assume x ∼ ^
x
(µ, Σ) where
x =
¸
x
a
x
b

µ =
¸
µ
a
µ
b

Σ =
¸
Σ
a
Σ
c
Σ
T
c
Σ
b

(272)
then
p(x
a
) = ^
xa

a
, Σ
a
) (273)
p(x
b
) = ^
x
b

b
, Σ
b
) (274)
Petersen & Pedersen, The Matrix Cookbook, Version: February 16, 2008, Page 34
8.1 Basics 8 GAUSSIANS
8.1.3 Conditional Distribution
Assume x ∼ ^
x
(µ, Σ) where
x =
¸
x
a
x
b

µ =
¸
µ
a
µ
b

Σ =
¸
Σ
a
Σ
c
Σ
T
c
Σ
b

(275)
then
p(x
a
[x
b
) = ^
xa
(ˆ µ
a
,
ˆ
Σ
a
)

ˆ µ
a
= µ
a

c
Σ
−1
b
(x
b
−µ
b
)
ˆ
Σ
a
= Σ
a
−Σ
c
Σ
−1
b
Σ
T
c
(276)
p(x
b
[x
a
) = ^
x
b
(ˆ µ
b
,
ˆ
Σ
b
)

ˆ µ
b
= µ
b

T
c
Σ
−1
a
(x
a
−µ
a
)
ˆ
Σ
b
= Σ
b
−Σ
T
c
Σ
−1
a
Σ
c
(277)
Note, that the covariance matrices are the Schur complement of the block ma-
trix, see 9.1.5 for details.
8.1.4 Linear combination
Assume x ∼ ^(m
x
, Σ
x
) and y ∼ ^(m
y
, Σ
y
) then
Ax +By +c ∼ ^(Am
x
+Bm
y
+c, AΣ
x
A
T
+BΣ
y
B
T
) (278)
8.1.5 Rearranging Means
^
Ax
[m, Σ] =

det(2π(A
T
Σ
−1
A)
−1
)

det(2πΣ)
^
x
[A
−1
m, (A
T
Σ
−1
A)
−1
] (279)
8.1.6 Rearranging into squared form
If A is symmetric, then

1
2
x
T
Ax +b
T
x = −
1
2
(x −A
−1
b)
T
A(x −A
−1
b) +
1
2
b
T
A
−1
b

1
2
Tr(X
T
AX) + Tr(B
T
X) = −
1
2
Tr[(X−A
−1
B)
T
A(X−A
−1
B)] +
1
2
Tr(B
T
A
−1
B)
8.1.7 Sum of two squared forms
In vector formulation (assuming Σ
1
, Σ
2
are symmetric)

1
2
(x −m
1
)
T
Σ
−1
1
(x −m
1
) (280)

1
2
(x −m
2
)
T
Σ
−1
2
(x −m
2
) (281)
= −
1
2
(x −m
c
)
T
Σ
−1
c
(x −m
c
) + C (282)
Petersen & Pedersen, The Matrix Cookbook, Version: February 16, 2008, Page 35
8.2 Moments 8 GAUSSIANS
Σ
−1
c
= Σ
−1
1

−1
2
(283)
m
c
= (Σ
−1
1

−1
2
)
−1

−1
1
m
1

−1
2
m
2
) (284)
C =
1
2
(m
T
1
Σ
−1
1
+m
T
2
Σ
−1
2
)(Σ
−1
1

−1
2
)
−1

−1
1
m
1

−1
2
m
2
)(285)

1
2

m
T
1
Σ
−1
1
m
1
+m
T
2
Σ
−1
2
m
2

(286)
In a trace formulation (assuming Σ
1
, Σ
2
are symmetric)

1
2
Tr((X−M
1
)
T
Σ
−1
1
(X−M
1
)) (287)

1
2
Tr((X−M
2
)
T
Σ
−1
2
(X−M
2
)) (288)
= −
1
2
Tr[(X−M
c
)
T
Σ
−1
c
(X−M
c
)] + C (289)
Σ
−1
c
= Σ
−1
1

−1
2
(290)
M
c
= (Σ
−1
1

−1
2
)
−1

−1
1
M
1

−1
2
M
2
) (291)
C =
1
2
Tr

−1
1
M
1

−1
2
M
2
)
T

−1
1

−1
2
)
−1

−1
1
M
1

−1
2
M
2
)

1
2
Tr(M
T
1
Σ
−1
1
M
1
+M
T
2
Σ
−1
2
M
2
) (292)
8.1.8 Product of gaussian densities
Let ^
x
(m, Σ) denote a density of x, then
^
x
(m
1
, Σ
1
) ^
x
(m
2
, Σ
2
) = c
c
^
x
(m
c
, Σ
c
) (293)
c
c
= ^
m1
(m
2
, (Σ
1

2
))
=
1

det(2π(Σ
1

2
))
exp
¸

1
2
(m
1
−m
2
)
T

1

2
)
−1
(m
1
−m
2
)

m
c
= (Σ
−1
1

−1
2
)
−1

−1
1
m
1

−1
2
m
2
)
Σ
c
= (Σ
−1
1

−1
2
)
−1
but note that the product is not normalized as a density of x.
8.2 Moments
8.2.1 Mean and covariance of linear forms
First and second moments. Assume x ∼ ^(m, Σ)
E(x) = m (294)
Petersen & Pedersen, The Matrix Cookbook, Version: February 16, 2008, Page 36
8.2 Moments 8 GAUSSIANS
Cov(x, x) = Var(x) = Σ = E(xx
T
) −E(x)E(x
T
) = E(xx
T
) −mm
T
(295)
As for any other distribution is holds for gaussians that
E[Ax] = AE[x] (296)
Var[Ax] = AVar[x]A
T
(297)
Cov[Ax, By] = ACov[x, y]B
T
(298)
8.2.2 Mean and variance of square forms
Mean and variance of square forms: Assume x ∼ ^(m, Σ)
E(xx
T
) = Σ+mm
T
(299)
E[x
T
Ax] = Tr(AΣ) +m
T
Am (300)
Var(x
T
Ax) = Tr[AΣ(A+A
T
)Σ] + ...
+m
T
(A+A
T
)Σ(A+A
T
)m (301)
E[(x −m

)
T
A(x −m

)] = (m−m

)
T
A(m−m

) + Tr(AΣ) (302)
If Σ = σ
2
I and A is symmetric, then
Var(x
T
Ax) = 2σ
4
Tr(A
2
) + 4σ
2
m
T
A
2
m (303)
Assume x ∼ ^(0, σ
2
I) and A and B to be symmetric, then
Cov(x
T
Ax, x
T
Bx) = 2σ
4
Tr(AB) (304)
8.2.3 Cubic forms
E[xb
T
xx
T
] = mb
T
(M+mm
T
) + (M+mm
T
)bm
T
+b
T
m(M−mm
T
) (305)
8.2.4 Mean of Quartic Forms
E[xx
T
xx
T
] = 2(Σ+mm
T
)
2
+m
T
m(Σ−mm
T
)
+Tr(Σ)(Σ+mm
T
)
E[xx
T
Axx
T
] = (Σ+mm
T
)(A+A
T
)(Σ+mm
T
)
+m
T
Am(Σ−mm
T
) + Tr[AΣ](Σ+mm
T
)
E[x
T
xx
T
x] = 2Tr(Σ
2
) + 4m
T
Σm+ (Tr(Σ) +m
T
m)
2
E[x
T
Axx
T
Bx] = Tr[AΣ(B+B
T
)Σ] +m
T
(A+A
T
)Σ(B+B
T
)m
+(Tr(AΣ) +m
T
Am)(Tr(BΣ) +m
T
Bm)
Petersen & Pedersen, The Matrix Cookbook, Version: February 16, 2008, Page 37
8.3 Miscellaneous 8 GAUSSIANS
E[a
T
xb
T
xc
T
xd
T
x]
= (a
T
(Σ+mm
T
)b)(c
T
(Σ+mm
T
)d)
+(a
T
(Σ+mm
T
)c)(b
T
(Σ+mm
T
)d)
+(a
T
(Σ+mm
T
)d)(b
T
(Σ+mm
T
)c) −2a
T
mb
T
mc
T
md
T
m
E[(Ax +a)(Bx +b)
T
(Cx +c)(Dx +d)
T
]
= [AΣB
T
+ (Am+a)(Bm+b)
T
][CΣD
T
+ (Cm+c)(Dm+d)
T
]
+[AΣC
T
+ (Am+a)(Cm+c)
T
][BΣD
T
+ (Bm+b)(Dm+d)
T
]
+(Bm+b)
T
(Cm+c)[AΣD
T
−(Am+a)(Dm+d)
T
]
+Tr(BΣC
T
)[AΣD
T
+ (Am+a)(Dm+d)
T
]
E[(Ax +a)
T
(Bx +b)(Cx +c)
T
(Dx +d)]
= Tr[AΣ(C
T
D+D
T
C)ΣB
T
]
+[(Am+a)
T
B+ (Bm+b)
T
A]Σ[C
T
(Dm+d) +D
T
(Cm+c)]
+[Tr(AΣB
T
) + (Am+a)
T
(Bm+b)][Tr(CΣD
T
) + (Cm+c)
T
(Dm+d)]
See [7].
8.2.5 Moments
E[x] =
¸
k
ρ
k
m
k
(306)
Cov(x) =
¸
k
¸
k

ρ
k
ρ
k

k
+m
k
m
T
k
−m
k
m
T
k
) (307)
8.3 Miscellaneous
8.3.1 Whitening
Assume x ∼ ^(m, Σ) then
z = Σ
−1/2
(x −m) ∼ ^(0, I) (308)
Conversely having z ∼ ^(0, I) one can generate data x ∼ ^(m, Σ) by setting
x = Σ
1/2
z +m∼ ^(m, Σ) (309)
Note that Σ
1/2
means the matrix which fulﬁls Σ
1/2
Σ
1/2
= Σ, and that it exists
and is unique since Σ is positive deﬁnite.
8.3.2 The Chi-Square connection
Assume x ∼ ^(m, Σ) and x to be n dimensional, then
z = (x −m)
T
Σ
−1
(x −m) ∼ χ
2
n
(310)
where χ
2
n
denotes the Chi square distribution with n degrees of freedom.
Petersen & Pedersen, The Matrix Cookbook, Version: February 16, 2008, Page 38
8.4 Mixture of Gaussians 8 GAUSSIANS
8.3.3 Entropy
Entropy of a D-dimensional gaussian
H(x) = −

^(m, Σ) ln ^(m, Σ)dx = ln

det(2πΣ) +
D
2
(311)
8.4 Mixture of Gaussians
8.4.1 Density
The variable x is distributed as a mixture of gaussians if it has the density
p(x) =
K
¸
k=1
ρ
k
1

det(2πΣ
k
)
exp
¸

1
2
(x −m
k
)
T
Σ
−1
k
(x −m
k
)

(312)
where ρ
k
sum to 1 and the Σ
k
all are positive deﬁnite.
8.4.2 Derivatives
Deﬁning p(s) =
¸
k
ρ
k
^
s

k
, Σ
k
) one get
∂ ln p(s)
∂ρ
j
=
ρ
j
^
s

j
, Σ
j
)
¸
k
ρ
k
^
s

k
, Σ
k
)

∂ρ
j
ln[ρ
j
^
s

j
, Σ
j
)] (313)
=
ρ
j
^
s

j
, Σ
j
)
¸
k
ρ
k
^
s

k
, Σ
k
)
1
ρ
j
(314)
∂ ln p(s)
∂µ
j
=
ρ
j
^
s

j
, Σ
j
)
¸
k
ρ
k
^
s

k
, Σ
k
)

∂µ
j
ln[ρ
j
^
s

j
, Σ
j
)] (315)
=
ρ
j
^
s

j
, Σ
j
)
¸
k
ρ
k
^
s

k
, Σ
k
)

Σ
−1
j
(s −µ
j
)

(316)
∂ ln p(s)
∂Σ
j
=
ρ
j
^
s

j
, Σ
j
)
¸
k
ρ
k
^
s

k
, Σ
k
)

∂Σ
j
ln[ρ
j
^
s

j
, Σ
j
)] (317)
=
ρ
j
^
s

j
, Σ
j
)
¸
k
ρ
k
^
s

k
, Σ
k
)
1
2

−Σ
−1
j

−1
j
(s −µ
j
)(s −µ
j
)
T
Σ
−1
j

(318)
But ρ
k
and Σ
k
needs to be constrained.
Petersen & Pedersen, The Matrix Cookbook, Version: February 16, 2008, Page 39
9 SPECIAL MATRICES
9 Special Matrices
9.1 Block matrices
Let A
ij
denote the ijth block of A.
9.1.1 Multiplication
Assuming the dimensions of the blocks matches we have
¸
A
11
A
12
A
21
A
22
¸
B
11
B
12
B
21
B
22

=
¸
A
11
B
11
+A
12
B
21
A
11
B
12
+A
12
B
22
A
21
B
11
+A
22
B
21
A
21
B
12
+A
22
B
22

9.1.2 The Determinant
The determinant can be expressed as by the use of
C
1
= A
11
−A
12
A
−1
22
A
21
(319)
C
2
= A
22
−A
21
A
−1
11
A
12
(320)
as
det
¸
A
11
A
12
A
21
A
22

= det(A
22
) det(C
1
) = det(A
11
) det(C
2
)
9.1.3 The Inverse
The inverse can be expressed as by the use of
C
1
= A
11
−A
12
A
−1
22
A
21
(321)
C
2
= A
22
−A
21
A
−1
11
A
12
(322)
as
¸
A
11
A
12
A
21
A
22

−1
=
¸
C
−1
1
−A
−1
11
A
12
C
−1
2
−C
−1
2
A
21
A
−1
11
C
−1
2

=
¸
A
−1
11
+A
−1
11
A
12
C
−1
2
A
21
A
−1
11
−C
−1
1
A
12
A
−1
22
−A
−1
22
A
21
C
−1
1
A
−1
22
+A
−1
22
A
21
C
−1
1
A
12
A
−1
22

9.1.4 Block diagonal
For block diagonal matrices we have
¸
A
11
0
0 A
22

−1
=
¸
(A
11
)
−1
0
0 (A
22
)
−1

(323)
det
¸
A
11
0
0 A
22

= det(A
11
) det(A
22
) (324)
Petersen & Pedersen, The Matrix Cookbook, Version: February 16, 2008, Page 40
9.2 Discrete Fourier Transform Matrix, The 9 SPECIAL MATRICES
9.1.5 Schur complement
The Schur complement of the matrix
¸
A
11
A
12
A
21
A
22

is the matrix
A
11
−A
12
A
−1
22
A
21
that is, what is denoted C
2
above. Using the Schur complement, one can rewrite
the inverse of a block matrix
¸
A
11
A
12
A
21
A
22

−1
=
¸
I 0
−A
−1
22
A
21
I
¸
(A
11
−A
12
A
−1
22
A
21
)
−1
0
0 A
−1
22
¸
I −A
12
A
−1
22
0 I

The Schur complement is useful when solving linear systems of the form
¸
A
11
A
12
A
21
A
22
¸
x
1
x
2

=
¸
b
1
b
2

which has the following equation for x
1
(A
11
−A
12
A
−1
22
A
21
)x
1
= b
1
−A
12
A
−1
22
b
2
When the appropriate inverses exists, this can be solved for x
1
which can then
be inserted in the equation for x
2
to solve for x
2
.
9.2 Discrete Fourier Transform Matrix, The
The DFT matrix is an N N symmetric matrix W
N
, where the k, nth element
is given by
W
kn
N
= e
−j2πkn
N
(325)
Thus the discrete Fourier transform (DFT) can be expressed as
X(k) =
N−1
¸
n=0
x(n)W
kn
N
. (326)
Likewise the inverse discrete Fourier transform (IDFT) can be expressed as
x(n) =
1
N
N−1
¸
k=0
X(k)W
−kn
N
. (327)
The DFT of the vector x = [x(0), x(1), , x(N−1)]
T
can be written in matrix
form as
X = W
N
x, (328)
Petersen & Pedersen, The Matrix Cookbook, Version: February 16, 2008, Page 41
9.3 Hermitian Matrices and skew-Hermitian 9 SPECIAL MATRICES
where X = [X(0), X(1), , x(N −1)]
T
. The IDFT is similarly given as
x = W
−1
N
X. (329)
Some properties of W
N
exist:
W
−1
N
=
1
N
W

N
(330)
W
N
W

N
= NI (331)
W

N
= W
H
N
(332)
If W
N
= e
−j2π
N
, then [22]
W
m+N/2
N
= −W
m
N
(333)
Notice, the DFT matrix is a Vandermonde Matrix.
The following important relation between the circulant matrix and the dis-
crete Fourier transform (DFT) exists
T
C
= W
−1
N
(I ◦ (W
N
t))W
N
, (334)
where t = [t
0
, t
1
, , t
n−1
]
T
is the ﬁrst row of T
C
.
9.3 Hermitian Matrices and skew-Hermitian
A matrix A ∈ C
m×n
is called Hermitian if
A
H
= A
For real valued matrices, Hermitian and symmetric matrices are equivalent.
A is Hermitian ⇔ x
H
Ax ∈ R, ∀x ∈ C
n×1
(335)
A is Hermitian ⇔ eig(A) ∈ R (336)
Note that
A = B+ iC
where B, C are hermitian, then
B =
A+A
H
2
, C =
A−A
H
2i
9.3.1 Skew-Hermitian
A matrix A is called skew-hermitian if
A = −A
H
For real valued matrices, skew-Hermitian and skew-symmetric matrices are
equivalent.
A Hermitian ⇔ iA is skew-hermitian (337)
A skew-Hermitian ⇔ x
H
Ay = −x
H
A
H
y, ∀x, y (338)
A skew-Hermitian ⇒ eig(A) = iλ, λ ∈ R (339)
Petersen & Pedersen, The Matrix Cookbook, Version: February 16, 2008, Page 42
9.4 Idempotent Matrices 9 SPECIAL MATRICES
9.4 Idempotent Matrices
A matrix A is idempotent if
AA = A
Idempotent matrices A and B, have the following properties
A
n
= A, forn = 1, 2, 3, ... (340)
I −A is idempotent (341)
A
H
is idempotent (342)
I −A
H
is idempotent (343)
If AB = BA ⇒ AB is idempotent (344)
rank(A) = Tr(A) (345)
A(I −A) = 0 (346)
(I −A)A = 0 (347)
A
+
= A (348)
Note that A−I is not necessarily idempotent.
9.4.1 Nilpotent
A matrix A is nilpotent if
A
2
= 0
9.4.2 Unipotent
A matrix A is unipotent if
AA = I
9.5 Orthogonal matrices
If a square matrix Q is orthogonal, if and only if,
Q
T
Q = QQ
T
= I
and then Q has the following properties
• Its eigenvalues are placed on the unit circle.
• Its eigenvectors are unitary, i.e. have length one.
• The inverse of an orthogonal matrix is orthogonal too.
Basic properties for the orthogonal matrix Q
Q
−1
= Q
T
Q
−T
= Q
QQ
T
= I
Q
T
Q = I
det(Q) = ±1
Petersen & Pedersen, The Matrix Cookbook, Version: February 16, 2008, Page 43
9.6 Positive Deﬁnite and Semi-deﬁnite Matrices 9 SPECIAL MATRICES
9.5.1 Ortho-Sym
A matrix Q
+
which simultaneously is orthogonal and symmetric is called an
ortho-sym matrix [19]. Hereby
Q
T
+
Q
+
= I (349)
Q
+
= Q
T
+
(350)
The powers of an ortho-sym matrix are given by the following rule
Q
k
+
=
1 + (−1)
k
2
I +
1 + (−1)
k+1
2
Q
+
(351)
=
1 + cos(kπ)
2
I +
1 −cos(kπ)
2
Q
+
(352)
9.5.2 Ortho-Skew
A matrix which simultaneously is orthogonal and antisymmetric is called an
ortho-skew matrix [19]. Hereby
Q
H

Q

= I (353)
Q

= −Q
H

(354)
The powers of an ortho-skew matrix are given by the following rule
Q
k

=
i
k
+ (−i)
k
2
I −i
i
k
−(−i)
k
2
Q

(355)
= cos(k
π
2
)I + sin(k
π
2
)Q

(356)
9.5.3 Decomposition
A square matrix A can always be written as a sum of a symmetric A
+
and an
antisymmetric matrix A

A = A
+
+A

(357)
9.6 Positive Deﬁnite and Semi-deﬁnite Matrices
9.6.1 Deﬁnitions
A matrix A is positive deﬁnite if and only if
x
T
Ax > 0, ∀x = 0 (358)
A matrix A is positive semi-deﬁnite if and only if
x
T
Ax ≥ 0, ∀x (359)
Note that if A is positive deﬁnite, then A is also positive semi-deﬁnite.
Petersen & Pedersen, The Matrix Cookbook, Version: February 16, 2008, Page 44
9.6 Positive Deﬁnite and Semi-deﬁnite Matrices 9 SPECIAL MATRICES
9.6.2 Eigenvalues
The following holds with respect to the eigenvalues:
A pos. def. ⇔ eig(
A+A
H
2
) > 0
A pos. semi-def. ⇔ eig(
A+A
H
2
) ≥ 0
(360)
9.6.3 Trace
The following holds with respect to the trace:
A pos. def. ⇒ Tr(A) > 0
A pos. semi-def. ⇒ Tr(A) ≥ 0
(361)
9.6.4 Inverse
If A is positive deﬁnite, then A is invertible and A
−1
is also positive deﬁnite.
9.6.5 Diagonal
If A is positive deﬁnite, then A
ii
> 0, ∀i
9.6.6 Decomposition I
The matrix A is positive semi-deﬁnite of rank r ⇔ there exists a matrix B of
rank r such that A = BB
T
The matrix A is positive deﬁnite ⇔ there exists an invertible matrix B such
that A = BB
T
9.6.7 Decomposition II
Assume A is an n n positive semi-deﬁnite, then there exists an n r matrix
B of rank r such that B
T
AB = I.
9.6.8 Equation with zeros
Assume A is positive semi-deﬁnite, then X
T
AX = 0 ⇒ AX = 0
9.6.9 Rank of product
Assume A is positive deﬁnite, then rank(BAB
T
) = rank(B)
9.6.10 Positive deﬁnite property
If A is n n positive deﬁnite and B is r n of rank r, then BAB
T
is positive
deﬁnite.
Petersen & Pedersen, The Matrix Cookbook, Version: February 16, 2008, Page 45
9.7 Singleentry Matrix, The 9 SPECIAL MATRICES
9.6.11 Outer Product
If X is n r, where n ≤ r and rank(X) = n, then XX
T
is positive deﬁnite.
9.6.12 Small pertubations
If A is positive deﬁnite and B is symmetric, then A−tB is positive deﬁnite for
suﬃciently small t.
9.7 Singleentry Matrix, The
9.7.1 Deﬁnition
The single-entry matrix J
ij
∈ R
n×n
is deﬁned as the matrix which is zero
everywhere except in the entry (i, j) in which it is 1. In a 4 4 example one
might have
J
23
=

0 0 0 0
0 0 1 0
0 0 0 0
0 0 0 0
¸
¸
¸
¸
(362)
The single-entry matrix is very useful when working with derivatives of expres-
sions involving matrices.
9.7.2 Swap and Zeros
Assume A to be n m and J
ij
to be mp
AJ
ij
=

0 0 . . . A
i
. . . 0

(363)
i.e. an n p matrix of zeros with the i.th column of A in place of the j.th
column. Assume A to be n m and J
ij
to be p n
J
ij
A =

0
.
.
.
0
A
j
0
.
.
.
0
¸
¸
¸
¸
¸
¸
¸
¸
¸
¸
¸
¸
(364)
i.e. an p m matrix of zeros with the j.th row of A in the placed of the i.th
row.
Petersen & Pedersen, The Matrix Cookbook, Version: February 16, 2008, Page 46
9.7 Singleentry Matrix, The 9 SPECIAL MATRICES
9.7.3 Rewriting product of elements
A
ki
B
jl
= (Ae
i
e
T
j
B)
kl
= (AJ
ij
B)
kl
(365)
A
ik
B
lj
= (A
T
e
i
e
T
j
B
T
)
kl
= (A
T
J
ij
B
T
)
kl
(366)
A
ik
B
jl
= (A
T
e
i
e
T
j
B)
kl
= (A
T
J
ij
B)
kl
(367)
A
ki
B
lj
= (Ae
i
e
T
j
B
T
)
kl
= (AJ
ij
B
T
)
kl
(368)
9.7.4 Properties of the Singleentry Matrix
If i = j
J
ij
J
ij
= J
ij
(J
ij
)
T
(J
ij
)
T
= J
ij
J
ij
(J
ij
)
T
= J
ij
(J
ij
)
T
J
ij
= J
ij
If i = j
J
ij
J
ij
= 0 (J
ij
)
T
(J
ij
)
T
= 0
J
ij
(J
ij
)
T
= J
ii
(J
ij
)
T
J
ij
= J
jj
9.7.5 The Singleentry Matrix in Scalar Expressions
Assume A is n m and J is mn, then
Tr(AJ
ij
) = Tr(J
ij
A) = (A
T
)
ij
(369)
Assume A is n n, J is n m and B is mn, then
Tr(AJ
ij
B) = (A
T
B
T
)
ij
(370)
Tr(AJ
ji
B) = (BA)
ij
(371)
Tr(AJ
ij
J
ij
B) = diag(A
T
B
T
)
ij
(372)
Assume A is n n, J
ij
is n m B is mn, then
x
T
AJ
ij
Bx = (A
T
xx
T
B
T
)
ij
(373)
x
T
AJ
ij
J
ij
Bx = diag(A
T
xx
T
B
T
)
ij
(374)
9.7.6 Structure Matrices
The structure matrix is deﬁned by
∂A
∂A
ij
= S
ij
(375)
If A has no special structure then
S
ij
= J
ij
(376)
If A is symmetric then
S
ij
= J
ij
+J
ji
−J
ij
J
ij
(377)
Petersen & Pedersen, The Matrix Cookbook, Version: February 16, 2008, Page 47
9.8 Symmetric, Skew-symmetric/Antisymmetric 9 SPECIAL MATRICES
9.8 Symmetric, Skew-symmetric/Antisymmetric
9.8.1 Symmetric
The matrix A is said to be symmetric if
A = A
T
(378)
Symmetric matrices have many important properties, e.g. that their eigenvalues
are real and eigenvectors orthogonal.
9.8.2 Skew-symmetric/Antisymmetric
The antisymmetric matrix is also known as the skew symmetric matrix. It has
the following property from which it is deﬁned
A = −A
T
(379)
Hereby, it can be seen that the antisymmetric matrices always have a zero
diagonal. The n n antisymmetric matrices also have the following properties.
det(A
T
) = det(−A) = (−1)
n
det(A) (380)
−det(A) = det(−A) = 0, if n is odd (381)
The eigenvalues of an antisymmetric matrix are placed on the imaginary axis
and the eigenvectors are unitary.
9.8.3 Decomposition
A square matrix A can always be written as a sum of a symmetric A
+
and an
antisymmetric matrix A

A = A
+
+A

(382)
Such a decomposition could e.g. be
A =
A+A
T
2
+
A−A
T
2
= A
+
+A

(383)
9.9 Toeplitz Matrices
A Toeplitz matrix T is a matrix where the elements of each diagonal is the
same. In the n n square case, it has the following structure:
T =

t
11
t
12
t
1n
t
21
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
. t
12
t
n1
t
21
t
11
¸
¸
¸
¸
¸
¸
=

t
0
t
1
t
n−1
t
−1
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
. t
1
t
−(n−1)
t
−1
t
0
¸
¸
¸
¸
¸
¸
(384)
A Toeplitz matrix is persymmetric. If a matrix is persymmetric (or orthosym-
metric), it means that the matrix is symmetric about its northeast-southwest
Petersen & Pedersen, The Matrix Cookbook, Version: February 16, 2008, Page 48
9.9 Toeplitz Matrices 9 SPECIAL MATRICES
diagonal (anti-diagonal) [12]. Persymmetric matrices is a larger class of matri-
ces, since a persymmetric matrix not necessarily has a Toeplitz structure. There
are some special cases of Toeplitz matrices. The symmetric Toeplitz matrix is
given by:
T =

t
0
t
1
t
n−1
t
1
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
. t
1
t
−(n−1)
t
1
t
0
¸
¸
¸
¸
¸
¸
(385)
The circular Toeplitz matrix:
T
C
=

t
0
t
1
t
n−1
t
n
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
. t
1
t
1
t
n−1
t
0
¸
¸
¸
¸
¸
¸
(386)
The upper triangular Toeplitz matrix:
T
U
=

t
0
t
1
t
n−1
0
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
. t
1
0 0 t
0
¸
¸
¸
¸
¸
¸
, (387)
and the lower triangular Toeplitz matrix:
T
L
=

t
0
0 0
t
−1
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
. 0
t
−(n−1)
t
−1
t
0
¸
¸
¸
¸
¸
¸
(388)
9.9.1 Properties of Toeplitz Matrices
Toeplitz matrices can be done with O(n) ﬂops, multiplication of two Toeplitz
matrices can be done in O(nln n) ﬂops. Toeplitz equation systems can be solved
in O(n
2
) ﬂops. The inverse of a positive deﬁnite Toeplitz matrix can be found
in O(n
2
) ﬂops too. The inverse of a Toeplitz matrix is persymmetric. The
product of two lower triangular Toeplitz matrices is a Toeplitz matrix. More
information on Toeplitz matrices and circulant matrices can be found in [13, 7].
Petersen & Pedersen, The Matrix Cookbook, Version: February 16, 2008, Page 49
9.10 Transition matrices 9 SPECIAL MATRICES
9.10 Transition matrices
A square matrix P is a transition matrix, also known as stochastic matrix or
probability matrix, if
0 ≤ (P)
ij
≤ 1,
¸
j
(P)
ij
= 1
The transition matrix usually describes the probability of moving from state i
to j in one step and is closely related to markov processes. Transition matrices
have the following properties
Prob[i →j in 1 step] = (P)
ij
(389)
Prob[i →j in 2 steps] = (P
2
)
ij
(390)
Prob[i →j in k steps] = (P
k
)
ij
(391)
If all rows are identical ⇒ P
n
= P (392)
αP = α, α is called invariant (393)
where α is a so-called stationary probability vector, i.e., 0 ≤ α
i
≤ 1 and
¸
i
α
i
=
1.
9.11 Units, Permutation and Shift
9.11.1 Unit vector
Let e
i
∈ R
n×1
be the ith unit vector, i.e. the vector which is zero in all entries
except the ith at which it is 1.
9.11.2 Rows and Columns
i.th row of A = e
T
i
A (394)
j.th column of A = Ae
j
(395)
9.11.3 Permutations
Let P be some permutation matrix, e.g.
P =

0 1 0
1 0 0
0 0 1
¸
¸
=

e
2
e
1
e
3

=

e
T
2
e
T
1
e
T
3
¸
¸
(396)
For permutation matrices it holds that
PP
T
= I (397)
and that
AP =

Ae
2
Ae
1
Ae
3

PA =

e
T
2
A
e
T
1
A
e
T
3
A
¸
¸
(398)
Petersen & Pedersen, The Matrix Cookbook, Version: February 16, 2008, Page 50
9.12 Vandermonde Matrices 9 SPECIAL MATRICES
That is, the ﬁrst is a matrix which has columns of A but in permuted sequence
and the second is a matrix which has the rows of A but in the permuted se-
quence.
9.11.4 Translation, Shift or Lag Operators
Let L denote the lag (or ’translation’ or ’shift’) operator deﬁned on a 4 4
example by
L =

0 0 0 0
1 0 0 0
0 1 0 0
0 0 1 0
¸
¸
¸
¸
(399)
i.e. a matrix of zeros with one on the sub-diagonal, (L)
ij
= δ
i,j+1
. With some
signal x
t
for t = 1, ..., N, the n.th power of the lag operator shifts the indices,
i.e.
(L
n
x)
t
=

0 for t = 1, .., n
x
t−n
for t = n + 1, ..., N
(400)
A related but slightly diﬀerent matrix is the ’recurrent shifted’ operator deﬁned
on a 4x4 example by
ˆ
L =

0 0 0 1
1 0 0 0
0 1 0 0
0 0 1 0
¸
¸
¸
¸
(401)
i.e. a matrix deﬁned by (
ˆ
L)
ij
= δ
i,j+1
+ δ
i,1
δ
j,dim(L)
. On a signal x it has the
eﬀect
(
ˆ
L
n
x)
t
= x
t
, t

= [(t −n) mod N] + 1 (402)
That is,
ˆ
L is like the shift operator L except that it ’wraps’ the signal as if it
was periodic and shifted (substituting the zeros with the rear end of the signal).
Note that
ˆ
L is invertible and orthogonal, i.e.
ˆ
L
−1
=
ˆ
L
T
(403)
9.12 Vandermonde Matrices
A Vandermonde matrix has the form [15]
V =

1 v
1
v
2
1
v
n−1
1
1 v
2
v
2
2
v
n−1
2
.
.
.
.
.
.
.
.
.
.
.
.
1 v
n
v
2
n
v
n−1
n
¸
¸
¸
¸
¸
. (404)
The transpose of V is also said to a Vandermonde matrix. The determinant is
given by [28]
det V =
¸
i>j
(v
i
−v
j
) (405)
Petersen & Pedersen, The Matrix Cookbook, Version: February 16, 2008, Page 51
10 FUNCTIONS AND OPERATORS
10 Functions and Operators
10.1 Functions and Series
10.1.1 Finite Series
(X
n
−I)(X−I)
−1
= I +X+X
2
+ ... +X
n−1
(406)
10.1.2 Taylor Expansion of Scalar Function
Consider some scalar function f(x) which takes the vector x as an argument.
This we can Taylor expand around x
0
f(x)

= f(x
0
) +g(x
0
)
T
(x −x
0
) +
1
2
(x −x
0
)
T
H(x
0
)(x −x
0
) (407)
where
g(x
0
) =
∂f(x)
∂x

x0
H(x
0
) =

2
f(x)
∂x∂x
T

x0
10.1.3 Matrix Functions by Inﬁnite Series
As for analytical functions in one dimension, one can deﬁne a matrix function
for square matrices X by an inﬁnite series
f (X) =

¸
n=0
c
n
X
n
(408)
assuming the limit exists and is ﬁnite. If the coeﬃcients c
n
fulﬁls
¸
n
c
n
x
n
< ∞,
then one can prove that the above series exists and is ﬁnite, see [1]. Thus for
any analytical function f(x) there exists a corresponding matrix function f (x)
constructed by the Taylor expansion. Using this one can prove the following
results:
1) A matrix A is a zero of its own characteristic polynomium [1]:
p(λ) = det(Iλ −A) =
¸
n
c
n
λ
n
⇒ p(A) = 0 (409)
2) If A is square it holds that [1]
A = UBU
−1
⇒ f (A) = Uf (B)U
−1
(410)
3) A useful fact when using power series is that
A
n
→0forn →∞ if [A[ < 1 (411)
Petersen & Pedersen, The Matrix Cookbook, Version: February 16, 2008, Page 52
10.2 Kronecker and Vec Operator 10 FUNCTIONS AND OPERATORS
10.1.4 Exponential Matrix Function
In analogy to the ordinary scalar exponential function, one can deﬁne exponen-
tial and logarithmic matrix functions:
e
A

¸
n=0
1
n!
A
n
= I +A+
1
2
A
2
+ ... (412)
e
−A

¸
n=0
1
n!
(−1)
n
A
n
= I −A+
1
2
A
2
−... (413)
e
tA

¸
n=0
1
n!
(tA)
n
= I + tA+
1
2
t
2
A
2
+ ... (414)
ln(I +A) ≡

¸
n=1
(−1)
n−1
n
A
n
= A−
1
2
A
2
+
1
3
A
3
−... (415)
Some of the properties of the exponential function are [1]
e
A
e
B
= e
A+B
if AB = BA (416)
(e
A
)
−1
= e
−A
(417)
d
dt
e
tA
= Ae
tA
= e
tA
A, t ∈ R (418)
d
dt
Tr(e
tA
) = Tr(Ae
tA
) (419)
det(e
A
) = e
Tr(A)
(420)
10.1.5 Trigonometric Functions
sin(A) ≡

¸
n=0
(−1)
n
A
2n+1
(2n + 1)!
= A−
1
3!
A
3
+
1
5!
A
5
−... (421)
cos(A) ≡

¸
n=0
(−1)
n
A
2n
(2n)!
= I −
1
2!
A
2
+
1
4!
A
4
−... (422)
10.2 Kronecker and Vec Operator
10.2.1 The Kronecker Product
The Kronecker product of an m n matrix A and an r q matrix B, is an
mr nq matrix, A⊗B deﬁned as
A⊗B =

A
11
B A
12
B ... A
1n
B
A
21
B A
22
B ... A
2n
B
.
.
.
.
.
.
A
m1
B A
m2
B ... A
mn
B
¸
¸
¸
¸
¸
(423)
Petersen & Pedersen, The Matrix Cookbook, Version: February 16, 2008, Page 53
10.3 Solutions to Systems of Equations 10 FUNCTIONS AND OPERATORS
The Kronecker product has the following properties (see [18])
A⊗(B+C) = A⊗B+A⊗C (424)
A⊗B = B⊗A in general (425)
A⊗(B⊗C) = (A⊗B) ⊗C (426)

A
A⊗α
B
B) = α
A
α
B
(A⊗B) (427)
(A⊗B)
T
= A
T
⊗B
T
(428)
(A⊗B)(C⊗D) = AC⊗BD (429)
(A⊗B)
−1
= A
−1
⊗B
−1
(430)
rank(A⊗B) = rank(A)rank(B) (431)
Tr(A⊗B) = Tr(A)Tr(B) (432)
det(A⊗B) = det(A)
rank(B)
det(B)
rank(A)
(433)
¦eig(A⊗B)¦ = ¦eig(B⊗A)¦ if A, B are square (434)
¦eig(A⊗B)¦ = ¦eig(A)eig(B)
T
¦ if A, B are square (435)
Where ¦λ
i
¦ denotes the set of values λ
i
, that is, the values in no particular
order or structure.
10.2.2 The Vec Operator
The vec-operator applied on a matrix A stacks the columns into a vector, i.e.
for a 2 2 matrix
A =
¸
A
11
A
12
A
21
A
22

vec(A) =

A
11
A
21
A
12
A
22
¸
¸
¸
¸
Properties of the vec-operator include (see [18])
vec(AXB) = (B
T
⊗A)vec(X) (436)
Tr(A
T
B) = vec(A)
T
vec(B) (437)
vec(A+B) = vec(A) + vec(B) (438)
vec(αA) = α vec(A) (439)
10.3 Solutions to Systems of Equations
10.3.1 Simple Linear Regression
Assume we have data (x
n
, y
n
) for n = 1, ..., N and are seeking the parameters
a, b ∈ R such that y
i

= ax
i
+b. With a least squares error function, the optimal
values for a, b can be expressed using the notation
x = (x
1
, ..., x
N
)
T
y = (y
1
, ..., y
N
)
T
1 = (1, ..., 1)
T
∈ R
N×1
Petersen & Pedersen, The Matrix Cookbook, Version: February 16, 2008, Page 54
10.3 Solutions to Systems of Equations 10 FUNCTIONS AND OPERATORS
and
R
xx
= x
T
x R
x1
= x
T
1 R
11
= 1
T
1
R
yx
= y
T
x R
y1
= y
T
1
as
¸
a
b

=
¸
R
xx
R
x1
R
x1
R
11

−1
¸
R
x,y
R
y1

(440)
10.3.2 Existence in Linear Systems
Assume A is n m and consider the linear system
Ax = b (441)
Construct the augmented matrix B = [A b] then
Condition Solution
rank(A) = rank(B) = m Unique solution x
rank(A) = rank(B) < m Many solutions x
rank(A) < rank(B) No solutions x
10.3.3 Standard Square
Assume A is square and invertible, then
Ax = b ⇒ x = A
−1
b (442)
10.3.4 Degenerated Square
Assume A is nn but of rank r < n. In that case, the system Ax = b is solved
by
x = A
+
b
where A
+
is the pseudo-inverse of the rank-deﬁcient matrix, constructed as
described in section 3.6.3.
10.3.5 Cramer’s rule
The equation
Ax = b, (443)
where A is square has exactly one solution x if the ith element in x can be
found as
x
i
=
det B
det A
, (444)
where B equals A, but the ith column in A has been substituted by b.
Petersen & Pedersen, The Matrix Cookbook, Version: February 16, 2008, Page 55
10.3 Solutions to Systems of Equations 10 FUNCTIONS AND OPERATORS
10.3.6 Over-determined Rectangular
Assume A to be n m, n > m (tall) and rank(A) = m, then
Ax = b ⇒ x = (A
T
A)
−1
A
T
b = A
+
b (445)
that is if there exists a solution x at all! If there is no solution the following
can be useful:
Ax = b ⇒ x
min
= A
+
b (446)
Now x
min
is the vector x which minimizes [[Ax −b[[
2
, i.e. the vector which is
”least wrong”. The matrix A
+
is the pseudo-inverse of A. See [3].
10.3.7 Under-determined Rectangular
Assume A is n m and n < m (”broad”) and rank(A) = n.
Ax = b ⇒ x
min
= A
T
(AA
T
)
−1
b (447)
The equation have many solutions x. But x
min
is the solution which minimizes
[[Ax−b[[
2
and also the solution with the smallest norm [[x[[
2
. The same holds
for a matrix version: Assume A is n m, X is mn and B is n n, then
AX = B ⇒ X
min
= A
+
B (448)
The equation have many solutions X. But X
min
is the solution which minimizes
[[AX−B[[
2
and also the solution with the smallest norm [[X[[
2
. See [3].
Similar but diﬀerent: Assume A is square n n and the matrices B
0
, B
1
are n N, where N > n, then if B
0
has maximal rank
AB
0
= B
1
⇒ A
min
= B
1
B
T
0
(B
0
B
T
0
)
−1
(449)
where A
min
denotes the matrix which is optimal in a least square sense. An
interpretation is that A is the linear approximation which maps the columns
vectors of B
0
into the columns vectors of B
1
.
10.3.8 Linear form and zeros
Ax = 0, ∀x ⇒ A = 0 (450)
10.3.9 Square form and zeros
If A is symmetric, then
x
T
Ax = 0, ∀x ⇒ A = 0 (451)
10.3.10 The Lyapunov Equation
AX+XB = C (452)
vec(X) = (I ⊗A+B
T
⊗I)
−1
vec(C) (453)
Sec 10.2.1 and 10.2.2 for details on the Kronecker product and the vec op-
erator.
Petersen & Pedersen, The Matrix Cookbook, Version: February 16, 2008, Page 56
10.4 Vector Norms 10 FUNCTIONS AND OPERATORS
10.3.11 Encapsulating Sum
¸
n
A
n
XB
n
= C (454)
vec(X) =
¸
n
B
T
n
⊗A
n

−1
vec(C) (455)
See Sec 10.2.1 and 10.2.2 for details on the Kronecker product and the vec
operator.
10.4 Vector Norms
10.4.1 Examples
[[x[[
1
=
¸
i
[x
i
[ (456)
[[x[[
2
2
= x
H
x (457)
[[x[[
p
=
¸
¸
i
[x
i
[
p
¸
1/p
(458)
[[x[[

= max
i
[x
i
[ (459)
Further reading in e.g. [12, p. 52]
10.5 Matrix Norms
10.5.1 Deﬁnitions
A matrix norm is a mapping which fulﬁls
[[A[[ ≥ 0 (460)
[[A[[ = 0 ⇔A = 0 (461)
[[cA[[ = [c[[[A[[, c ∈ R (462)
[[A+B[[ ≤ [[A[[ +[[B[[ (463)
10.5.2 Induced Norm or Operator Norm
An induced norm is a matrix norm induced by a vector norm by the following
[[A[[ = sup¦[[Ax[[ [ [[x[[ = 1¦ (464)
where [[ [[ ont the left side is the induced matrix norm, while [[ [[ on the right
side denotes the vector norm. For induced norms it holds that
[[I[[ = 1 (465)
[[Ax[[ ≤ [[A[[ [[x[[, for all A, x (466)
[[AB[[ ≤ [[A[[ [[B[[, for all A, B (467)
Petersen & Pedersen, The Matrix Cookbook, Version: February 16, 2008, Page 57
10.6 Rank 10 FUNCTIONS AND OPERATORS
10.5.3 Examples
[[A[[
1
= max
j
¸
i
[A
ij
[ (468)
[[A[[
2
=

max eig(A
H
A) (469)
[[A[[
p
= ( max
||x||p=1
[[Ax[[
p
)
1/p
(470)
[[A[[

= max
i
¸
j
[A
ij
[ (471)
[[A[[
F
=

¸
ij
[A
ij
[
2
=

Tr(AA
H
) (Frobenius) (472)
[[A[[
max
= max
ij
[A
ij
[ (473)
[[A[[
KF
= [[sing(A)[[
1
(Ky Fan) (474)
where sing(A) is the vector of singular values of the matrix A.
10.5.4 Inequalities
E. H. Rasmussen has in yet unpublished material derived and collected the
following inequalities. They are collected in a table as below, assuming A is an
mn, and d = rank(A)
[[A[[
max
[[A[[
1
[[A[[

[[A[[
2
[[A[[
F
[[A[[
KF
[[A[[
max
1 1 1 1 1
[[A[[
1
m m

m

m

m
[[A[[

n n

n

n

n
[[A[[
2

mn

n

m 1 1
[[A[[
F

mn

n

m

d 1
[[A[[
KF

mnd

nd

md d

d
which are to be read as, e.g.
[[A[[
2

m [[A[[

(475)
10.5.5 Condition Number
The 2-norm of A equals

(max(eig(A
T
A))) [12, p.57]. For a symmetric, pos-
itive deﬁnite matrix, this reduces to max(eig(A)) The condition number based
on the 2-norm thus reduces to
|A|
2
|A
−1
|
2
= max(eig(A)) max(eig(A
−1
)) =
max(eig(A))
min(eig(A))
. (476)
10.6 Rank
10.6.1 Sylvester’s Inequality
If A is mn and B is n r, then
rank(A) + rank(B) −n ≤ rank(AB) ≤ min¦rank(A), rank(B)¦ (477)
Petersen & Pedersen, The Matrix Cookbook, Version: February 16, 2008, Page 58
10.7 Integral Involving Dirac Delta Functions 10 FUNCTIONS AND OPERATORS
10.7 Integral Involving Dirac Delta Functions
Assuming A to be square, then

p(s)δ(x −As)ds =
1
det(A)
p(A
−1
x) (478)
Assuming A to be ”underdetermined”, i.e. ”tall”, then

p(s)δ(x −As)ds =

1

det(A
T
A)
p(A
+
x) if x = AA
+
x
0 elsewhere
¸
(479)
See [9].
10.8 Miscellaneous
For any A it holds that
rank(A) = rank(A
T
) = rank(AA
T
) = rank(A
T
A) (480)
It holds that
A is positive deﬁnite ⇔ ∃B invertible, such that A = BB
T
(481)
Petersen & Pedersen, The Matrix Cookbook, Version: February 16, 2008, Page 59
A ONE-DIMENSIONAL RESULTS
A One-dimensional Results
A.1 Gaussian
A.1.1 Density
p(x) =
1

2πσ
2
exp

(x −µ)
2

2

(482)
A.1.2 Normalization

e

(s−µ)
2

2
ds =

2πσ
2
(483)

e
−(ax
2
+bx+c)
dx =

π
a
exp
¸
b
2
−4ac
4a

(484)

e
c2x
2
+c1x+c0
dx =

π
−c
2
exp
¸
c
2
1
−4c
2
c
0
−4c
2

(485)
A.1.3 Derivatives
∂p(x)
∂µ
= p(x)
(x −µ)
σ
2
(486)
∂ ln p(x)
∂µ
=
(x −µ)
σ
2
(487)
∂p(x)
∂σ
= p(x)
1
σ
¸
(x −µ)
2
σ
2
−1

(488)
∂ ln p(x)
∂σ
=
1
σ
¸
(x −µ)
2
σ
2
−1

(489)
A.1.4 Completing the Squares
c
2
x
2
+ c
1
x + c
0
= −a(x −b)
2
+ w
−a = c
2
b =
1
2
c
1
c
2
w =
1
4
c
2
1
c
2
+ c
0
or
c
2
x
2
+ c
1
x + c
0
= −
1

2
(x −µ)
2
+ d
µ =
−c
1
2c
2
σ
2
=
−1
2c
2
d = c
0

c
2
1
4c
2
A.1.5 Moments
If the density is expressed by
p(x) =
1

2πσ
2
exp
¸

(s −µ)
2

2

or p(x) = C exp(c
2
x
2
+ c
1
x) (490)
then the ﬁrst few basic moments are
Petersen & Pedersen, The Matrix Cookbook, Version: February 16, 2008, Page 60
A.2 One Dimensional Mixture of Gaussians A ONE-DIMENSIONAL RESULTS
'x` = µ =
−c1
2c2
'x
2
` = σ
2
+ µ
2
=
−1
2c2
+

−c1
2c2

2
'x
3
` = 3σ
2
µ + µ
3
=
c1
(2c2)
2

3 −
c
2
1
2c2

'x
4
` = µ
4
+ 6µ
2
σ
2
+ 3σ
4
=

c1
2c2

4
+ 6

c1
2c2

2

−1
2c2

+ 3

1
2c2

2
and the central moments are
'(x −µ)` = 0 = 0
'(x −µ)
2
` = σ
2
=

−1
2c2

'(x −µ)
3
` = 0 = 0
'(x −µ)
4
` = 3σ
4
= 3

1
2c2

2
A kind of pseudo-moments (un-normalized integrals) can easily be derived as

exp(c
2
x
2
+ c
1
x)x
n
dx = Z'x
n
` =

π
−c
2
exp
¸
c
2
1
−4c
2

'x
n
` (491)
¿From the un-centralized moments one can derive other entities like
'x
2
` −'x`
2
= σ
2
=
−1
2c2
'x
3
` −'x
2
`'x` = 2σ
2
µ =
2c1
(2c2)
2
'x
4
` −'x
2
`
2
= 2σ
4
+ 4µ
2
σ
2
=
2
(2c2)
2

1 −4
c
2
1
2c2

A.2 One Dimensional Mixture of Gaussians
A.2.1 Density and Normalization
p(s) =
K
¸
k
ρ
k

2πσ
2
k
exp
¸

1
2
(s −µ
k
)
2
σ
2
k

(492)
A.2.2 Moments
An useful fact of MoG, is that
'x
n
` =
¸
k
ρ
k
'x
n
`
k
(493)
where '`
k
denotes average with respect to the k.th component. We can calculate
the ﬁrst four moments from the densities
p(x) =
¸
k
ρ
k
1

2πσ
2
k
exp
¸

1
2
(x −µ
k
)
2
σ
2
k

(494)
p(x) =
¸
k
ρ
k
C
k
exp

c
k2
x
2
+ c
k1
x

(495)
as
Petersen & Pedersen, The Matrix Cookbook, Version: February 16, 2008, Page 61
A.2 One Dimensional Mixture of Gaussians A ONE-DIMENSIONAL RESULTS
'x` =
¸
k
ρ
k
µ
k
=
¸
k
ρ
k

−c
k1
2c
k2

'x
2
` =
¸
k
ρ
k

2
k
+ µ
2
k
) =
¸
k
ρ
k
¸
−1
2c
k2
+

−c
k1
2c
k2

2

'x
3
` =
¸
k
ρ
k
(3σ
2
k
µ
k
+ µ
3
k
) =
¸
k
ρ
k

c
k1
(2c
k2
)
2

3 −
c
2
k1
2c
k2

'x
4
` =
¸
k
ρ
k

4
k
+ 6µ
2
k
σ
2
k
+ 3σ
4
k
) =
¸
k
ρ
k
¸

1
2c
k2

2
¸

c
k1
2c
k2

2
−6
c
2
k1
2c
k2
+ 3

If all the gaussians are centered, i.e. µ
k
= 0 for all k, then
'x` = 0 = 0
'x
2
` =
¸
k
ρ
k
σ
2
k
=
¸
k
ρ
k

−1
2c
k2

'x
3
` = 0 = 0
'x
4
` =
¸
k
ρ
k

4
k
=
¸
k
ρ
k
3

−1
2c
k2

2
¿From the un-centralized moments one can derive other entities like
'x
2
` −'x`
2
=
¸
k,k
ρ
k
ρ
k

µ
2
k
+ σ
2
k
−µ
k
µ
k

'x
3
` −'x
2
`'x` =
¸
k,k
ρ
k
ρ
k

2
k
µ
k
+ µ
3
k
−(σ
2
k
+ µ
2
k

k

'x
4
` −'x
2
`
2
=
¸
k,k
ρ
k
ρ
k

µ
4
k
+ 6µ
2
k
σ
2
k
+ 3σ
4
k
−(σ
2
k
+ µ
2
k
)(σ
2
k
+ µ
2
k
)

A.2.3 Derivatives
Deﬁning p(s) =
¸
k
ρ
k
^
s

k
, σ
2
k
) we get for a parameter θ
j
of the j.th compo-
nent
∂ ln p(s)
∂θ
j
=
ρ
j
^
s

j
, σ
2
j
)
¸
k
ρ
k
^
s

k
, σ
2
k
)
∂ ln(ρ
j
^
s

j
, σ
2
j
))
∂θ
j
(496)
that is,
∂ ln p(s)
∂ρ
j
=
ρ
j
^
s

j
, σ
2
j
)
¸
k
ρ
k
^
s

k
, σ
2
k
)
1
ρ
j
(497)
∂ ln p(s)
∂µ
j
=
ρ
j
^
s

j
, σ
2
j
)
¸
k
ρ
k
^
s

k
, σ
2
k
)
(s −µ
j
)
σ
2
j
(498)
∂ ln p(s)
∂σ
j
=
ρ
j
^
s

j
, σ
2
j
)
¸
k
ρ
k
^
s

k
, σ
2
k
)
1
σ
j
¸
(s −µ
j
)
2
σ
2
j
−1
¸
(499)
Note that ρ
k
must be constrained to be proper ratios. Deﬁning the ratios by
ρ
j
= e
rj
/
¸
k
e
r
k
, we obtain
∂ ln p(s)
∂r
j
=
¸
l
∂ ln p(s)
∂ρ
l
∂ρ
l
∂r
j
where
∂ρ
l
∂r
j
= ρ
l

lj
−ρ
j
) (500)
Petersen & Pedersen, The Matrix Cookbook, Version: February 16, 2008, Page 62
B PROOFS AND DETAILS
B Proofs and Details
B.1 Misc Proofs
B.1.1 Proof of Equation 78
Essentially we need to calculate
∂(X
n
)
kl
∂X
ij
=

∂X
ij
¸
u1,...,un−1
X
k,u1
X
u1,u2
...X
un−1,l
= δ
k,i
δ
u1,j
X
u1,u2
...X
un−1,l
+X
k,u1
δ
u1,i
δ
u2,j
...X
un−1,l
.
.
.
+X
k,u1
X
u1,u2
...δ
un−1,i
δ
l,j
=
n−1
¸
r=0
(X
r
)
ki
(X
n−1−r
)
jl
=
n−1
¸
r=0
(X
r
J
ij
X
n−1−r
)
kl
Using the properties of the single entry matrix found in Sec. 9.7.4, the result
follows easily.
B.1.2 Details on Eq. 502
∂ det(X
H
AX) = det(X
H
AX)Tr[(X
H
AX)
−1
∂(X
H
AX)]
= det(X
H
AX)Tr[(X
H
AX)
−1
(∂(X
H
)AX+X
H
∂(AX))]
= det(X
H
AX)

Tr[(X
H
AX)
−1
∂(X
H
)AX]
+Tr[(X
H
AX)
−1
X
H
∂(AX)]

= det(X
H
AX)

Tr[AX(X
H
AX)
−1
∂(X
H
)]
+Tr[(X
H
AX)
−1
X
H
A∂(X)]

First, the derivative is found with respect to the real part of X
∂ det(X
H
AX)
∂'X
= det(X
H
AX)

Tr[AX(X
H
AX)
−1
∂(X
H
)]
∂'X
+
Tr[(X
H
AX)
−1
X
H
A∂(X)]
∂'X

= det(X
H
AX)

AX(X
H
AX)
−1
+ ((X
H
AX)
−1
X
H
A)
T

Petersen & Pedersen, The Matrix Cookbook, Version: February 16, 2008, Page 63
B.1 Misc Proofs B PROOFS AND DETAILS
Through the calculations, (85) and (194) were used. In addition, by use of (195),
the derivative is found with respect to the imaginary part of X
i
∂ det(X
H
AX)
∂·X
= i det(X
H
AX)

Tr[AX(X
H
AX)
−1
∂(X
H
)]
∂·X
+
Tr[(X
H
AX)
−1
X
H
A∂(X)]
∂·X

= det(X
H
AX)

AX(X
H
AX)
−1
−((X
H
AX)
−1
X
H
A)
T

Hence, derivative yields
∂ det(X
H
AX)
∂X
=
1
2

∂ det(X
H
AX)
∂'X
−i
∂ det(X
H
AX)
∂·X

= det(X
H
AX)

(X
H
AX)
−1
X
H
A

T
and the complex conjugate derivative yields
∂ det(X
H
AX)
∂X

=
1
2

∂ det(X
H
AX)
∂'X
+ i
∂ det(X
H
AX)
∂·X

= det(X
H
AX)AX(X
H
AX)
−1
Notice, for real X, A, the sum of (203) and (204) is reduced to (45).
Similar calculations yield
∂ det(XAX
H
)
∂X
=
1
2

∂ det(XAX
H
)
∂'X
−i
∂ det(XAX
H
)
∂·X

= det(XAX
H
)

AX
H
(XAX
H
)
−1

T
(501)
and
∂ det(XAX
H
)
∂X

=
1
2

∂ det(XAX
H
)
∂'X
+ i
∂ det(XAX
H
)
∂·X

= det(XAX
H
)(XAX
H
)
−1
XA (502)
Petersen & Pedersen, The Matrix Cookbook, Version: February 16, 2008, Page 64
REFERENCES REFERENCES
References
[1] Karl Gustav Andersson and Lars-Christer Boiers. Ordinaera diﬀerentialek-
vationer. Studenterlitteratur, 1992.
[2] J¨orn Anem¨ uller, Terrence J. Sejnowski, and Scott Makeig. Complex inde-
pendent component analysis of frequency-domain electroencephalographic
data. Neural Networks, 16(9):1311–1323, November 2003.
[3] S. Barnet. Matrices. Methods and Applications. Oxford Applied Mathe-
matics and Computin Science Series. Clarendon Press, 1990.
[4] Christopher Bishop. Neural Networks for Pattern Recognition. Oxford
University Press, 1995.
[5] Robert J. Boik. Lecture notes: Statistics 550. Online, April 22 2002. Notes.
[6] D. H. Brandwood. A complex gradient operator and its application in
adaptive array theory. IEE Proceedings, 130(1):11–16, February 1983. PTS.
F and H.
[7] M. Brookes. Matrix Reference Manual, 2004. Website May 20, 2004.
[8] Contradsen K., En introduktion til statistik, IMM lecture notes, 1984.
[9] Mads Dyrholm. Some matrix results, 2004. Website August 23, 2004.
[10] Nielsen F. A., Formula, Neuro Research Unit and Technical university of
Denmark, 2002.
[11] Gelman A. B., J. S. Carlin, H. S. Stern, D. B. Rubin, Bayesian Data
Analysis, Chapman and Hall / CRC, 1995.
[12] Gene H. Golub and Charles F. van Loan. Matrix Computations. The Johns
Hopkins University Press, Baltimore, 3rd edition, 1996.
[13] Robert M. Gray. Toeplitz and circulant matrices: A review. Technical
report, Information Systems Laboratory, Department of Electrical Engi-
neering,Stanford University, Stanford, California 94305, August 2002.
NJ, 4th edition, 2002.
[15] Roger A. Horn and Charles R. Johnson. Matrix Analysis. Cambridge
University Press, 1985.
[16] Mardia K. V., J.T. Kent and J.M. Bibby, Multivariate Analysis, Academic
Press Ltd., 1979.
[17] Carl D. Meyer. Generalized inversion of modiﬁed matrices. SIAM Journal
of Applied Mathematics, 24(3):315–323, May 1973.
Petersen & Pedersen, The Matrix Cookbook, Version: February 16, 2008, Page 65
REFERENCES REFERENCES
[18] Thomas P. Minka. Old and new matrix algebra useful for statistics, De-
cember 2000. Notes.
[19] Daniele Mortari Ortho–Skew and Ortho–Sym Matrix Trigonometry John
Lee Junkins Astrodynamics Symposium, AAS 03–265, May 2003. Texas
A&M University, College Station, TX
[20] L. Parra and C. Spence. Convolutive blind separation of non-stationary
sources. In IEEE Transactions Speech and Audio Processing, pages 320–
327, May 2000.
[21] Kaare Brandt Petersen, Jiucang Hao, and Te-Won Lee. Generative and
ﬁltering approaches for overcomplete representations. Neural Information
Processing - Letters and Reviews, vol. 8(1), 2005.
[22] John G. Proakis and Dimitris G. Manolakis. Digital Signal Processing.
Prentice-Hall, 1996.
[23] Laurent Schwartz. Cours d’Analyse, volume II. Hermann, Paris, 1967. As
referenced in [14].
[24] Shayle R. Searle. Matrix Algebra Useful for Statistics. John Wiley and
Sons, 1982.
[25] G. Seber and A. Lee. Linear Regression Analysis. John Wiley and Sons,
2002.
[26] S. M. Selby. Standard Mathematical Tables. CRC Press, 1974.
[27] Inna Stainvas. Matrix algebra in diﬀerential calculus. Neural Computing
Research Group, Information Engeneering, Aston University, UK, August
2002. Notes.
[28] P. P. Vaidyanathan. Multirate Systems and Filter Banks. Prentice Hall,
1993.
[29] Max Welling. The Kalman Filter. Lecture Note.
Petersen & Pedersen, The Matrix Cookbook, Version: February 16, 2008, Page 66
Index
Anti-symmetric, 48
Block matrix, 40
Chain rule, 14
Cholesky-decomposition, 27
Co-kurtosis, 28
Co-skewness, 28
Cramers Rule, 56
Derivative of a complex matrix, 22
Derivative of a determinant, 7
Derivative of a trace, 11
Derivative of an inverse, 8
Derivative of symmetric matrix, 14
Derivatives of Toeplitz matrix, 15
Dirichlet distribution, 32
Eigenvalues, 25
Eigenvectors, 25
Exponential Matrix Function, 54
Gaussian, conditional, 35
Gaussian, entropy, 39
Gaussian, linear combination, 35
Gaussian, marginal, 34
Gaussian, product of densities, 36
Generalized inverse, 20
Hermitian, 42
Idempotent, 43
Kronecker product, 54
Moore-Penrose inverse, 20
Multinomial distribution, 32
Nilpotent, 43
Norm of a matrix, 58
Norm of a vector, 58
Normal-Inverse Gamma distribution, 32
Normal-Inverse Wishart distribution, 33
Orthogonal, 43
Probability matrix, 50
Pseudo-inverse, 20
Schur complement, 35, 41
Single entry matrix, 46
Singular Valued Decomposition (SVD),
25
Skew-Hermitian, 42
Skew-symmetric, 48
Stochastic matrix, 50
Student-t, 31
Sylvester’s Inequality, 60
Symmetric, 48
Toeplitz matrix, 48
Transition matrix, 50
Unipotent, 43
Vandermonde matrix, 51
Vec operator, 54
Wishart distribution, 32
Woodbury identity, 17
67