These results are used in the proofs below. In the following lemmas, A is a matrix with complex elements and n columns, B is a matrix with complex elements and n rows.
The assumption says that all elements of A*A are zero. Therefore,
0
=
Tr
(
A
∗
A
)
=
∑
j
=
1
n
(
A
∗
A
)
j
j
=
∑
j
=
1
n
∑
i
=
1
m
(
A
∗
)
j
i
A
i
j
=
∑
i
=
1
m
∑
j
=
1
n

A
i
j

2
.
Therefore, all
A
i
j
equal 0 i.e. A=0.
This is proved in a manner similar to the argument of Lemma 2 (or by simply taking the Hermitian conjugate).
Suppose that B and C are two nbym matrices over
K
satisfying the MoorePenrose criteria. Observe then that
AB = (AB)* = B*A* = B*(ACA)* = B*A*C*A* = (AB)*(AC)* = ABAC = AC.
Analogously we conclude that BA=CA. The proof is completed by observing that then
B = BAB = BAC = CAC = C.
The proof proceeds in stages.
For any
x
∈
K
, we define
x
+
:=
{
x
−
1
,
if
x
≠
0
0
,
if
x
=
0
It is easy to see that
x
+
is a pseudoinverse of
x
(interpreted as a 1by1 matrix).
Let
D
be an nbyn matrix over K with zeros off the diagonal. We define
D
+
as an nbyn matrix over K with
(
D
+
)
i
j
:=
(
D
i
j
)
+
as defined above. We write simply
D
i
j
+
for
(
D
+
)
i
j
=
(
D
i
j
)
+
.
Notice that
D
+
is also a matrix with zeros off the diagonal.
We now show that
D
+
is a pseudoinverse of
D
:

(
D
D
+
D
)
i
j
=
D
i
j
D
i
j
+
D
i
j
=
D
i
j
⇒
D
D
+
D
=
D

(
D
+
D
D
+
)
i
j
=
D
i
j
+
D
i
j
D
i
j
+
=
D
i
j
+
⇒
D
+
D
D
+
=
D
+

(
D
D
+
)
i
j
∗
=
(
D
D
+
)
j
i
¯
=
D
j
i
D
j
i
+
¯
=
(
D
j
i
D
j
i
+
)
∗
=
D
j
i
D
j
i
+
=
D
i
j
D
i
j
+
⇒
(
D
D
+
)
∗
=
D
D
+

(
D
+
D
)
i
j
∗
=
(
D
+
D
)
j
i
¯
=
D
j
i
+
D
j
i
¯
=
(
D
j
i
+
D
j
i
)
∗
=
D
j
i
+
D
j
i
=
D
i
j
+
D
i
j
⇒
(
D
+
D
)
∗
=
D
+
D
The singular value decomposition theorem states that there exists a factorization of the form
A
=
U
Σ
V
∗
where:
U is an
mby
m unitary matrix over
K.
Σ is an
mby
n matrix over
K with nonnegative real numbers on the diagonal and zeros off the diagonal.
V is an
nby
n unitary matrix over
K.
Define
A
+
as
V
Σ
+
U
∗
.
We now show that
A
+
is a pseudoinverse of
A
:

A
A
+
A
=
U
Σ
V
∗
V
Σ
+
U
∗
U
Σ
V
∗
=
U
Σ
Σ
+
Σ
V
∗
=
U
Σ
V
∗
=
A

A
+
A
A
+
=
V
Σ
+
U
∗
U
Σ
V
∗
V
Σ
+
U
∗
=
V
Σ
+
Σ
Σ
+
U
∗
=
V
Σ
+
U
∗
=
A
+

(
A
A
+
)
∗
=
(
U
Σ
V
∗
V
Σ
+
U
∗
)
∗
=
(
U
Σ
Σ
+
U
∗
)
∗
=
U
(
Σ
Σ
+
)
∗
U
∗
=
U
(
Σ
Σ
+
)
U
∗
=
U
Σ
V
∗
V
Σ
+
U
∗
=
A
A
+

(
A
+
A
)
∗
=
(
V
Σ
+
U
∗
U
Σ
V
∗
)
∗
=
(
V
Σ
+
Σ
V
∗
)
∗
=
V
(
Σ
+
Σ
)
∗
V
∗
=
V
(
Σ
+
Σ
)
V
∗
=
V
Σ
+
U
∗
U
Σ
V
∗
=
A
+
A
The proof works by showing that A^{+*} satisfies the four criteria for the pseudoinverse of A*. Since this amounts to just substitution, it is not shown here.
The proof of this relation is given as Exercise 1.18c in.
A^{+} = A^{+}AA^{+} and AA^{+} = (AA^{+})* imply that A^{+} = A^{+}(A A^{+})* = A^{+}A^{+*}A*.
A^{+} = A^{+}AA^{+} and A^{+}A = (A^{+}A)* imply that A^{+} = (A^{+}A)*A^{+} = A*A^{+*}A^{+}.
A = A A^{+} A and A A^{+} = (A A^{+})* imply that A = (A A^{+})* A = A^{+}* A* A.
A = A A^{+} A and A^{+} A = (A^{+} A)* imply that A = A (A^{+} A)* = A A* A^{+}*.
This is the conjugate transpose of A = A^{+}* A* A above.
This is the conjugate transpose of A = A A* A^{+}* above.
The results of this section show that the computation of the pseudoinverse is reducible to its construction in the Hermitian case. It suffices to show that the putative constructions satisfy the defining criteria.
This relation is given as exercise 18(d) in, for the reader to prove, "for every matrix A". Write D = A* (A A*)^{+}. Observe that
Similarly, (AA*)^{+}AA*(AA*)^{+} = (AA*)^{+} implies that A*(AA*)^{+}AA*(AA*)^{+} = A*(AA*)^{+} i.e. DAD = D.
Additionally, AD = AA*(AA*)^{+} so AD = (AD)*.
Finally, DA = A*(AA*)^{+}A implies that (DA)* = A* ((AA*)^{+})*A = A* ((AA*)^{+})A = DA.
Therefore D = A^{+}.
This is proved in an analogous manner to the case above, using Lemma 2 instead of Lemma 3.
For the first three proofs, we consider products C = AB.
If A has orthonormal columns i.e. A*A = I then A^{+}=A*. Write D=B^{+}A^{+} = B^{+}A*. We show that D satisfies the MoorePenrose criteria.
CDC = ABB^{+}A*AB = ABB^{+}B = AB = C .
DCD = B^{+}A*ABB^{+}A* = B^{+}BB^{+}A* = B^{+}A* = D
(CD)* = D*B*A* = A(B^{+})*B*A* = A(BB^{+})*A* = ABB^{+}A* = CD
(DC)* = B*A*D* = B*A*A(B^{+})* = (B^{+}B)* = B^{+}B = B^{+}A*AB = DC
Therefore D = C^{+}
If B has orthonormal rows i.e. BB* = I then B^{+}=B*. Write D=B^{+}A^{+} = B*A^{+}. We show that D satisfies the MoorePenrose criteria.
CDC = ABB*A^{+}AB = AA^{+}AB = AB = C .
DCD = B*A^{+}ABB*A^{+} = B*A^{+}AA^{+} = B*A^{+} = D
(CD)* = D*B*A* = (A^{+})*BB*A* = (A^{+})*A* = (AA^{+})* = AA^{+} = ABB*A^{+} = CD
(DC)* = B*A*D* = B*A*(A^{+})*B = B*(A^{+}A)*B = B*A^{+}AB = DC
Therefore D = C^{+}
Since A has full column rank, A*A is invertible so (A*A)^{+} = (A*A)^{−1}. Similarly, since B has full row rank, BB* is invertible so (BB*)^{+} = (BB*)^{−1}.
Write D = B^{+}A^{+} = B*(BB*)^{−1}(A*A)^{−1}A*. We show that D satisfies the MoorePenrose criteria.
CDC = ABB*(BB*)^{−1}(A*A)^{−1}A*AB = AB = C .
DCD = B*(BB*)^{−1}(A*A)^{−1}A*ABB*(BB*)^{−1}(A*A)^{−1}A*= B*(BB*)^{−1}(A*A)^{−1}A* = D
CD = ABB*(BB*)^{−1}(A*A)^{−1}A* = A(A*A)^{−1}A* = (A(A*A)^{−1}A*)* ⇒ (CD)* = CD.
DC = B*(BB*)^{−1}(A*A)^{−1}A*AB = B*(BB*)^{−1}B = (B*(BB*)^{−1}B)* ⇒ (DC)* = DC.
Therefore D = C^{+}
Here,
B
=
A
∗
, and thus
C
=
A
A
∗
and
D
=
A
+
∗
A
+
. We show that indeed
D
satisfies the four MoorePenrose criteria.
Therefore
D
=
C
+
. In other words:
and, since
(
A
∗
)
∗
=
A
Define P = AA^{+} and Q = A^{+}A. Observe that P^{2} = AA^{+}AA^{+} = AA^{+} = P. Similarly Q^{2} = Q, and finally, P = P* and Q = Q*. Thus P and Q are orthogonal projection operators. Orthogonality follows from the relations P = P* and Q = Q*. Indeed, consider the operator P: any vector decomposes as
x = Px + (IP)x
and for all vectors x and y satisfying Px = x and (IP)y = y, we have
x*y = (Px)*(IP)y = x*P*(IP)y = x*P(IP)y = 0.
It follows that PA = AA^{+}A = A and A^{+}P = A^{+}AA^{+} = A^{+}. Similarly, QA^{+} = A^{+} and AQ = A. The orthogonal components are now readily identified.
If y belongs to the range of A then for some x, y = Ax and Py = PAx = Ax = y. Conversely, if Py = y then y = AA^{+}y so that y belongs to the range of A. It follows that P is the orthogonal projector onto the range of A. I  P is then the orthogonal projector onto the orthogonal complement of the range of A, which equals the kernel of A*.
A similar argument using the relation Q A* = A* establishes that Q is the orthogonal projector onto the range of A* and (IQ) is the orthogonal projector onto the kernel of A.
Using the relations P(A^{+})* = P*(A^{+})* = (A^{+}P)* = (A^{+})* and P = P* = (A^{+})*A* it follows that the range of P equals the range of (A^{+})*, which in turn implies that the range of IP equals the kernel of A^{+}. Similarly QA^{+} = A^{+} implies that the range of Q equals the range of A^{+}. Therefore, we find,
Ker
(
A
+
)
=
Ker
(
A
∗
)
.
Im
(
A
+
)
=
Im
(
A
∗
)
.
In the general case, it is shown here for any
m
×
n
matrix
A
that
∥
A
x
−
b
∥
2
≥
∥
A
z
−
b
∥
2
where
z
=
A
+
b
. This lower bound need not be zero as the system
A
x
=
b
may not have a solution (e.g. when the matrix A does not have full rank or the system is overdetermined).
To prove this, we first note that (stating the complex case), using the fact that
P
=
A
A
+
satisfies
P
A
=
A
and
P
=
P
∗
, we have
A
∗
(
A
z
−
b
)
=
A
∗
(
A
A
+
b
−
b
)
=
A
∗
(
P
b
−
b
)
=
A
∗
P
∗
b
−
A
∗
b
=
(
P
A
)
∗
b
−
A
∗
b
=
0
so that
∥
A
x
−
b
∥
2
2
=
∥
A
z
−
b
∥
2
2
+
(
A
(
x
−
z
)
)
∗
(
A
z
−
b
)
+
c.c.
+
∥
A
(
x
−
z
)
∥
2
2
=
∥
A
z
−
b
∥
2
2
+
(
x
−
z
)
∗
A
∗
(
A
z
−
b
)
+
c.c.
+
∥
A
(
x
−
z
)
∥
2
2
=
∥
A
z
−
b
∥
2
2
+
∥
A
(
x
−
z
)
∥
2
2
≥
∥
A
z
−
b
∥
2
2
as claimed.
If
A
is injective i.e. onetoone (which implies
m
≥
n
), then the bound is attained uniquely at
z
.
The proof above also shows that if the system
A
x
=
b
is satisfiable i.e. has a solution, then necessarily
z
=
A
+
b
is a solution (not necessarily unique). We show here that
z
is the smallest such solution (its Euclidean norm is uniquely minimum).
To see this, note first, with
Q
=
A
+
A
, that
Q
z
=
A
+
A
A
+
b
=
A
+
b
=
z
and that
Q
∗
=
Q
. Therefore, assuming that
A
x
=
b
, we have
z
∗
(
x
−
z
)
=
(
Q
z
)
∗
(
x
−
z
)
=
z
∗
Q
(
x
−
z
)
=
z
∗
(
A
+
A
x
−
z
)
=
z
∗
(
A
+
b
−
z
)
=
0.
Thus
∥
x
∥
2
2
=
∥
z
∥
2
2
+
2
z
∗
(
x
−
z
)
+
∥
x
−
z
∥
2
2
=
∥
z
∥
2
2
+
∥
x
−
z
∥
2
2
≥
∥
z
∥
2
2
with equality if and only if
x
=
z
, as was to be shown.