13.11  The Moore–Penrose Pseudoinverse

Chapter 11 solved Ax=b twice over: when there is no solution it produced a least-squares solution, and when there are too many it produced the shortest one. It then left an IOU. The two answers “are usually wanted together: given any A and b, first minimize ‖Ax−b‖, then among the minimizers take the shortest. Chapter 13 packages the combined answer as a single matrix, the pseudoinverse A+, with x=A+b in all cases at once.” This section builds that matrix and pays the debt.

Throughout, F=R or F=C, A∈Mm×n(F), p=min(m,n) and r=rankA, with singular values σ1≥⋯≥σp≥0 (Definition 13.8.1), so σi>0 exactly for i≤r.

13.11.1. One matrix instead of three formulas

Here is the state of play at the end of Chapter 11. To answer “what is the best x?” we had three different recipes, and choosing between them required knowing something about A first.

  • If A is square and invertible, x=A−1b.
  • If the columns of A are independent, x=(A∗A)−1A∗b (Corollary 11.4.4).
  • If Ax=b is consistent but A has a kernel, x=xmin, the unique solution orthogonal to nul(A) (Theorem 11.4.5).

Three recipes, three hypotheses, and a gap: when A has both a kernel and a column space missing b, none of them applies. That is not an exotic case. It is what happens whenever a large table of measurements has both redundant columns and noise.

The goal, stated before we know how to reach it, is a single matrix A+, depending on A alone, for which x=A+b is the right answer in every case. Reading the goal backwards tells us what A+ must do, and the singular value decomposition tells us how to build it.

13.11.2. Inverting what can be inverted

Why is there no inverse in general? Two obstructions, and they are the two halves of Theorem 11.6.5. The map x↦Ax may fail to be injective, because nul(A)≠{0}; and it may fail to be surjective, because col(A)≠Fm. Neither obstruction is fatal if we are willing to sacrifice part of the domain and part of the codomain.

Restrict the map to col(A∗)=nul(A)⊥, which throws away the kernel. What is left is a bijection onto col(A), and a bijection has an inverse. Extend that inverse to all of Fm by declaring it 0 on col(A)⊥, where nothing in the image can tell us anything. That is the whole construction, and it is the same trick that turns sin into arcsin: shrink the domain until the function is injective, shrink the codomain until it is surjective, invert, and say clearly what was given up.

Invert what can be inverted, and send the rest to zero.

The singular value decomposition performs all three operations at once, because it presents A as a diagonal matrix in orthonormal coordinates, and a diagonal matrix is inverted one entry at a time.

Definition 13.11.1 (Moore–Penrose pseudoinverse)

