# Proofs involving the Moore–Penrose pseudoinverse

Let ${\displaystyle A}$ be an m-by-n matrix over a field ${\displaystyle \mathbb {K} }$, where ${\displaystyle \mathbb {K} }$, is either the field ${\displaystyle \mathbb {R} }$, of real numbers or the field ${\displaystyle \mathbb {C} }$, of complex numbers. Then there is a unique n-by-m matrix ${\displaystyle A^{+}}$ over ${\displaystyle \mathbb {K} }$, such that:

1. A A+A = A
2. A+A A+ = A+
3. (AA+)* = AA+
4. (A+A)* = A+A

A+ is called the Moore-Penrose pseudoinverse of A. Notice that A is also the Moore-Penrose pseudoinverse of A+ . That is, (A+ )+ = A.

## Useful lemmas

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.

### Lemma 1: A*A = 0 ⇒ A = 0

The assumption says that all elements of A*A are zero. Therefore,

${\displaystyle 0=\operatorname {Tr} (A^{*}A)=\sum _{j=1}^{n}(A^{*}A)_{jj}=\sum _{j=1}^{n}\sum _{i=1}^{m}(A^{*})_{ji}A_{ij}=\sum _{i=1}^{m}\sum _{j=1}^{n}|A_{ij}|^{2}}$.

Therefore, all ${\displaystyle A_{ij}}$ equal 0 i.e. A=0.

### Lemma 2: A*AB = 0 ⇒ AB = 0

 0 = A*AB ⇒ 0 = B*A*AB ⇒ 0 = (AB)*(AB) ⇒ 0 = AB   (by Lemma 1)

### Lemma 3: ABB* = 0 ⇒ AB = 0

This is proved in a manner similar to the argument of Lemma 2 (or by simply taking the Hermitian conjugate).

## Existence and uniqueness

### Proof of uniqueness

Suppose that B and C are two n-by-m matrices over ${\displaystyle \mathbb {K} }$ satisfying the Moore-Penrose 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.

### Proof of existence

The proof proceeds in stages.

#### 1-by-1 matrices

For any ${\displaystyle x\in \mathbb {K} }$, we define ${\displaystyle x^{+}:={\begin{cases}x^{-1},&{\mbox{if }}x\neq 0\\0,&{\mbox{if }}x=0\end{cases}}}$

It is easy to see that ${\displaystyle x^{+}}$ is a pseudoinverse of ${\displaystyle x}$ (interpreted as a 1-by-1 matrix).

#### Square diagonal matrices

Let ${\displaystyle D}$ be an n-by-n matrix over K with zeros off the diagonal. We define ${\displaystyle D^{+}}$ as an n-by-n matrix over K with ${\displaystyle (D^{+})_{ij}:=(D_{ij})^{+}}$ as defined above. We write simply ${\displaystyle D_{ij}^{+}}$ for ${\displaystyle (D^{+})_{ij}=(D_{ij})^{+}}$.

Notice that ${\displaystyle D^{+}}$ is also a matrix with zeros off the diagonal.

We now show that ${\displaystyle D^{+}}$ is a pseudoinverse of ${\displaystyle D}$:

1. ${\displaystyle (DD^{+}D)_{ij}=D_{ij}D_{ij}^{+}D_{ij}=D_{ij}\Rightarrow DD^{+}D=D}$
2. ${\displaystyle (D^{+}DD^{+})_{ij}=D_{ij}^{+}D_{ij}D_{ij}^{+}=D_{ij}^{+}\Rightarrow D^{+}DD^{+}=D^{+}}$
3. ${\displaystyle (DD^{+})_{ij}^{*}={\overline {(DD^{+})_{ji}}}={\overline {D_{ji}D_{ji}^{+}}}=(D_{ji}D_{ji}^{+})^{*}=D_{ji}D_{ji}^{+}=D_{ij}D_{ij}^{+}\Rightarrow (DD^{+})^{*}=DD^{+}}$
4. ${\displaystyle (D^{+}D)_{ij}^{*}={\overline {(D^{+}D)_{ji}}}={\overline {D_{ji}^{+}D_{ji}}}=(D_{ji}^{+}D_{ji})^{*}=D_{ji}^{+}D_{ji}=D_{ij}^{+}D_{ij}\Rightarrow (D^{+}D)^{*}=D^{+}D}$

#### Arbitrary matrices

The singular value decomposition theorem states that there exists a factorization of the form

${\displaystyle A=U\Sigma V^{*}}$

where:

U is an m-by-m unitary matrix over K.
Σ is an m-by-n matrix over K with nonnegative real numbers on the diagonal and zeros off the diagonal.
V is an n-by-n unitary matrix over K.[1]

Define ${\displaystyle A^{+}}$ as ${\displaystyle V\Sigma ^{+}U^{*}}$.

We now show that ${\displaystyle A^{+}}$ is a pseudoinverse of ${\displaystyle A}$:

