Skip to content

Moore-Penrose Inverse


Definition

Let AA be a real m×nm\times n matrix. The Moore-Penrose inverse of AA is the n×mn\times m matrix A+A^+ satisfying the four Penrose conditions

(1) AA+A=A,(2) A+AA+=A+,(3) (AA+)⊤=AA+,(4) (A+A)⊤=A+A.\text{(1) }AA^+A=A,\quad \text{(2) }A^+AA^+=A^+,\quad \text{(3) }(AA^+)^{\top}=AA^+,\quad \text{(4) }(A^+A)^{\top}=A^+A.
(1) AA+A=A,(2) A+AA+=A+,(3) (AA+)⊤=AA+,(4) (A+A)⊤=A+A.\begin{aligned} &\text{(1) }AA^+A=A,\\ &\text{(2) }A^+AA^+=A^+,\\ &\text{(3) }(AA^+)^{\top}=AA^+,\\ &\text{(4) }(A^+A)^{\top}=A^+A. \end{aligned}

For every AA exactly one such matrix exists.


Interpretation

Condition (1) alone defines a generalized inverse, of which there are usually many. Condition (2) makes AA in turn a generalized inverse of A+A^+, and conditions (3) and (4) require the two products to be symmetric. Together they force AA+AA^+ and A+AA^+A to be orthogonal projections, which pins down a single matrix.

The four fundamental subspaces as boxes: A maps the row space to the column space and A+ maps it back, while Null(A) and Null(A transpose) are sent to zero.

In the figure, AA (blue) carries the row space Row⁡(A)\operatorname{Row}(A) onto the column space Col⁡(A)\operatorname{Col}(A) and sends Null⁡(A)\operatorname{Null}(A) to 0\boldsymbol{0}. The Moore-Penrose inverse A+A^+ (red) runs the other way: it undoes AA from Col⁡(A)\operatorname{Col}(A) back onto the row space and sends Null⁡(A⊤)\operatorname{Null}(A^{\top}) to 0\boldsymbol{0}. This is why AA+AA^+ projects onto Col⁡(A)\operatorname{Col}(A) and A+AA^+A onto Row⁡(A)\operatorname{Row}(A).

Geometrically, A+A^+ inverts AA where it can and sends the rest to zero: it maps Col⁡(A)\operatorname{Col}(A) back onto the row space by undoing AA, and maps Null⁡(A⊤)\operatorname{Null}(A^{\top}) to 0\boldsymbol{0}.

Two cautions. In general (AB)+≠B+A+(AB)^+\neq B^+A^+. And A+A^+ does not depend continuously on AA: for ε≠0\varepsilon\neq0, diag⁡(1,ε)+=diag⁡(1,1/ε)\operatorname{diag}(1,\varepsilon)^+=\operatorname{diag}(1,1/\varepsilon), which explodes as ε→0\varepsilon\to0, while diag⁡(1,0)+=diag⁡(1,0)\operatorname{diag}(1,0)^+=\operatorname{diag}(1,0).


Key Results

  • Via the singular value decomposition A=UΣV⊤A=U\Sigma V^{\top}: A+=VΣ+U⊤A^+=V\Sigma^+U^{\top}, where the n×mn\times m matrix Σ+\Sigma^+ has 1/σi1/\sigma_i in place of each positive singular value σi\sigma_i and zeros elsewhere.
  • If AA is square and invertible, A+=A−1A^+=A^{-1}. For a scalar, a+=1/aa^+=1/a if a≠0a\neq0 and 0+=00^+=0.
  • Full column rank: A+=(A⊤A)−1A⊤A^+=(A^{\top}A)^{-1}A^{\top}, a left inverse. Full row rank: A+=A⊤(AA⊤)−1A^+=A^{\top}(AA^{\top})^{-1}, a right inverse.
  • AA+AA^+ is the orthogonal projection onto Col⁡(A)\operatorname{Col}(A) and A+AA^+A the orthogonal projection onto the row space Row⁡(A)\operatorname{Row}(A).
  • x=A+b\boldsymbol{x}=A^+\boldsymbol{b} is the least-squares solution of Ax=bA\boldsymbol{x}=\boldsymbol{b} of minimum norm; if the system is consistent, it is its minimum-norm solution.
  • (A+)+=A(A^+)^+=A, (A⊤)+=(A+)⊤(A^{\top})^+=(A^+)^{\top}, rank⁡A+=rank⁡A\operatorname{rank}A^+=\operatorname{rank}A.

Examples

A singular matrix. Let A=(1111)=2uu⊤A=\begin{pmatrix}1&1\\1&1\end{pmatrix}=2\boldsymbol{u}\boldsymbol{u}^{\top} with u=12(1,1)⊤\boldsymbol{u}=\tfrac{1}{\sqrt{2}}(1,1)^{\top}, so its only positive singular value is 22. Then

A+=12uu⊤=14(1111).A^+=\tfrac{1}{2}\boldsymbol{u}\boldsymbol{u}^{\top}=\tfrac{1}{4}\begin{pmatrix}1&1\\1&1\end{pmatrix}.

Check: A2=2AA^2=2A, so AA+=A+A=12AAA^+=A^+A=\tfrac{1}{2}A, which is symmetric, and AA+A=12A2=AAA^+A=\tfrac{1}{2}A^2=A, A+AA+=18A2=14A=A+A^+AA^+=\tfrac{1}{8}A^2=\tfrac{1}{4}A=A^+. By contrast the generalized inverse G=(1000)G=\begin{pmatrix}1&0\\0&0\end{pmatrix} gives AG=(1010)AG=\begin{pmatrix}1&0\\1&0\end{pmatrix}, which is not symmetric, so condition (3) fails.

A single column. For a=(1,2)⊤\boldsymbol{a}=(1,2)^{\top} (full column rank), a+=(a⊤a)−1a⊤=15(1,2)\boldsymbol{a}^+=(\boldsymbol{a}^{\top}\boldsymbol{a})^{-1}\boldsymbol{a}^{\top}=\tfrac{1}{5}(1,2). For b=(1,1)⊤\boldsymbol{b}=(1,1)^{\top} the least-squares solution of ax=b\boldsymbol{a}x=\boldsymbol{b} is x=a+b=35x=\boldsymbol{a}^+\boldsymbol{b}=\tfrac{3}{5}.


Prerequisites



Sources

Aliases: pseudoinverse, Moore-Penrose pseudoinverse, pseudo-inverse, MP inverse, Moore-Penrose generalized inverse Keywords: A^+, Penrose conditions, A^+ = V Σ^+ U^T, (A^T A)^{-1} A^T, minimum-norm least-squares solution Symbols: epsilon, sigma, square root

Last updated: 17 October 2026 21:53