Let A∈Mm×n(F) and let A=UΣV∗ be a singular value decomposition (Theorem 13.8.1), so that U∈Mm(F) and V∈Mn(F) are unitary and Σ∈Mm×n(F) has the singular values σ1,…,σp on its diagonal and zeros elsewhere. Let Σ+∈Mn×m(F) be the matrix with (Σ+)ii={σi−1,σi>0,0,σi=0, for 1≤i≤p, and all other entries 0. The Moore–Penrose pseudoinverse of A is A+:=VΣ+U∗∈Mn×m(F).

Clause by clause. The matrix Σ+ is Σ transposed and then inverted where inversion is legal: the shape flips from m×n to n×m, each non-zero diagonal entry is replaced by its reciprocal, and each zero diagonal entry is left alone — not replaced by anything, since 0−1 does not exist. The outer factors are exchanged and starred, exactly as they would be in (UΣV∗)−1=VΣ−1U∗ if Σ were invertible. And the result is n×m, the shape an inverse of A would have to be.

Well-definedness is a real question here, not a formality. The singular values are determined by A, but the unitary factors are not (Theorem 13.8.2), so the recipe above is applied to a choice, and nothing so far says that two choices give the same answer. They do.

Proposition 13.11.1 (The pseudoinverse does not depend on the decomposition)

Let A∈Mm×n(F) and let A=UΣV∗ be any singular value decomposition (Theorem 13.8.1). Then X=VΣ+U∗ is the unique matrix in Mn×m(F) such that

  • (i) for every y∈col(A), Xy is the unique vector of col(A∗) that A sends to y;
  • (ii) Xy=0 for every y∈col(A)⊥.

In particular A+ depends on A alone.

Idea. Conditions (i) and (ii) mention only A, so if one matrix satisfies them, that matrix is determined by A. The work is to check that they can be satisfied at all — which is the “restrict, invert, extend” story of the previous page written out — and that the matrix built from an arbitrary decomposition is the one that satisfies them. For the second part, the singular vectors are orthonormal bases of the subspaces involved, so both conditions can be checked on basis vectors.

Proof. The conditions determine at most one matrix. First, A maps col(A∗) bijectively onto col(A). Injectivity: if x∈col(A∗) and Ax=0, then x∈nul(A)∩nul(A)⊥={0}, since col(A∗)=nul(A)⊥ by Theorem 11.6.5 (b). Surjectivity: the image is contained in col(A), and by injectivity it has dimension dim⁡col(A∗)=rankA∗=rankA=dim⁡col(A), the middle equality by Corollary 11.6.6 (a) applied to x↦Ax. So (i) prescribes X on col(A) and (ii) prescribes it on col(A)⊥; since Fm=col(A)⊕col(A)⊥ by Theorem 11.3.2 (a), a linear map is determined by the two prescriptions.

The matrix X=VΣ+U∗ satisfies them. Write u1,…,um and v1,…,vn for the columns of U and V. Since rank is unchanged by invertible factors (Theorem 3.5.9), r=rankA=rankΣ is the number of non-zero σi. By Corollary 13.8.4, (u1,…,ur) is an orthonormal basis of col(A), the remaining uj are an orthonormal basis of col(A)⊥, and (v1,…,vr) is an orthonormal basis of col(A∗). Multiplying out the definition, X=∑i=1rσi−1viui∗, so Xui=σi−1vi for i≤r and Xuj=0 for j>r. The second statement gives (ii) by linearity.

For (i), let y=∑i≤rciui∈col(A). Then Xy=∑i≤rciσi−1vi∈col(A∗), and since Avi=σiui (the rank-one expansion of Theorem 13.8.3 read one column at a time), A(Xy)=∑i≤rciσi−1σiui=y. By the injectivity proved above, Xy is the unique vector of col(A∗) with this property. This proves (i), and with it the proposition.

So A+ is an honest function of A. Five examples, simplest first.

Example (Five pseudoinverses)
  • (a) A invertible. Then m=n=r, Σ is invertible and Σ+=Σ−1, so A+=VΣ−1U∗=(UΣV∗)−1=A−1. The pseudoinverse extends the inverse, which is the first thing it had to do.
  • (b) A=0∈Mm×n(F). Every singular value is 0, so Σ+=0 and A+=0∈Mn×m(F). The degenerate case is worth keeping in mind: the pseudoinverse of the worst possible matrix is not undefined, it is zero, which is what “invert nothing, kill everything” means.
  • (c) Diagonal. diag(2,0,5)+=diag(12,0,15). The zero is left where it is.
  • (d) A single non-zero column a∈Mn×1(F). Here σ1=‖a‖, u1=a/‖a‖ and v1=1, so a+=a∗/‖a‖2, a row vector. Then a+a=1 but aa+=aa∗/‖a‖2 is the orthogonal projection onto span(a).
  • (e) A=(1111). This is σ1u1v1∗ with σ1=2 and u1=v1=12(1,1), since 2u1v1∗=2⋅12(1111)=A. Hence A+=12v1u1∗=14(1111).

A non-example by minimal change. Item (a) of the list is often written A+=(A∗A)−1A∗, and Theorem 13.11.3 below confirms that formula whenever the columns of A are independent. Change one column of a 3×2 matrix into a multiple of the other, and the formula stops existing: A∗A is then singular (Lemma 11.4.3), so (A∗A)−1 is not a matrix at all. The pseudoinverse survives the change; the formula does not. That is the difference between a definition and a recipe.

Why this definition. It is forced. Any reasonable “inverse” must undo A where A can be undone; there is exactly one subspace on which A is a bijection and which meets nul(A) only in 0 while being determined by A alone, namely nul(A)⊥; and setting the answer to 0 on col(A)⊥ is the only choice that keeps the map linear without inventing information. The names are those of the two people who published the idea, thirty-five years apart: Moore in 1920 through a projection formula, Penrose in 1955 through the four conditions of the next theorem.

Warning. A+A is not the identity, and A+ is n×m. Two habits from the invertible case have to go. First the shape: if A is 3×5 then A+ is 5×3, so AA+ is 3×3 and A+A is 5×5 — they are not even the same size, let alone both I. Second the identity: for A=(1111) of Example (Five pseudoinverses) (e), A+A=14(1111)(1111)=12(1111)≠I2. The right question is not “is it the identity?” but “the identity on what?”, and Theorem 13.11.3 answers it: A+A is the identity on col(A∗) and zero on nul(A).

Quick check. Let A=(1100). Find A+, then compute AA+ and A+A and identify each as a projection.

Solution. Here A=e1(1,1) has rank one, so σ1=‖e1‖‖(1,1)‖=2 with u1=e1 and v1=12(1,1), and A+=σ1−1v1u1∗=12(1010). Therefore AA+=(1000),A+A=12(1111). Neither is I2. The first is the orthogonal projection onto span(e1)=col(A); the second is the orthogonal projection onto span((1,1))=col(A⊤), the row space. Each is the identity exactly on the subspace named, and zero on its orthogonal complement — which is what “as close to the identity as the shapes allow” means.

13.11.3. The four Penrose conditions

The definition builds A+ out of a decomposition. The following theorem characterizes it by four equations that mention nothing but A, X and the star. It is the second, and better, answer to the well-definedness question, and it is how one verifies a candidate pseudoinverse in practice: guess, then check four identities.

Theorem 13.11.2 (The Penrose Conditions)

Let A∈Mm×n(F). Then X=A+ is the unique matrix in Mn×m(F) satisfying all four of

  • (P1) AXA=A;
  • (P2) XAX=X;
  • (P3) (AX)∗=AX;
  • (P4) (XA)∗=XA.

Idea. Existence is a computation with Σ: each condition collapses to an identity between Σ, Σ+ and the diagonal matrix of r ones. Uniqueness is a puzzle. Given two solutions X1 and X2, the goal is a chain of equalities starting at X1 and ending at X2, so the plan is to walk to a symmetric midpoint: get X1=X1AX2 by pushing X2 in from the right, then run the mirror image of the same argument with X2 as the subject. Two preliminary identities make the walk possible, and both come from starring one of the conditions — the move that manufactures an A∗ when the hypotheses offer only A.

Proof. Existence. Let A=UΣV∗ and X=VΣ+U∗. Using V∗V=In and U∗U=Im, AX=UΣΣ+U∗,XA=VΣ+ΣV∗. Now ΣΣ+∈Mm(F) is diagonal with σiσi−1=1 in the first r diagonal places and 0 elsewhere, and Σ+Σ∈Mn(F) is diagonal with the same pattern. Both are real diagonal, hence Hermitian, so AX and XA are Hermitian, which is (P3) and (P4). Moreover ΣΣ+Σ=Σ and Σ+ΣΣ+=Σ+, because multiplying a diagonal matrix by a diagonal matrix of ones and zeros keeps exactly the entries in the positions marked 1, and those are the positions where Σ and Σ+ are non-zero anyway. Hence AXA=UΣΣ+ΣV∗=A,XAX=VΣ+ΣΣ+U∗=X, which is (P1) and (P2).

Uniqueness. Suppose X satisfies (P1)–(P4). Two consequences: (∗)XX∗A∗=X,AA∗X∗=A. For the first, X=XAX by (P2), and AX=(AX)∗=X∗A∗ by (P3), so X=X(AX)=XX∗A∗. For the second, A=AXA by (P1), and XA=(XA)∗=A∗X∗ by (P4), so A=A(XA)=AA∗X∗. Starring the second identity of (∗) gives the form we also need, (∗∗)XAA∗=A∗.

Now let X1 and X2 both satisfy (P1)–(P4). Starting from X1 and working towards a term containing X2, X1=X1X1∗A∗=X1X1∗(AX2A)∗=X1X1∗A∗(AX2)∗=X1X1∗A∗AX2=X1AX2. The first equality is (∗) for X1; the second replaces A by AX2A, which is (P1) for X2; the third reverses the product under the star; the fourth is (P3) for X2; and the last is (∗) for X1 again, applied to the first three factors.

Now the mirror argument, with X2 as the subject: X1AX2=X1AA∗X2∗X2=A∗X2∗X2=(X2A)∗X2=X2AX2=X2. Here the first equality replaces A by AA∗X2∗, which is (∗) for X2; the second is (∗∗) for X1; the fourth is (P4) for X2; and the last is (P2) for X2.

Hence X1=X2. Since A+ satisfies the four conditions, every matrix satisfying them equals A+. This proves the theorem.

Both halves of the argument are the same two moves: star a condition to trade A for A∗, then use (∗) to collapse a triple product. The conditions are also exactly what one should check when an explicit candidate is on the table, and several of the proofs below do nothing else.

Remark. The four conditions are not independent decoration. Dropping (P2) leaves the generalized inverses, matrices with AXA=A, of which there are many when A is singular; dropping (P3) and (P4) leaves more still. Each condition removes freedom, and only all four together remove all of it. Exercise C3 identifies the matrices for which A∗ itself already satisfies them.

13.11.4. What the pseudoinverse does

Theorem 13.11.3 (Properties of the pseudoinverse)

Let A∈Mm×n(F). Then:

  • (a) AA+=Pcol(A) and A+A=Pcol(A∗), the orthogonal projections onto the column space of A in Fm and onto the column space of A∗ in Fn;
  • (b) (A+)+=A;
  • (c) (A+)∗=(A∗)+;
  • (d) rankA+=rankA;
  • (e) A+=A−1 if A is invertible; A+=(A∗A)−1A∗ if rankA=n; and A+=A∗(AA∗)−1 if rankA=m.

Idea. Clause (a) is the computation already done in the existence half of Theorem 13.11.2, read through Theorem 11.3.3. Clauses (b) and (c) are one line each, because the Penrose conditions are almost symmetric in A and X, and starring all four of them produces the four conditions for A∗. Clause (e) is three checks of the same kind: write down the candidate and confirm (P1)–(P4).

Proof.

  • (a) With A=UΣV∗ and the notation of Proposition 13.11.1, the existence computation gave AA+=UΣΣ+U∗, where ΣΣ+ is diagonal with r ones followed by zeros. Multiplying out, AA+=∑i=1ruiui∗. For y∈Fm this sends y to ∑i≤r⟨y,ui⟩ui, which by Theorem 11.3.3 (a) is the orthogonal projection of y onto span(u1,…,ur)=col(A) (Corollary 13.8.4). The same computation with Σ+Σ gives A+A=∑i≤rvivi∗=Pcol(A∗).

  • (b) The four Penrose conditions for the pair (A,X) become, when the roles of A and X are exchanged, the list (P2), (P1), (P4), (P3) — the same four conditions. So A satisfies the Penrose conditions for A+, and Theorem 13.11.2 gives (A+)+=A.

  • (c) Put X=(A+)∗ and check the four conditions for A∗. Using (BC)∗=C∗B∗ throughout, A∗XA∗=(AA+A)∗=A∗,XA∗X=(A+AA+)∗=X, which are (P1) and (P2). Next, A∗X=(A+A)∗=A+A by (P4) for A, and A+A is Hermitian, so (P3) holds; and XA∗=(AA+)∗=AA+ by (P3) for A, which is Hermitian, so (P4) holds. By uniqueness, X=(A∗)+.

  • (d) A+=VΣ+U∗ with U,V invertible, so rankA+=rankΣ+=r by Theorem 3.5.9, the last equality because Σ+ has exactly r non-zero entries, all in distinct rows and columns.

  • (e) The invertible case is Example (Five pseudoinverses) (a). Suppose rankA=n. Then A∗A is invertible (Corollary 11.4.4), so X=(A∗A)−1A∗ is defined, and ((A∗A)−1)∗=(A∗A)−1 since A∗A is Hermitian. Then XA=(A∗A)−1A∗A=In, which is Hermitian, giving (P4); and (P1), (P2) follow at once, since AXA=AIn=A and XAX=InX=X. For (P3), AX=A(A∗A)−1A∗, whose conjugate transpose is itself. So X=A+.

For the last formula, suppose rankA=m. Then rankA∗=m is the number of columns of A∗, so the case just proved applies to A∗ and gives (A∗)+=(AA∗)−1A. By (c), A+=((A∗)+)∗=((AA∗)−1A)∗=A∗(AA∗)−1, using that AA∗ is Hermitian, hence so is its inverse. This proves the theorem.

Clause (a) is the one to remember, and it answers the question the warning raised. The products AA+ and A+A are not identities; they are the identity restricted to the subspaces where A is invertible, and zero on the complements. Clause (e) shows that the three recipes of Chapter 11 were all the pseudoinverse in disguise, each written in the notation that its hypothesis made available.

Warning. (AB)+≠B+A+ in general. The rule (AB)−1=B−1A−1 does not survive. Take A=(1100),B=(1000). The Quick check above found A+=12(1010), and one may confirm it against Theorem 13.11.2: the two products computed there are Hermitian, and AA+A=A, A+AA+=A+. Meanwhile B is Hermitian and idempotent, so X=B satisfies (P1)–(P4) and B+=B. Now AB=(1000)=B, so (AB)+=(1000),B+A+=12(1000). The two differ by a factor of 2. The reversal rule does hold under extra hypotheses — for instance when A has independent columns and B has independent rows, which is Exercise C2 — but never assume it.

13.11.5. Least squares and minimum norm, in one matrix

Everything is now in place to pay Chapter 11’s debt.

Theorem 13.11.4 (The pseudoinverse solves both problems at once)

Let A∈Mm×n(F) and b∈Fm, and put x+=A+b. Then:

  • (a) x+ is a least-squares solution of Ax=b, that is, ‖Ax+−b‖≤‖Az−b‖ for every z∈Fn;
  • (b) ‖x+‖<‖x‖ for every other least-squares solution x;
  • (c) if Ax=b is consistent, x+ is its minimum-norm solution in the sense of Theorem 11.4.5; if A is invertible, x+=A−1b.

Idea. Both halves are already proved; the pseudoinverse only has to be recognized inside them. For (a), Ax+=AA+b is the projection of b onto col(A), which is precisely condition (b) of the Least Squares Theorem. For (b), the least-squares solutions are the solutions of one consistent system, so the Minimum-Norm Solution Theorem applies to that system and singles out the solution lying in nul(A)⊥; and A+b lies there, because every column of A+ does.

Proof.

  • (a) By Theorem 13.11.3 (a), Ax+=AA+b=PUb with U=col(A). This is condition (b) of Theorem 11.4.2, so x+ is a least-squares solution.

  • (b) By Theorem 11.4.2, the least-squares solutions of Ax=b are exactly the solutions of the system Ax=PUb, which is consistent because PUb∈U=col(A). Apply Theorem 11.4.5 to that system: exactly one of its solutions lies in nul(A)⊥, and it is strictly shorter than all the others.

    It remains to see that x+ is that one. By (P2), A+=A+AA+=Pcol(A∗)A+ using Theorem 13.11.3 (a), so every column of A+, and hence every vector A+b, lies in col(A∗). By Theorem 11.6.5 (b), col(A∗)=nul(A)⊥. So x+ is the minimum-norm solution of Ax=PUb, which by the previous paragraph is what (b) asserts.

  • (c) If Ax=b is consistent then b∈col(A), so PUb=b and the least-squares solutions are the actual solutions; (b) then says x+ is the shortest of them, which is Theorem 11.4.5’s xmin. If A is invertible, A+=A−1 by Theorem 13.11.3 (e). This proves the theorem.

The promise, discharged. Section 4 of Chapter 11 said that the two answers are usually wanted together — first minimize ‖Ax−b‖, then among the minimizers take the shortest — and that Chapter 13 would package the combined answer as a single matrix A+, with x=A+b in all cases at once. That is Theorem 13.11.4, word for word: clause (a) does the minimizing, clause (b) takes the shortest, and clause (c) plus Theorem 13.11.3 (e) checks that the three special recipes of Chapter 11 are recovered as special cases. There is no hypothesis on A anywhere in the statement.

The notation, settled. Chapter 11 wrote xmin for the minimum-norm solution of a consistent system and left the symbol without a formula. From now on it has one, and its meaning extends to every system: xmin=A+b, the minimum-norm least-squares solution of Ax=b. For a consistent system this agrees with Chapter 11’s xmin, by Theorem 13.11.4 (c); for an inconsistent one it is the shortest of the minimizers of ‖Ax−b‖, by clauses (a) and (b). One symbol, one formula, no case distinction.

Example (Chapter 11’s minimum-norm solution, recomputed)

In Chapter 11 the system x1+x2+x3=3,x1+2x2+3x3=7 was solved for its shortest solution by intersecting the solution line with nul(A)⊥, as Theorem 11.4.5 prescribes. Recompute xmin as A+b.

Solution. Here A=(111123),b=(3,7). The two rows are independent, so rankA=2=m and Theorem 13.11.3 (e) gives A+=A⊤(AA⊤)−1. Now AA⊤=(36614),(AA⊤)−1=16(14−6−63), since the determinant is 42−36=6. Therefore A+=16(111213)(14−6−63)=16(8−320−43), and xmin=A+b=16(24−216+0−12+21)=(12,1,32). This is exactly the answer Chapter 11 obtained by hand, and ‖xmin‖2=14+1+94=72 as before. The system is consistent — 12+1+32=3 and 12+2+92=7 — so no projection was needed; what the pseudoinverse did was replace a geometric argument by one matrix product.

The next example is the case no formula of Chapter 11 reaches: the system is inconsistent and underdetermined at the same time.

Example (Inconsistent and underdetermined at once)

Find xmin for A=(1111),b=(1,3), and verify directly that it minimizes the residual and is the shortest minimizer.

Solution. The system reads x1+x2=1 and x1+x2=3, so it is inconsistent; and nul(A)=span((1,−1))≠{0}, so the columns are dependent. Neither A−1 nor (A∗A)−1A∗ exists. From Example (Five pseudoinverses) (e), A+=14(1111), so xmin=A+b=14(1+3,1+3)=(1,1).

Check. col(A)=span((1,1)), and the projection of b=(1,3) onto it is 1+32(1,1)=(2,2). Indeed A(1,1)=(2,2), so the residual is b−(2,2)=(−1,1), of squared length 2 — the smallest possible. The least-squares solutions are all x with x1+x2=2, that is (1,1)+t(1,−1), and ‖(1,1)+t(1,−1)‖2=2+2t2, which is smallest exactly at t=0. So (1,1) is the shortest least-squares solution, as Theorem 13.11.4 (b) predicts.

13.11.6. The block criterion, finished

Section 6 tested a block matrix for positive definiteness one block at a time, and had to assume the corner block invertible: the Schur complement M/A=C−B∗A−1B is meaningless otherwise. The pseudoinverse removes that hypothesis, and the promise Section 6 made is paid here.

Proposition 13.11.5 (The Semidefinite Block Criterion)

Let A∈Mk(F) and C∈Ml(F) be self-adjoint and put M=(ABB∗C)∈Mk+l(F). Then M⪰0 if and only if A⪰0, every column of B lies in col(A), and C−B∗A+B⪰0.

Idea. Section 6 cleared the corner with the shear (I−A−1B0I). Write A+ in place of A−1 and the same shear still clears it — but only because AA+ is the projection onto col(A), so AA+B=B exactly when the columns of B are already in col(A). That condition is not a technicality: it is what the two-sided test forces.

Proof. Suppose first that M⪰0. Taking v=(x,0) gives ⟨Ax,x⟩≥0, so A⪰0. For the column condition, let x∈nul(A) and y∈Fl, and put vt=(tx,y) for t∈R. Then ⟨Mvt,vt⟩=t2⟨Ax,x⟩+2tℜ⟨By,x⟩+⟨Cy,y⟩=2tℜ⟨By,x⟩+⟨Cy,y⟩, using Ax=0. A real affine function of t that is non-negative for every t has zero slope, so ℜ⟨By,x⟩=0 for all y; replacing y by iy over C kills the imaginary part too. Hence ⟨By,x⟩=0 for every y, that is B∗x=0. So nul(A)⊆nul(B∗), and taking orthogonal complements with Theorem 11.6.5 gives col(B)⊆col(A), since A is self-adjoint.

Now assume A⪰0 and col(B)⊆col(A); we show M⪰0 is equivalent to C−B∗A+B⪰0, which finishes both directions. By Theorem 13.11.3 (a), AA+=Pcol(A), so AA+B=B; taking adjoints, and using that A and A+ are self-adjoint (Theorem 13.11.3 (c)), also B∗A+A=B∗. Put S=(Ik−A+B0Il), which is invertible. Multiplying out and canceling with the two identities just recorded, S∗MS=(A00C−B∗A+B). Since S is invertible, Proposition 13.1.2 (a) applied to S and then to S−1 shows that M⪰0 if and only if S∗MS⪰0, and a block diagonal matrix is positive semidefinite exactly when both blocks are. This shows the three conditions together are equivalent to M⪰0.

The column condition cannot be dropped. With A=(2000),C=(1), the choice B=(1,0)⊤ has its column in col(A) and gives C−B∗A+B=(12)⪰0, so M⪰0. The choice B=(0,1)⊤ does not, and there M is not positive semidefinite even though A⪰0, C⪰0 and B∗A+B=0 makes the third condition hold trivially.

13.11.7. Exercises

A. Check your understanding

Exercise (A1)
  • (a) Define A+ in terms of a singular value decomposition of A (Theorem 13.8.1), and say what size it is.
  • (b) State the four Penrose conditions, and say what Theorem 13.11.2 asserts about them.
  • (c) What are AA+ and A+A? Under what condition on A is the second of them In?
  • (d) Write down 0+ for the zero matrix 0∈Mm×n(F), and A+ for an invertible A.
  • (e) True or false: (AB)+=B+A+ whenever the product AB is defined. Justify your answer.

Solution.

  • (a) If A=UΣV∗, then A+=VΣ+U∗, where Σ+∈Mn×m(F) has σi−1 in the (i,i) place for each σi>0 and zeros elsewhere. It is n×m, the transpose of the shape of A.

  • (b) AXA=A, XAX=X, (AX)∗=AX, (XA)∗=XA. The theorem says A+ satisfies all four and is the only matrix that does; so the four conditions may be used as a definition, and checking them is enough to identify a candidate.

  • (c) AA+=Pcol(A) and A+A=Pcol(A∗) (Theorem 13.11.3 (a)). The second is In exactly when col(A∗)=Fn, that is when rankA=n, that is when the columns of A are independent.

  • (d) 0+=0∈Mn×m(F); A+=A−1 when A is invertible.

  • (e) False. With A=(1100) and B=(1000) the two sides are (1000) and 12(1000), as computed in the warning above.

B. Practice

Exercise (B1: Four pseudoinverses)

Compute A+ for each of the following, stating which method you used.

  • (a) A=diag(3,0,0,4)∈M4(R);
  • (b) A=(1,2,2)⊤∈M3×1(R);
  • (c) A=(1224)∈M2(R);
  • (d) A=(101011)∈M2×3(R).

Solution.

  • (a) A diagonal matrix is its own singular value decomposition (Theorem 13.8.1) up to ordering, so invert the non-zero entries in place: A+=diag(13,0,0,14).

  • (b) A single non-zero column, so Example (Five pseudoinverses) (d) applies with ‖A‖2=1+4+4=9: A+=19(1,2,2)∈M1×3(R).

  • (c) Rank one: A=uv⊤ with u=(1,2) and v=(1,2). Then σ1=‖u‖‖v‖=5 with u1=u/5 and v1=v/5, so A+=15v1u1⊤=125(1224). (Check: AA+=125(5101020) is Hermitian and idempotent, and AA+A=A.)

  • (d) The rows are independent, so rankA=2=m and Theorem 13.11.3 (e) gives A+=A⊤(AA⊤)−1. Here AA⊤=(2112) with inverse 13(2−1−12), so A+=13(100111)(2−1−12)=13(2−1−1211).

Exercise (B2: A system that is both inconsistent and underdetermined)

Let A=(122412),b=(1,4,1). Compute A+ and xmin=A+b. Verify that Axmin is the orthogonal projection of b onto col(A), and compare ‖xmin‖ with the norm of one other least-squares solution.

Solution. Both columns are multiples of u=(1,2,1), so A=uv⊤ with v=(1,2), and rankA=1. Then ‖u‖2=6, ‖v‖2=5 and σ1=30, with u1=u/6 and v1=v/5. Hence A+=σ1−1v1u1⊤=130vu⊤=130(121242). Therefore xmin=A+b=130(1+8+1, 2+16+2)=(13,23).

Projection. col(A)=span(u) and ⟨b,u⟩=1+8+1=10, so Pcol(A)b=106u=53(1,2,1). And Axmin=u(v⊤xmin)=u(13+43)=53u. They agree.

Shortest. The least-squares solutions are the x with v⊤x=x1+2x2=53. Another one is (53,0), of squared norm 259, against ‖xmin‖2=19+49=59. The pseudoinverse solution is shorter, as Theorem 13.11.4 (b) requires.

Exercise (B3: Checking a candidate)

Let A=(101101) and X=13(21−1−112). Verify the four Penrose conditions for X, and hence find the minimum-norm least-squares solution of Ax=(1,2,3).

Solution. Compute the two products first: XA=13(3003)=I2,AX=13(21−1121−112). (P4): XA=I2 is Hermitian. (P3): AX is visibly symmetric. (P1): AXA=A(XA)=AI2=A. (P2): XAX=I2X=X. All four hold, so X=A+ by Theorem 13.11.2.

Then xmin=X(1,2,3)=13(2+2−3, −1+2+6)=(13,73). (The columns of A are independent, so this is also (A⊤A)−1A⊤b, and it is the unique least-squares solution; the normal equations (2112)x=(3,5) confirm it.)

C. Going deeper

Exercise (C1: Pseudoinverses of A∗A)

Let A∈Mm×n(F).

  • (a) Prove that (A∗A)+=A+(A+)∗.
  • (b) Deduce that A+=(A∗A)+A∗, the formula (A∗A)−1A∗ with the inverse replaced by the pseudoinverse.

Hint: use a singular value decomposition and reduce each identity to an identity between diagonal matrices.

Solution. Write A=UΣV∗.

  • (a) Then A∗A=VΣ∗ΣV∗, and Σ∗Σ∈Mn(F) is diagonal with entries σ12,…,σp2 followed by zeros. That display is a singular value decomposition of A∗A in the sense of Theorem 13.8.1 (both outer factors are V, which is unitary, and the middle factor is diagonal with non-negative entries), so (A∗A)+=V(Σ∗Σ)+V∗, where (Σ∗Σ)+ is diagonal with entries σi−2 for i≤r and 0 elsewhere. On the other side, (A+)∗=(VΣ+U∗)∗=U(Σ+)∗V∗, so A+(A+)∗=VΣ+U∗U(Σ+)∗V∗=VΣ+(Σ+)∗V∗. The middle factor Σ+(Σ+)∗ is diagonal with entries σi−1σi−1=σi−2 for i≤r and 0 elsewhere, which is (Σ∗Σ)+. Hence the two sides agree.

  • (b) Using (a) and A∗=VΣ∗U∗, (A∗A)+A∗=VΣ+(Σ+)∗Σ∗U∗. Now (Σ+)∗Σ∗=(ΣΣ+)∗=ΣΣ+, which is the m×m diagonal matrix with r ones and then zeros; and Σ+ multiplied by it on the right is Σ+, since Σ+ has non-zero entries only in the first r columns. So the right-hand side is VΣ+U∗=A+.

Exercise (C2: When the reversal rule does hold)

Let A∈Mm×n(F) with rankA=n and B∈Mn×q(F) with rankB=n. Prove that (AB)+=B+A+. Hint: write both pseudoinverses with the formulas of Theorem 13.11.3 (e) and verify the Penrose conditions for the product.

Solution. By Theorem 13.11.3 (e), A+=(A∗A)−1A∗ and B+=B∗(BB∗)−1, the two inverses existing because rankA=n and rankB∗=n. Put X=B+A+=B∗(BB∗)−1(A∗A)−1A∗. Throughout we use A+A=In and BB+=In, which the two formulas give at once.

(P1): (AB)X(AB)=A(BB+)(A+A)B=AInInB=AB.

(P2): X(AB)X=B+(A+A)(BB+)A+=B+A+=X.

(P3): (AB)X=A(BB+)A+=AA+=A(A∗A)−1A∗, which equals its own conjugate transpose, since A∗A is Hermitian and so is its inverse.

(P4): X(AB)=B+(A+A)B=B+B=B∗(BB∗)−1B, Hermitian for the same reason.

All four hold, so X=(AB)+ by Theorem 13.11.2.

Exercise (C3: When the pseudoinverse is the adjoint)

Let A∈Mm×n(F).

  • (a) Prove that A+=A∗ if and only if AA∗A=A.
  • (b) Deduce that A+=A∗ if and only if every non-zero singular value of A equals 1.
  • (c) Give an example of such an A in M2(R) which is neither unitary nor an orthogonal projection.

Solution.

  • (a) (⇒) If A+=A∗, then (P1) reads AA∗A=A.

    (⇐) Suppose AA∗A=A and put X=A∗. Then (P1) is the hypothesis; (P2) is A∗AA∗=(AA∗A)∗=A∗; (P3) is (AA∗)∗=AA∗, true for every A; and (P4) is (A∗A)∗=A∗A, likewise. By Theorem 13.11.2, A+=A∗.

  • (b) With A=UΣV∗ we have A∗=VΣ∗U∗ and A+=VΣ+U∗. Since U and V are invertible, A+=A∗ if and only if Σ+=Σ∗, that is if and only if σi−1=σi for every i≤r, that is if and only if every non-zero singular value is 1 (the equation σ2=1 with σ>0 forces σ=1).

  • (c) Take A=12(1100). Then AA⊤=(1000), so AA⊤A=A and (a) applies. Its singular values are 1 and 0, matching (b). It is not unitary, since it is singular, and not an orthogonal projection, since A⊤≠A. Such a matrix maps col(A∗) isometrically onto col(A) and sends nul(A) to 0: a unitary matrix on the part of the space where it is invertible, and nothing at all elsewhere.

Found a typo or a mistake? Report it, or read this page’s source

The text of this book is licensed under CC BY-NC-SA 4.0.