1. ${\displaystyle AA^{+}A=U\Sigma V^{*}V\Sigma ^{+}U^{*}U\Sigma V^{*}=U\Sigma \Sigma ^{+}\Sigma V^{*}=U\Sigma V^{*}=A}$
2. ${\displaystyle A^{+}AA^{+}=V\Sigma ^{+}U^{*}U\Sigma V^{*}V\Sigma ^{+}U^{*}=V\Sigma ^{+}\Sigma \Sigma ^{+}U^{*}=V\Sigma ^{+}U^{*}=A^{+}}$
3. ${\displaystyle (AA^{+})^{*}=(U\Sigma V^{*}V\Sigma ^{+}U^{*})^{*}=(U\Sigma \Sigma ^{+}U^{*})^{*}=U(\Sigma \Sigma ^{+})^{*}U^{*}=U(\Sigma \Sigma ^{+})U^{*}=U\Sigma V^{*}V\Sigma ^{+}U^{*}=AA^{+}}$
4. ${\displaystyle (A^{+}A)^{*}=(V\Sigma ^{+}U^{*}U\Sigma V^{*})^{*}=(V\Sigma ^{+}\Sigma V^{*})^{*}=V(\Sigma ^{+}\Sigma )^{*}V^{*}=V(\Sigma ^{+}\Sigma )V^{*}=V\Sigma ^{+}U^{*}U\Sigma V^{*}=A^{+}A}$

## Basic properties

### 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.[2]

### Identities

#### A+ = A+ A+* A*

A+ = A+AA+ and AA+ = (AA+)* imply that A+ = A+(A A+)* = 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

A = A A+ A and A A+ = (A A+)* imply that A = (A A+)* A = 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+

This is the conjugate transpose of A = A+* A* A above.

#### A* = A+ A A*

This is the conjugate transpose of A = A A* A+* above.

## Reduction to the Hermitian case

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.

### A+ = A* (A A*)+

This relation is given as exercise 18(d) in,[2] for the reader to prove, "for every matrix A". Write D = A* (A A*)+. Observe that

 AA* = AA*(A A*)+ AA* ⇔ AA* = ADAA* ⇔ 0 = (AD − I)AA* ⇔ 0 = ADA − A   (by Lemma 3) ⇔ A = ADA.

Similarly, (AA*)+AA*(AA*)+ = (AA*)+ implies that A*(AA*)+AA*(AA*)+ = A*(AA*)+ i.e. DAD = D.

Finally, DA = A*(AA*)+A implies that (DA)* = A* ((AA*)+)*A = A* ((AA*)+)A = DA.

Therefore D = A+.

### A+ = (A* A)+A*

This is proved in an analogous manner to the case above, using Lemma 2 instead of Lemma 3.

## Products

For the first three proofs, we consider products C = AB.

### A has orthonormal columns

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 Moore-Penrose 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+

### B has orthonormal rows

If B has orthonormal rows i.e. BB* = I then B+=B*. Write D=B+A+ = B*A+. We show that D satisfies the Moore-Penrose 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+

### A has full column rank and B has full row rank

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)−1A*. We show that D satisfies the Moore-Penrose criteria.

CDC = ABB*(BB*)−1(A*A)−1A*AB = AB = C .

DCD = B*(BB*)−1(A*A)−1A*ABB*(BB*)−1(A*A)−1A*= B*(BB*)−1(A*A)−1A* = D

CD = ABB*(BB*)−1(A*A)−1A* = A(A*A)−1A* = (A(A*A)−1A*)*(CD)* = CD.

DC = B*(BB*)−1(A*A)−1A*AB = B*(BB*)−1B = (B*(BB*)−1B)*(DC)* = DC.

Therefore D = C+

### Conjugate transpose

Here, ${\displaystyle B=A^{*}}$, and thus ${\displaystyle C=AA^{*}}$ and ${\displaystyle D=A^{+*}A^{+}}$. We show that indeed ${\displaystyle D}$ satisfies the four Moore-Penrose criteria.

${\displaystyle CDC=AA^{*}A^{+*}A^{+}AA^{*}=A(A^{+}A)^{*}A^{+}AA^{*}=AA^{+}AA^{+}AA^{*}=AA^{+}AA^{*}=AA^{*}=C}$
${\displaystyle DCD=A^{+*}A^{+}AA^{*}A^{+*}A^{+}=A^{+*}A^{+}A(A^{+}A)^{*}A^{+}=A^{+*}A^{+}AA^{+}AA^{+}=A^{+*}A^{+}AA^{+}=A^{+*}A^{+}AA^{+}=A^{+*}A^{+}=D}$
${\displaystyle (CD)^{*}=(AA^{*}A^{+*}A^{+})^{*}=A^{+*}A^{+}AA^{*}=A^{+*}(A^{+}A)^{*}A^{*}=A^{+*}A^{*}A^{+*}A^{*}=(AA^{+})^{*}(AA^{+})^{*}=AA^{+}AA^{+}=A(A^{+}A)^{*}A^{+}=}$
${\displaystyle =AA^{*}A^{+*}A^{+}=CD}$
${\displaystyle (DC)^{*}=(A^{+*}A^{+}AA^{*})^{*}=AA^{*}A^{+*}A^{+}=A(A^{+}A)^{*}A^{+}=AA^{+}AA^{+}=(AA^{+})^{*}(AA^{+})^{*}=A^{+*}A^{*}A^{+*}A^{*}=A^{+*}(A^{+}A)^{*}A^{*}=}$
${\displaystyle =A^{+*}A^{+}AA^{*}=DC}$

