Matrix Reference Manual: Matrix Properties
Matrix Properties
Go to: Introduction, Notation, Index
The adjoint of A, ADJ(A) is the transpose of the matrix formed by taking the cofactor of each element of A.
- ADJ(A) A = det(A) I
- If det(A) != 0, then A-1 = ADJ(A) /
det(A) but this is a numerically and computationally poor way of
calculating the inverse.
-
ADJ(AT)=ADJ(A)T
-
ADJ(AH)=ADJ(A)H
Characteristic Equation
The characteristic equation of a matrix
A[n#n] is |tI-A| = 0. It is a
polynomial equation in t.
The properties of the characteristic
equation are described in the section on eigenvalues.
Characteristic Matrix
The characteristic matrix of A[n#n]
is (tI-A) and is a function of the scalar t.
The properties of the characteristic
matrix are described in the section on eigenvalues.
Characteristic Polynomial
The characteristic polynomial, p(t), of a matrix
A[n#n] is p(t) = |tI -
A|.
The properties of the characteristic
polynomial are described in the section on eigenvalues.
The cofactor of a minor of
A:n#n is equal to the product of (i) the determinant of the submatrix
consisting of all the rows and columns that are not in the minor and (ii) -1
raised to the power of the sum of all the row and column indices that are in
the minor.
- The cofactor of the element a(i,j) equals
-1i+j det(B) where B is the matrix formed by
deleting row i and column j from A.
See Minor, Adjoint
The kth compound matrix of
A[m#n] is the
m!(k!(m-k)!)-1#n!(k!(n-k)!)-1
matrix formed from the determinants of all k#k submatrices of A arranged
with the submatrix index sets in lexicographic order. Within this section, we
denote this matrix by Ck(A).
- C1(A) = A
- Cn(A[n#n]) =
det(A)
- Ck(AB) =
Ck(A)Ck(B)
- Ck(aX) =
akCk(X)
- Ck(I) = I
- Ck(AH) =
Ck(A)H
- Ck(AT) =
Ck(A)T
- Ck(A-1) =
Ck(A)-1
The condition number of a matrix is its largest singular value divided by its smallest singular value.
- If Ax=y and A(x+p)=y+q
then ||p||/||x|| <= k ||q||/||y|| where
k is the condition number of A. Thus it provides a sensitivity
bound for the solution of a linear equation.
- If A[2#2] is hermitian positive
definite then its condition number, r, satisfies 4 <=
tr(A)2/det(A) = (r+1)2/r.
This expression is symmetric between r and r-1 and is
monotonically increasing for r>1. It therefore provides an easy way
to check on the range of r.
Conjugate Transpose
X=YH is the Hermitian transpose or Conjugate
transpose of Y iff
xi,j=yj,iC.
See Hermitian Transpose.
The pair of matrices {A[n#n],
C[m#n]} are constructible iff
{AH, CH} are controllable.
- If {A, C} are observable then
they are constructible.
- If det(A)!=0 and {A, C} are constructible then they
are observable.
- If {A, C} are constructible then they are detectable.
The pair of matrices {A[n#n],
B[n#m]} are controllable iff any of the
following equivalent conditions are true
- There exists a G[mn#n] such that
An = CG where C = [B AB
A2B ...
An-1B][n#mn] is the
controllability matrix.
- If xTArB =
0 for 0<=r<n then
xTAn = 0.
- If xTB = 0 and
xTA = kxT then
either k=0 or else x = 0.
- If {A, B} are reachable then they
are controllable.
- If det(A)!=0 and {A, B} are controllable then they are
reachable.
- If {A, B} are controllable then they are stabilizable.
- {DIAG(a), b} are controllable iff all non-zero elements of
a are distinct and all the corresponding elements of b are
non-zero.
A Hermitian square matrix A
is
This definition only applies to Hermitian and real-symmetric matrices; if
A is non-real and non-Hermitian then
xHAx is complex for some values of x and
so the concept of definiteness does not make sense. Some authors also call a
real non-symmetric matrix positive definite if
xHAx > 0 for all non-zero real x;
this is true iff its symmetric part is positive definite (see below). We
abbreviate positive as +ve below.
- A (not necessarily symmetric) real matrix A satisfies
xHAx > 0 for all non-zero real x iff
its symmetric part B=(A+AT)/2 is
+ve definite. Indeed xTAx=
xTBx for all x.
- The following are equivalent
- A is Hermitian and +ve semidefinite
- A is Hermitian and all its eigenvalues are >=0
- A=BHB for some B (not
necessarily square)
- A=C2 for some Hermitian C.
- DHAD is Hermitian and +ve
semidefinite for any D
- If A is +ve definite then A-1 exists and is +ve
definite.
- If A is +ve semidefinite, then
- the eigenvalues of A are equal to its singular values
- for any integer k>0 there
exists a unique +ve semidefinite B with
A=Bk. This B also satisifes:
- AB=BA
- B=p(A) for some polynomial p()
- rank(B) = rank(A)
- if A is real then so is B.
- |ai,j| <=
sqrt(ai,iaj,j) [3.6]
- |aHAb|2 <=
aHAa×bHAb
for any a, b [3.6]
- A is +ve definite iff all its eigenvalues are > 0.
- If A is +ve definite then det(A) > 0 and tr(A) >
0.
- A Hermitian matrix A[2#2] is +ve definite iff
det(A) >0 and tr(A) > 0.
- The columns of B[m#n] are linearly
independent iff BHB is +ve definite.
- If A and B are +ve semidefinite,
then A+B is +ve semidefinite
- If B is +ve definite and A is +ve semidefinite then:
- B-1A is diagonalizable (i.e. similar to a diagonal
matrix) and has non-negative
eigenvalues [3.7]
- tr(B-1A) = 0 iff A=0
- A+B is positive definite
The pair of matrices {A[n#n],
C[m#n]} are detectable iff
{AH, CH} are stabilizable.
If {A, C} are observable or
constructible then they are detectable..
For an n#n matrix A, det(A) is a scalar number
defined by
det(A)=sgn(PERM(n))'*prod(A(1:n,PERM(n)))
This is the sum of n! terms each involving the product of n
matrix elements of which exactly one comes from each row and each column. Each
term is multiplied by the signature (+1 or -1) of the column-order permutation
. See the notation section for definitions of sgn(),
prod() and PERM().
The determinant is important because INV(A) exists iff det(A)
!= 0.
Geometric Interpretation
The determinant of a matrix equals the +area of the +parallelogram that has
the matrix columns as n of its sides. If a vector space is transformed
by multiplying by a matrix A, then all +areas will be multiplied by
det(A).
- det(AT) = det(A)
- det(AH) = conj(det(A))
- det(cA) = cn det(A)
- det(Ak) = (det(A))k ,
k must be positive if det(A)=0.
- Interchanging any pair of columns of a matrix multiplies its determinant by
-1(likewise rows).
- Multiplying any column of a matrix by c multiplies its determinant
by c (likewise rows).
- Adding any multiple of one column onto another column leaves the
determinant unaltered (likewise rows).
- det(A) != 0 iff INV(A) exists.
- [A,B:n#m ;
m>=n]: If Q = CHOOSE(m,n). and
d(k) = det(A(:,Q(k,:))
det(B(:,Q(k,:)) for k=1:rows(Q) then
det(ABT) = sum(d). This is the Binet-Cauchy
theorem.
- Suppose that for some r, P = CHOOSE(n,r) and
Q = CHOOSE(n,n-r) with the rows of Q ordered so
that P(k,:) and Q(k,:) have no elements in common.
If we define D(m,k) = (-1)sum([P(m,:)
P(k,:)])
det(A(P(m,:)T,P(k,:))
det(A(Q(m,:)T,Q(k,:)) for
m,k=1:rows(P) then det(A) =
sum(D(m,:)) = sum(D(:,k)) for any
k or m. This is the Laplace
expansion theorem.
- If we set k=r=1 then P(m,:)=[m] and we
obtain the familiar expansion by the first column:
d(m)=(-1)m+1 A(m,1)
det(A([1:m-1 m+1:n]T,2:n)) and
det(A)=sum(d).
- det(A) = 0 iff the columns of A are linearly dependent
(likewise rows).
- det(A) = 0 if two columns are identical (likewise rows).
- det(A) = 0 if any column consists entirely of zeros (likewise
rows).
- If A = [a1 a2
... an] then |det(A)| <=
prod(||ai||) with equality iff the
ai are mutually orthogonal where ||a||
is the Euclidean norm; this is the
Hadamard inequality.
- If |ai,j|<=B for all i,j then
|det(A)| <= n0.5nBn
- [A +ve semidefinite]: det(A)
<= prod(diag(A))
- [A:3#3]: If A = [a b c] then
det(A) = det([a b c]) =
aT SKEW(b) c =
bT SKEW(c) a =
cT SKEW(a) b
- det([a b; c d]) = ad - bc
- det([a b c]) =
a1b2c3
-
a1b3c2
-
a2b1c3 +
a2c1b3 +
a3b1c2
-
a3c1b2
- The determinant of a diagonal or
triangular matrix is the product of its
diagonal elements.
- The determinant of a unitary matrix has
an absolute value of 1.
- The determinant of an orthogonal
matrix is +1 or -1.
- The determinant of a permutation
matrix equals the signature of the column permutation.
- [A,B:n#n ]:det(AB)
= det(A) det(B)
- [A,B:m#n ]:det(I +
ATB) = det(I +
ABT) = det(I +
BTA) = det(I +
BAT) [3.2]
- [A:n#n
]:det(A+xyT) =
(1+yTA-1x) det(A)
[3.4]
- det(I+xyT) = 1+yTx
= 1+xTy [3.3]
- det(kI+xyT) =
kn+kn-1yTx
=
kn+kn-1xTy
- [A,B: n#n, symmetric, +ve semidefinite]:
- (det(A+B))1/n >=
(det(A))1/n + (det(B))1/n;
this is the
Minkowski determinant inequality.
- If 0<=k<=1, then (det(kA+(1-k)B))1/n
>= k(det(A))1/n + (1-k)(det(B))1/n
- If 0<=k<=1, then det(kA+(1-k)B)
>= (det(A))k (det(B))1-k
- det(A+B) >= sqrt(det(4AB))
- For any integer m>0, n(det(A)det(B))m/n
<= tr(AmBm)
In this section we have A[m#m],
B[m#n], C[n#m]
and D[n#n].
- det([A, B; C, D]) = det([D, C; B, A]) =
det(A)*det(D-CA-1B) =
det(D)*det(A-BD-1C) [3.1]
- det([a, bT; c, D]) = (a -
bTD-1c)det(D)
- det([I, B; C, I]) =
det(I[m#m]-BC) =
det(I[n#n]-CB)
- det([A, B; 0, D]) = det([A, 0; C, D]) = det(A)
det(D)
- det([a, bT; 0, D]) =
det([a, 0; c, D]) = a det(D)
- For the special case when m=n (i.e. A, B,
C, D all n#n):
- det([A, B; C, 0]) = -det(BCT)
- [AB=BA]: det([A, B; C, D])
= det(DA-CB)
- [AC=CA]: det([A, B; C, D])
= det(AD-CB)
- [BD=DB]: det([A, B; C, D])
= det(DA-BC)
- [CD=DC]: det([A, B; C, D])
= det(AD-BC)
See also Grammian, Schur
Complement
The displacement rank of X[m#n] is given by
dis_rank(X) = rank(X - ZXZT) where
the Z are shift matrices of size
m#m and n#n respectively.
- dis_rank(X+Y) <= dis_rank(X) +
dis_rank(Y)
- dis_rank(XY) <= dis_rank(X) + dis_rank(Y)
- dis_rank(X-1)=dis_rank(JXJ) where J is the
exchange matrix.
- [X: Toeplitz] dis_rank(X) = 2
unless X is upper or lower triangular in which case dis_rank(X)=1
unless X = 0 , in which case dis_rank(X)=0.
Eigenvalues
The eigenvalues of A are the roots of its characteristic equation: |tI-A|
= 0.
The properties of the eigenvalues are
described in the section on eigenvalues.
The field of values of a square matrix A is the set of complex
numbers xHAx for all x with
||x||=1.
- The field of values is a closed convex set.
- The field of values contains the convex hull of the eigenvalues of
A.
- If A is normal then the field of
values equals the convex hull of its eigenvalues.
- [n<5]
A[n#n] is normal iff its field of values is the convex hull of
its eigenvalues.
- A is hermitian iff its field of
values is a real interval.
- If A and B are unitarily similar, they have the same
field of values.
A generalized inverse of X:m#n is any matrix,
X#:n#m satisfying
XX#X=X. Note that if X is singular or
non-square, then X# is not unique. This is also called a
weak generalized inverse to distinguish it from the pseudoinverse.
- If X is square and non-singular, X# is unique and
equal to X-1.
- (X#)H is a generalized inverse of
XH.
- [k!=0]
X#/k is a generalized inverse of
kX.
- [A,B non-singular]
B-1X#A-1 is a generalized
inverse of AXB
- rank(X#) >= rank(X).
- rank(X)=rank(X#) iff X is also the
generalized inverse of X# ( i.e.
X#XX#=X#.).
- XX# and X#X are idempotent and have the same rank as X.
- If Ax-b has any solutions, then
x=A#b is a solution.
- If AA# is hermitian,
a value of x that minimizes ||Ax-b|| is given by
x=A#b. With this value of x, the error
Ax-b is orthogonal to the columns of A. If we define the projection matrix P=AA#,
then Ax=Pb and Ax-b=-(I-P)b.
- If X:m#n has rank r, we can find
A:n#n-r, B:n#r and C:m#m-r whose
columns form bases for the null space of X, the range of
X+X and the null space of XH
respectively.
- The set of generalized inverses of X is precisely given by
X#=X++AY+BZCH
for arbitrary Y:n-r#m and Z:r#m-r where
X+ is the pseudoinverse.
- For a given choice of A, B and C, each
X# corresponds to a unique Y and Z.
- XX# is hermitian iff
Z=0.
- If X:m#n has rank r, we can find
A:n#n-r, F:n#r and C:m#m-r whose
columns form bases for the null space of X, the range of
X+ and the null space of XH
respectively. We can also find G:m#r such that
X+=FGH.
- The set of generalized inverses X# of X, for which
X is also the generalised inverse of X# is precisely
given by
X#=(F+AV)(G+CW)H
for arbitrary V:n-r#r and W:m-r#r.
- For a given choice of A, C, F and G each
X# corresponds to a unique V and W.
See also: Pseudoinverse
The gram matrix of X, GRAM(X), is the matrix
XHX.
If X is m#n, the elements of GRAM(X) are
the n2 possible inner products between pairs of its
columns. We can form such a matrix from n vectors in any vector
space having an inner product.
See also: Grammian
The grammian of a matrix X, gram(X), equals
det(GRAM(X)) =
det(XHX).
- gram(X) is real and >= 0.
- gram(X) > 0 iff the columns of X are linearly independent,
i.e. iff Xy = 0 implies y = 0
- [Xm#n]:
gram(X)=0 if m<n.
- gram(X) = 0 iff a principal minor of
GRAM(X) is zero.
- [Xn#n]:
gram(X) = gram(XH) =
|det(X)|2
- gram(x) = xHx
- gram([X Y]) = gram([Y X]) =
gram(X)*det(YHY-YHX(XHX)-1XHY)
=
gram(X)*det(YH(I-X(XHX)-1XH)Y)
- gram([X y]) = gram([y X]) =
gram(X)*yHy-yHX(XHX)-1XHy
=
gram(X)*yH(I-X(XHX)-1XH)y
- gram([X y]) = gram(X) ||XX#y -
y||2 where X# is the generalized inverse so that ||XX#y -
y|| equals the distance between y and its orthogonal projection
onto the space spanned by the columns of X.
- gram([X Y]) <= gram(X) gram(Y); this is the
generalised Hadamard
inequality.
- gram([X Y]) = gram(X) gram(Y) iff either
XHY = 0 or gram(X)
gram(Y) = 0
- If X = [x1 x2 ...
xn] then gram(X) <=
prod(||xi||2) =
prod(diag(XHX))
Geometric Interpretation
The grammian of Xm#n is the squared
"volume" of the n-dimensional parallelepiped spanned by the columns of
X.
See also: Gram Matrix
X=YH is the Hermitian transpose or Conjugate
transpose of Y iff x(i,j)=conj(y(j,i)).
The inertia of an m#m square matrix is the scalar triple
(p,n,z) where p+n+z=m and
p, n and z are respectively the number of eigenvalues,
counting multiplicities, with positive, negative and zero real parts. Some
authors call this the signature rather than the inertia.
- If the inertia of a Hermitian matrix, A, is (p,n,z) then
- the rank of A is p+n
- the signature of A is p-n but
note that some authors use signature to denote the triple (p,n,z)
itself.
- If A is Hermitian, it is conjunctive to a diagonal matrix of the form
D=DIAG(Ip#p,-In#n,0z#z)
iff the
inertia of A
equals (p,n,z).
D is the intertia matrix of A and
A=XHDX
for some non-singular X. This is Sylvester's law of interia.
B is a left inverse of A if BA=I.
B is a right inverse of A if AB=I.
If BA=AB=I then B is the inverse of
A and we write B=A-1.
- [A:n#n] AB=I iff BA=I, hence
inverse, left inverse and right inverse are all
equivalent for square matrices.
- [A,B:n#n]
(AB)-1=B-1A-1
- [A:m#n] A has a left inverse iff
rank(A)=n and a right inverse iff
rank(A)=m.
- [A:n#m, B:m#n] AB=I implies that
n<=m and that
rank(A)=rank(B)=n.
Inverse of Block Matrices
- [A, B; C, D]-1 = [Q-1,
-Q-1BD-1;
-D-1CQ-1,
D-1(I+CQ-1BD-1)]
where Q =(A-BD-1C) is the Schur Complement of D [3.5]
= [A-1(I+BP-1CA-1),
-A-1BP-1;
-P-1CA-1, P-1]
where P =(D-CA-1B) is the Schur Complement of A
[3.5]
=[ I, -A-1B; -D-1C, I]
DIAG((A-BD-1C)-1,
(D-CA-1B)-1)
=DIAG((A-BD-1C)-1,
(D-CA-1B)-1) [ I,
-BD-1; -CA-1, I]
=DIAG(A-1, 0) + [-A-1B;
I]
(D-CA-1B)-1[-CA-1,
I]
=DIAG(0, D-1) + [I;
-D-1C]
(A-BD-1C)-1[I,
-BD-1]
- [A, 0; C, D]-1 = [A-1, 0;
-D-1CA-1, D-1]
=[ I, 0; -D-1C, I] DIAG(A-1,
D-1)
=DIAG(A-1, D-1) [ I, 0;
-CA-1, I]
- [A, B; C, 0]-1 = DIAG(A-1,
0) - [-A-1B; I]
(CA-1B) -1[-CA-1,
I]
- [A, b; cT, d]-1
= [Q-1,
-d-1Q-1b;
-d-1cTQ-1,
d-1(1+d-1cTQ-1b)]
where Q
=(A-d-1bcT),
=
[A-1(I+p-1bcTA-1),
-p-1A-1b;
-p-1cTA-1,
p-1] where p
=(d-cTA-1b)
=[ I, -A-1b;
-d-1cT, 1]
DIAG((A-d-1bcT)-1,
(d-cTA-1b)-1)
=DIAG((A-d-1bcT)-1,
(d-cTA-1b)-1)
[ I, -bd-1;
-cTA-1, 1]
=DIAG(A-1, 0) +
(d-cTA-1b)-1[A-1b;
-1] [cTA-1, -1]
=DIAG(0, d-1) + [I;
-d-1cT]
(A-d-1bcT)-1[I,
-d-1b]
- [A, 0; cT, d]-1
= [A-1, 0;
-d-1cTA-1,
d-1]
=[ I, 0; -d-1cT, 1]
DIAG(A-1, d-1)
=DIAG(A-1, d-1) [ I, 0;
-cTA-1, 1]
- [A, b; cT, 0]-1 =
DIAG(A-1, 0) -
(cTA-1b)
-1[A-1b; -1]
[cTA-1, -1]
See also: Generalized Inverse, Pseudoinverse, Inversion
Lemma
The kernel (or null space) of A is the subspace of vectors x
for which Ax = 0. The dimension of this subspace is the nullity
of A.
- The kernel of A is the orthogonal complement of the range of
AH
The columns of A are linearly independent iff the only
solution to Ax=0 is x=0.
- rank(A[m#n]) = n
iff its columns are linearly independent. [1.5]
- If the columns of A[m#n] are linearly
independent then m >= n [1.3, 1.5]
- If A has linearly independent columns and
A=F[m#r]G[r#n]
then r>=n. [1.1]
A matrix norm is a real-valued function of a square matrix satisfying
the four axioms listed below. A generalized matrix norm satisfies only
the first three.
- Positive: ||X||=0 iff X=0 else ||X||>0
- Homogeneous: ||cX||=|c| ||X|| for any real or
complex scalar c
- Triangle Inequality:
||X+Y||<=||X||+||Y||
- Submultiplicative: ||XY||<=||X|| ||Y||
If ||y|| is a vector norm, then we define the
induced matrix norm to be ||X||=max(||Xy|| for
||y||=1)
The Euclidean or Frobenius norm of a matrix A is
given by ||A||F =
sqrt(sum(ABS(A).2)). It is always a real number. The
closely related Hilbert-Schmidt norm of a square matrix An#n
is given by ||A||HS = n-½
||A||F.
- ||A||F =
||AT||F =
||AH||F
- ||A||F2 =
tr(AHA) = sum(CONJ(A).*A)
- [Q: orthogonal]:
||A||F = ||QA||F =
||AQ||F
||A||p = max(||Ax||p)
where the max() is taken over all x with ||x||p
= 1 where ||x||p =
sum(abs(x)•p)(1/p) denotes the
vector p-norm for
p>=1.
- ||AB||p <= ||A||p
||B||p
- ||Ax||p <= ||A||p
||x||p
- [A:m#n]: ||A||2 <=
||A||F <= n½
||A||2
- [A:m#n]: max(ABS(A))
<= ||A||2 <= sqrt(mn)
max(ABS(A))
- ||A||2 <= sqrt(||A||1
||A||inf)
- ||A||1 =
max(sum(ABS(AT)))
- ||A||inf = max(sum(ABS(A)))
- [A:m#n]: ||A||inf
<= sqrt(n) ||A||2 <= sqrt(mn)
||A||inf
- [A:m#n]: ||A||1 <=
sqrt(m) ||A||2 <= sqrt(mn)
||A||1
- [Q: orthogonal]:
||A||2 = ||QA||2 =
||AQ||2
A kth-order minor of A is the determinant of a
k#k submatrix of A.
A principal minor is the determinant of a submatrix whose diagonal
elements lie on the principal diagonal of A.
The null space (or kernel) of A is the subspace of vectors x
for which Ax = 0.
- The null space of A is the orthogonal complement of the range of
AH
- The dimension of the null space of A is the nullity of A.
- Given a vector x, we can choose a Householder matrix
P=I-2vvH with v = (x +
ke1)/||x + ke1|| where
k=sgn(x(1))*||x|| and e1 is the first
column of the identity matrix. The first row of P equals
-k-1xT and the remaining rows form
an orthonormal basis for the null space of xT.
The nullity of a matrix A is the dimension of the null space of
A.
The pair of matrices {A[n#n],
C[m#n]} are observable iff
{AH, CH} are reachable.
For an n#n matrix A, pet(A) is a scalar number
defined by
pet(A)=sum(prod(A(1:n,PERM(n))))
This is the same as the determinant except that the individual terms within
the sum are not multiplied by the signatures of the column permutations.
Properties of Permanents
- pet(A.') = pet(A)
- pet(A') = conj(pet(A))
- pet(cA) = cn pet(A)
- [P: permutation matrix]: pet(PA)
= pet(AP) = pet(A)
- [D: diagonal matrix]: pet(DA) =
pet(AD) = pet(A) pet(D) = pet(A)
prod(diag(D))
Permanents of simple matrices
- pet([a b; c d]) = ad + bc
- The permanent of a diagonal or triangular matrix is the product of its
diagonal elements.
- The permanent of a permutation matrix equals 1.
The potency of a non-negative matrix
A is the smallest n>0 such that
diag(An) > 0 i.e. all diagonal elements of
An are strictly positive. If no such n exists
then A is impotent.
The pseudoinverse (also called the Natural Inverse or
Moore-Penrose Pseudoinverse) of Xm#n is
the unique [1.20] n#m matrix
X+ that satisfies:
- XX+X=X (i.e.
X+ is a generalized inverse of
X).
-
X+XX+=X+
(i.e. X is a generalized inverse of
X+).
- (XX+)H=XX+
-
(X+X)H=X+X
- If X is square and non-singular then
X+=X-1.
- If X=UDVH is the singular value decomposition of X, then
X+=VD+UH where
D+ is formed by inverting all the non-zero elements of
DT.
- If D is a (not necessarily square) diagonal matrix, then
D+ is formed by inverting all the non-zero elements of
DT.
- The pseudoinverse of X is the generalized
inverse having the lowest Frobenius norm.
- If X is real then so is X+.
- (X+)+=X
-
(XT)+=(X+)T
-
(XH)+=(X+)H
- (cX)+=c-1X+
for any real or complex scalar c.
-
X+=XH(XXH)+=(XHX)+XH.
- If Xm#n =
Fm#r Gr#n has
rank r then X+=
G+F+=
GH(FHXGH)-1FH.
- If Xm#n has rank n (i.e. the
columns are linearly independent) then
X+=(XHX)-1XH
and X+X=I.
- If Xm#n has rank m (i.e. the
rows are linearly independent) then
X+=XH(XXH)-1
and XX+=I.
- If X has orthonormal rows or orthonormal columns then
X+= XH .
- XX+ is a projection onto the column space of
X.
- [rank(X)=1]: X+ =
XH/tr(XHX) =
XH/ ||X||F2
where ||X||F is the Frobenius
Norm (see rank-1 matrices)
- (xyH)+ =
yxH/(xHxyHy)
- x+ =
xH/(xHx)
See also: Inverse, Generalized
Inverse
The rank of an m#n matrix A is the smallest r
for which there exist F[m#r] and
G[r#n] such that A=FG. Such a
decomposition is a full-rank decomposition. As a special case, the rank
of 0 is 0.
-
A=F[m#r]G[r#n]
implies that rank(A) <= r .
- rank(A)=1 iff A = xyT for some
x and y.
- rank(A[m#n]) <= min(m,n).
[1.3]
- rank(A[m#n]) = n iff its columns are
linearly independent.
[1.5]
- rank(A) = rank(AT) =
rank(AH)
- rank(A) = maximum number of linearly independent columns (or rows)
of A.
- rank(A) is the dimension of the range of
A.
- rank(A[n#n]) +
nullity(A[n#n])
= n
- det(A[n#n])=0
iff
rank(A[n#n])<n.
- rank(A + B) <= rank(A) + rank(B)
- rank([A B]) = rank(A) + rank(B -
AA#B) where A# is a generalized inverse of A.
- rank([A; C]) = rank(A) + rank(C -
CA#A)
- rank([A B; C 0]) = rank(B) + rank(C) +
rank((I - BB#)A(I -
CC#))
- rank(AAH) =
rank(AHA) = rank(A) [see grammian]
- rank(AB) + rank(BC) <= rank(B) + rank(ABC)
- rank(A[m#n]) + rank(B) - n
<= rank(AB) <= min(rank(A), rank(B))
- [X: non-singular]: rank(XA) =
rank(AX) = rank(A)
- rank(KRON(A,B)) = rank(A)rank(B)
- rank(DIAG(A,B,...,Z)) =
sum(rank(A), rank(B), ..., rank(Z))
The range (or image) of A is the subspace of vectors that equal
Ax for some x. The dimension of this subspace is the rank of
A.
- [A:m#n] The range of A is
the orthogonal complement of the null space of
AH.
The pair of matrices {A[n#n],
B[n#m]} are reachable iff any of the
following equivalent conditions are true
- rank(C)=n where C = [B AB A2B
... An-1B][n#mn] is
the controllability matrix.
- If xHArB =
0 for 0<=r<n then x = 0.
- If xHB = 0 and
xHA = kxH then
x = 0.
- For any v, it is possible to choose
L[n#m] such that
eig(A+BLH)=v.
- If {A, B} are reachable then they are controllable and stabilizable.
- If det(A)!=0 and {A, B} are controllable then they are reachable.
- {DIAG(a), b} are reachable iff all elements of a are
distinct and all elements of b are non-zero.
Given a block matrix M =
[A[m#m], B; C,
D[n#n]], then
P[n#n]=D-CA-1B and
Q[m#m]=A-BD-1C are
respectively the Schur Complements of A and D in
M.
- det([A, B; C, D]) = det([D, C; B, A]) =
det(A)*det(P) =
det(Q)*det(D) [3.1]
- [A, B; C, D]-1 = [Q-1,
-Q-1BD-1;
-D-1CQ-1,
D-1(I+CQ-1BD-1)]=
[A-1(I+BP-1CA-1),
-A-1BP-1;
-P-1CA-1, P-1]
[3.5]
The spectral radius, rho(A), of
A[n#n] is the maximum modulus of any of its
eigenvalues.
- rho(A) <= ||A|| where ||A|| is any matrix norm.
- For any a>0, there exists a matrix norm such that ||A|| -
a <= rho(A) <= ||A||.
- If ABS(A)<=B then
rho(A)<=rho(ABS(A))<=rho(B)
- [A,B: real] If
B>=A>=0 then rho(B)>=rho(A)
- [A: real] If A>=0 then
rho(A)>=aij for all i,j
- [A,B: Hermitian]
abs(eig(A+B)-eig(A))<=rho(B)
where eig(A) contains the eigenvalues of A sorted into ascending
order. This shows that perturbing a hermitian matrix slightly doesn't have too
big an effect on its eigenvalues.
The spectrum of A[n#n] is the set of all its
eigenvalues.
The pair of matrices {A[n#n],
B[n#m]} are stabilizable iff either of
the following equivalent conditions are true
- If xTB = 0 and
xTA = kxT then
either |k|< 1 or else x = 0.
- It is possible to choose L[n#m] such that
all elements of eig(A+BLH) have absolute
value < 1.
- If {A, B} are reachable or
controllable then they are stabilizable.
- {DIAG(a), b} are stabilizable iff all elements of a
with modulus >=1 are distinct and all the corresponding elements of b
are non-zero.
A submatrix of A is a matrix formed by the elements
a(i,j) where i ranges over a subset of the rows and
j ranges over a subset of the columns.
The trace of a square matrix is the sum of its diagonal elements:
tr(A)=sum(diag(A))
In the formulae below, we assume that matrix dimensions ensure that the
argument of tr() is square.
- tr(aA) = a × tr(A)
- tr(AT) = tr(A)
- tr(AH) = tr(A)C
- tr(A+B) = tr(A) + tr(B)
- tr(AB) = tr(BA) [1.17]
- tr((AB)k)
=tr((BA)k)
- tr(abT) =
aTb
- tr(XbaT) =
aTXb
- tr(abH) =
(aHb)C
- tr(ABCD) = tr(BCDA) = tr(CDAB) = tr(DABC)
- Similar matrices have the same
trace: tr(X-1AX) = tr(A)
- tr(AB) =
A:TBT: =
AT:TB: =
AH:HB: =
(A:HBH:)C
[1.18]
- tr(ATB) = tr(ABT)
= sum(A: • B:) = A:T B:
- tr(AHB) = tr(BAH)
= sum(AC: • B:) =
A:H B:
- tr([A B]T [C D]) =
tr(ATC) +
tr(BTD) [1.19]
- tr([A b]T [C d]) =
tr(ATC) +
bTd
- tr([A B]T X[C D]) =
tr(ATXC) +
tr(BTXD)
- tr([A b]T X[C d]) =
tr(ATXC) +
bTXd
- tr(A ⊗ B) = [A,B:
n#n] tr(A) tr(B) where ⊗ denotes the
Kroneker product.
- [D is diagonal]
tr(XDXT) =
sumi(di
xiTxi) and
tr(XDXH) =
sumi(di
xiHxi) =
sumi(di
|xi|2) [1.16]
X=YT is the transpose of Y iff
x(i,j)=y(j,i).
The vector formed by concatenating all the columns of X is written
vec(X) or, in this website, X:. If y =
X[m#n]: then
yi+m(j-1) =
xi,j.
- a ⊗ b=(baT): where
⊗ denotes the Kroneker
product.
- sum((A • B):) =
tr(ATB) = sum(A: • B:) =
A:T B: =
(AT:)T
BT: where A • B denotes the
Hadamard or elementwise product.
- tr(AHB) =
sum(AC: • B:) =
A:H B:
- [A, B Hermitian] tr(AHB) = tr(BHA)
=
A:H B: = B:H A: is
real-valued.
- (ABC): = (CT ⊗ A)
B:
- (AB): = (I ⊗ A) B: =
(BT ⊗ I) A:=
(BT ⊗ A) I:
- (AbcT): = (c ⊗ A) b
= c ⊗ Ab
- ABc = (cT ⊗ A) B:
- aTBc = (c ⊗
a)T B: = (cT
⊗ aT) B: =
(acT):T B: =
B:T (a ⊗ c) =
B:T (caT):
- abH ⊗ cdH =
(a ⊗ c)(b ⊗ d)H =
(caT):(dbT):H
- aHbcHd =
aHb ⊗
cHd = (a ⊗
c)H(b ⊗ d) =
(caT):H(dbT):
- (ABC):T =
B:T (C ⊗ AT)
- (AB):T =
B:T (I ⊗ AT)
= A:T (B ⊗ I)
= I:T (B ⊗
AT)
- (AbcT):T =
bT(cT ⊗
AT) = cT ⊗
bTAT
- aTBTC =
B:T (a ⊗ C)
- If Y=AXB+CXD+... then X: =
(BT ⊗ A + DT
⊗ C+...)-1 Y: however this is a slow and often
ill-conditioned way of solving such equations.
- (A[m#n]T): =
TVEC(m,n) (A:) [see vectorized transpose]
A vector norm is a real-valued function of a vector satisfying the
three axioms listed below.
- Positive: ||x||=0 iff x=0 else ||x||>0
- Homogeneous: ||cx||=|c| ||x|| for any real or
complex scalar c
- Triangle Inequality:
||x+x||<=||x||+||x||
If <x, y> is an inner
product then ||x|| = sqrt(<x, x>) is a vector
norm.
- A vector norm may be derived from an inner product iff it satisfies the
parallelogram identity:
||x+y||2+||x-y||2=2||x||2+2||y||2
- If ||x|| is derived from <x, y> then
4Re(<x, y>) =
||x+y||2-||x-y||2 =
2||x+y||2-||x||2-||y||2
The Euclidean norm of a vector x equals the square root of the sum of
the squares of the absolute values of all its elements and is written
||x||. It is always a real number and corresponds to the normal notion
of the vector's length.
The p-norm of a vector x is defined by
||x||p =
sum(abs(x)•p)(1/p) for
p>=1. The most common values of p are 1, 2 and infinity.
- City-Block Norm: ||x||1 = sum(abs(x))
- Euclidean Norm: ||x|| = ||x||2 =
sqrt(x'x)
- Infinity Norm: ||x||inf = max(abs(x))
- Hölder inequality:
abs(x)Tabs(y)
<= ||x||p ||y||q where
1/p + 1/q = 1
- ||x||inf <= ||x||2 <=
||x||1 <= sqrt(n) ||x||2 <=
n ||x||inf
This page is part of The Matrix Reference
Manual. Copyright © 1998-2022 Mike Brookes, Imperial
College, London, UK. See the file gfl.html for copying
instructions. Please send any comments or suggestions to "mike.brookes" at
"imperial.ac.uk".
Updated: $Id: property.html 11291 2021-01-05 18:26:10Z dmb $