Therefore ${\displaystyle D=C^{+}}$. In other words:

${\displaystyle (AA^{*})^{+}=A^{+*}A^{+}}$

and, since ${\displaystyle (A^{*})^{*}=A}$

${\displaystyle (A^{*}A)^{+}=A^{+}A^{+*}}$

## Projectors and subspaces

Define P = AA+ and Q = A+A. Observe that P2 = AA+AA+ = AA+ = P. Similarly Q2 = 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 + (I-P)x

and for all vectors x and y satisfying Px = x and (I-P)y = y, we have

x*y = (Px)*(I-P)y = x*P*(I-P)y = x*P(I-P)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 (I-Q) 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 I-P equals the kernel of A+. Similarly QA+ = A+ implies that the range of Q equals the range of A+. Therefore, we find,

{\displaystyle {\begin{alignedat}{2}\operatorname {Ker} (A^{+})&=\operatorname {Ker} (A^{*}).\\\operatorname {Im} (A^{+})&=\operatorname {Im} (A^{*}).\\\end{alignedat}}}

### Least-squares minimization

In the general case, it is shown here for any ${\displaystyle m\times n}$ matrix ${\displaystyle A}$ that ${\displaystyle \|Ax-b\|_{2}\geq \|Az-b\|_{2}}$ where ${\displaystyle z=A^{+}b}$. This lower bound need not be zero as the system ${\displaystyle Ax=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 ${\displaystyle P=AA^{+}}$ satisfies ${\displaystyle PA=A}$ and ${\displaystyle P=P^{*}}$, we have

{\displaystyle {\begin{alignedat}{2}A^{*}(Az-b)&=A^{*}(AA^{+}b-b)\\&=A^{*}(Pb-b)\\&=A^{*}P^{*}b-A^{*}b\\&=(PA)^{*}b-A^{*}b\\&=0\end{alignedat}}}

so that

{\displaystyle {\begin{alignedat}{2}\|Ax-b\|_{2}^{2}&=\|Az-b\|_{2}^{2}+(A(x-z))^{*}(Az-b)+{\text{c.c.}}+\|A(x-z)\|_{2}^{2}\\&=\|Az-b\|_{2}^{2}+(x-z)^{*}A^{*}(Az-b)+{\text{c.c.}}+\|A(x-z)\|_{2}^{2}\\&=\|Az-b\|_{2}^{2}+\|A(x-z)\|_{2}^{2}\\&\geq \|Az-b\|_{2}^{2}\end{alignedat}}}

as claimed.

If ${\displaystyle A}$ is injective i.e. one-to-one (which implies ${\displaystyle m\geq n}$), then the bound is attained uniquely at ${\displaystyle z}$.

### Minimum-norm solution to a linear system

The proof above also shows that if the system ${\displaystyle Ax=b}$ is satisfiable i.e. has a solution, then necessarily ${\displaystyle z=A^{+}b}$ is a solution (not necessarily unique). We show here that ${\displaystyle z}$ is the smallest such solution (its Euclidean norm is uniquely minimum).

To see this, note first, with ${\displaystyle Q=A^{+}A}$, that ${\displaystyle Qz=A^{+}AA^{+}b=A^{+}b=z}$ and that ${\displaystyle Q^{*}=Q}$. Therefore, assuming that ${\displaystyle Ax=b}$, we have

{\displaystyle {\begin{alignedat}{2}z^{*}(x-z)&=(Qz)^{*}(x-z)\\&=z^{*}Q(x-z)\\&=z^{*}(A^{+}Ax-z)\\&=z^{*}(A^{+}b-z)\\&=0.\end{alignedat}}}

Thus

{\displaystyle {\begin{alignedat}{2}\|x\|_{2}^{2}&=\|z\|_{2}^{2}+2z^{*}(x-z)+\|x-z\|_{2}^{2}\\&=\|z\|_{2}^{2}+\|x-z\|_{2}^{2}\\&\geq \|z\|_{2}^{2}\end{alignedat}}}

with equality if and only if ${\displaystyle x=z}$, as was to be shown.

## References

1. ^ Some authors use slightly different dimensions for the factors. The two definitions are equivalent.
2. ^ a b Adi Ben-Israel; Thomas N.E. Greville (2003). Generalized Inverses. Springer-Verlag. ISBN 0-387-00293-6.