Skip to content

Sherman–Morrison Formula

The Sherman–Morrison formula gives the exact inverse of an invertible matrix after a rank-one outer-product update, provided one scalar denominator is nonzero.

Version
v3 · 2026-09-06 · History
Domain-specific #
2770
Origin domain
linear algebra
Subdomain
matrix analysis
Aliases
Sherman–Morrison identity, Rank-one inverse update formula

Core Idea

The Sherman–Morrison formula is the exact rank-one inverse-update identity. Let (A) be an invertible \(n\times n\) matrix, and let (u) and (v) be (n)-component column vectors. If

\[ \alpha = 1+v^{\mathsf T}A^{-1}u \neq 0, \]

then \(A+uv^{\mathsf T}\) is invertible and

\[ (A+uv^{\mathsf T})^{-1} =A^{-1}-\frac{A^{-1}uv^{\mathsf T}A^{-1}} {1+v^{\mathsf T}A^{-1}u}. \]

Over complex matrices the same relation is commonly written with a conjugate transpose, (uv^*), when that is the intended update. More abstractly, \(v^{\mathsf T}\) is a row covector. No symmetry or positive definiteness is required. The assumptions are an invertible baseline, a rank-at-most-one outer-product modification, and a nonzero scalar denominator.[1][2]

The identity's practical compression is that an \(n\times n\) inverse change is governed by two matrix–vector products, one outer product, and one scalar. If an inverse is genuinely available, the update can be formed in (O(n^2)) arithmetic instead of recomputing a generic factorization or inverse in (O(n^3)). If a factorization of (A), rather than (A^{-1}), is available, the same algebra updates a solve without forming either inverse explicitly: solve (Az=u) and (Ay=b), compute \(\alpha=1+v^{\mathsf T}z\), and obtain

\[ x=(A+uv^{\mathsf T})^{-1}b =y-z\frac{v^{\mathsf T}y}{\alpha}. \]

This distinction matters numerically. The formula is an algebraic identity, not a command to form explicit inverses in every implementation.[2][3]

Structural Signature

The defining relation is:

invertible baseline matrix or reusable baseline solve → one outer-product update \(uv^{\mathsf T}\) → scalar gate \(1+v^{\mathsf T}A^{-1}u\) → rank-one correction to the inverse or solution.

Six roles are mandatory:

  1. An invertible square baseline (A). The formula begins from an object for which inverse action is known or available through a factorization. A singular baseline needs generalized-inverse or other theory and is outside the ordinary identity.
  2. A column (u) and row \(v^{\mathsf T}\). Their outer product changes (A) by rank at most one. If one vector is zero, the update is zero and the formula reduces harmlessly to (A^{-1}).
  3. The baseline inverse action. The quantities (A^{-1}u), \(v^{\mathsf T}A^{-1}\), and—when solving—(A^{-1}b) carry all dependence on the original matrix.
  4. The scalar denominator (alpha). This is not a convenience term. It is the exact invertibility test for the updated matrix when (A) is invertible.
  5. A rank-one inverse correction. The difference \((A+uv^{\mathsf T})^{-1}-A^{-1}\) is the scaled outer product \(-(A^{-1}u)(v^{\mathsf T}A^{-1})/\alpha\), hence rank at most one.
  6. An exact, not asymptotic, output. In exact arithmetic the identity is not a first-order approximation and does not require (u), (v), or their product to be small.

The recognition test is strict. A low-rank update of rank (k>1) belongs to the Woodbury identity unless decomposed into sequential rank-one updates with every intermediate denominator valid. A determinant update is the matrix determinant lemma. A generic sensitivity expansion is not Sherman–Morrison unless it preserves the exact inverse-update relation.

What It Is Not

It is not Perturbation Theory in the catalog's narrow power-series sense. Sherman–Morrison does compare a baseline with a changed problem, but it produces a finite exact rational identity. It needs no small parameter, truncation order, convergence argument, or asymptotic series. The update can be large; only invertibility and the scalar gate matter.

It is not the Woodbury matrix identity, though it is its rank-one case. For \(U,V\in\mathbb F^{n\times k}\), Woodbury handles \(A+UV^{\mathsf T}\) by inverting the \(k\times k\) matrix \(I_k+V^{\mathsf T}A^{-1}U\). Sherman–Morrison is the (k=1) specialization, where the inner inverse becomes division by one scalar.[1][2]

It is not the matrix determinant lemma. That lemma gives

\[ \det(A+uv^{\mathsf T}) =\det(A)(1+v^{\mathsf T}A^{-1}u), \]

so it shares the same scalar and proves the invertibility condition. Its output is a determinant, not an inverse.

It is not a general matrix inversion algorithm. The formula exploits a known baseline and a particular low-rank relation. With no usable inverse action or factorization of (A), it does not avoid solving the original problem. It is also not automatically the preferred floating-point method; factorization updates or refactorization may better preserve stability, structure, or sparsity.

It is not restricted to symmetric updates \(uu^{\mathsf T}\), positive definite matrices, or changes to one element. Those are important special cases. The general rank-one update uses independent (u) and (v).

Scope of Application

Sherman–Morrison belongs to linear algebra and numerical computation wherever a sequence of closely related linear systems differs by one rank-one term. The historical Sherman–Morrison papers treated changes to matrix elements, rows, or columns; Bartlett stated a general inverse adjustment in discriminant analysis.[4][5] Hager's SIAM review documents the wider matrix-modification family across statistics, networks, structural analysis, optimization, partial differential equations, and related applications.[1]

Common uses include updating inverse covariance or normal-equation matrices when one observation contributes an outer product; analyzing replacement of one column in a simplex basis; updating a linear-system solution after a localized change; deriving recursive least-squares and Gaussian-conditioning equations; and simplifying analytic expressions in which an operator or matrix has a rank-one addition. In many such settings the Woodbury form is used because the change has rank greater than one, but the rank-one case retains a distinctive scalar gate and correction.

The scope has important exclusions. A graph Laplacian is singular before grounding or restricting its nullspace, so ordinary Sherman–Morrison cannot be applied directly to the full Laplacian. A downdate \(A-uv^{\mathsf T}\) is covered by replacing (u) with (-u), but its denominator becomes \(1-v^{\mathsf T}A^{-1}u\) and may cross zero. Structured matrices may lose symmetry, definiteness, sparsity, or conditioning under an arbitrary update even though the algebraic inverse exists.

Clarity

The scalar \(\alpha=1+v^{\mathsf T}A^{-1}u\) clarifies three questions at once. First, it decides whether the updated matrix is invertible. Second, it scales the entire inverse correction. Third, its magnitude warns when the update approaches singularity. If \(\alpha=0\), then

\[ (A+uv^{\mathsf T})A^{-1}u =u+u(v^{\mathsf T}A^{-1}u)=u\alpha=0. \]

Because \(\alpha=0\) implies \(u\neq 0\), the vector (A^{-1}u) is nonzero, providing a null vector for the updated matrix. If \(\alpha\neq0\), multiplying the proposed inverse by \(A+uv^{\mathsf T}\) cancels the correction and yields the identity. Thus the condition is both necessary and sufficient.

The phrase “rank-one update” can conceal a degenerate case. The outer product has rank exactly one only when both vectors are nonzero; otherwise its rank is zero. The formula remains valid, with denominator one, but nothing changes. Likewise, “cheaply updates an inverse” presupposes that applying (A^{-1}) is already cheap. If only raw entries of (A) are present, the costly baseline computation has not disappeared.

Near-zero and zero must also be separated. In exact arithmetic only zero invalidates the formula. In floating-point computation a small \(|\alpha|\) can amplify rounding error and reflects a large inverse correction. A fixed universal tolerance is not supplied by the identity; scaling, norms, conditioning, precision, and the application determine whether to update, refine, or refactor.

Manages Complexity

The formula compresses a global change into low-dimensional information. Although changing (A) changes every entry of its inverse in general, a rank-one perturbation changes that inverse by another rank-one matrix. The calculation can be organized around

\[ z=A^{-1}u,\qquad w^{\mathsf T}=v^{\mathsf T}A^{-1},\qquad \alpha=1+v^{\mathsf T}z, \]

followed by \(A^{-1}-zw^{\mathsf T}/\alpha\). An \(n\times n\) recomputation becomes two inverse actions, one inner product, and one outer product. Higham emphasizes that the low-rank Woodbury generalization replaces a large inverse problem by a \(k\times k\) inner problem when \(k\ll n\).[2]

For repeated right-hand sides, materializing the updated inverse may be useful if an inverse representation is already part of the algorithm. For one right-hand side, the solve form avoids the outer product and uses (y=A^{-1}b), (z=A^{-1}u), and one scalar correction. If (A=LU) is factored, (y) and (z) come from triangular solves. This preserves the conceptual compression while respecting the common numerical-linear-algebra rule that solving through a factorization is usually preferable to explicitly computing an inverse.[3]

Abstract Reasoning

The identity follows from factoring the update:

\[ A+uv^{\mathsf T}=A(I+A^{-1}uv^{\mathsf T}). \]

Let (z=A^{-1}u). Since \((zv^{\mathsf T})^2=z(v^{\mathsf T}z)v^{\mathsf T}\), every positive power of the rank-one product remains a scalar multiple of the same outer product. One can therefore seek an inverse of \(I+zv^{\mathsf T}\) in the form \(I-\beta zv^{\mathsf T}\). Multiplication gives the identity when

\[ \beta=\frac{1}{1+v^{\mathsf T}z}. \]

Postmultiplying by (A^{-1}) yields the formula. The derivation explains why the denominator is scalar: the update has only one active direction on each side.

Several deductions follow immediately. The inverse change has rank at most one. If \(v^{\mathsf T}A^{-1}u=0\), the denominator is one, but the inverse can still change. If (alpha) approaches zero, the correction norm can grow roughly like \(1/|\alpha|\), with numerator geometry determining the exact magnitude. And a sequence of rank-one changes can be processed iteratively only while every intermediate matrix remains invertible; the final matrix being invertible does not license division by a zero intermediate denominator in a chosen sequence.

Knowledge Transfer

The formula transfers literally across statistics, optimization, control, network computation, and scientific modeling because the same matrix relation survives: an invertible baseline plus one outer product. The domain objects differ—an observation, basis-column replacement, covariance contribution, constraint, edge term, or physical coupling—but the algebraic roles remain (A,u,v,alpha), and the same correction follows.

What transfers outside matrix mathematics is only analogy: reuse a solved baseline when a modification is low-dimensional. That more general heuristic belongs to Perturbation, Refinement, or related catalog abstractions. Sherman–Morrison itself does not apply to arbitrary “small changes,” nor does “rank one” mean “one ordinary edit” unless the edit actually factors as an outer product.

The formula also transfers between inverse and solve viewpoints. The inverse form exposes the exact changed operator. The solve form exposes the computational intervention for a particular (b). Their equivalence is useful knowledge transfer inside numerical linear algebra, but the implementation should carry the representation actually available—factorization, solver, or explicit inverse—rather than force all problems into stored-inverse form.

Examples

Diagonal update. Let

\[ A=\begin{pmatrix}2&0\\0&3\end{pmatrix},\quad u=v=\begin{pmatrix}1\\0\end{pmatrix}. \]

Then \(A^{-1}=\operatorname{diag}(1/2,1/3)\), \(A^{-1}u=(1/2,0)^{\mathsf T}\), and \(\alpha=1+1/2=3/2\). The correction is

\[ \frac{(1/2,0)^{\mathsf T}(1/2,0)}{3/2} =\begin{pmatrix}1/6&0\\0&0\end{pmatrix}. \]

Hence the updated inverse is (operatorname{diag}(⅓,⅓)), exactly the inverse of \(A+uv^{\mathsf T}=\operatorname{diag}(3,3)\).

Singular boundary. Take (A=I), (u=e_1), and (v=-e_1). Then \(\alpha=1-1=0\), and \(A+uv^{\mathsf T}=I-e_1e_1^{\mathsf T}\) has a zero first diagonal entry. The forbidden denominator is not a removable artifact; it detects actual singularity.

Replacing one matrix entry. Changing (A_{ij}) by (t) gives \(A+t e_i e_j^{\mathsf T}\). The formula updates the inverse using the (i)-th column and (j)-th row of (A^{-1}), with denominator (1+t(A^{-1})_{ji}). This connects the general identity to Sherman and Morrison's historical matrix-element adjustment problem.[4][2]

Adding one least-squares observation. If a normal matrix changes from \(G=X^{\mathsf T}X\) to \(G+xx^{\mathsf T}\), then (u=v=x). For positive definite (G), the denominator \(1+x^{\mathsf T}G^{-1}x\) is positive. The formula updates (G^{-1}), though practical algorithms may instead update a QR or Cholesky factor for numerical reasons.

Structural Tensions

The first tension is reuse versus recomputation. A rank-one update can save substantial work when the baseline solve is reusable. Accumulated rounding error, lost sparsity, or many sequential updates may make periodic refactorization safer or cheaper overall.

The second is exact validity versus numerical sensitivity. Algebra requires only \(\alpha\neq0\); reliable floating-point use also cares about the scale of (alpha), the conditioning of (A) and the updated matrix, and the accuracy of the baseline inverse action. Near the singular boundary the exact answer itself can be huge.

The third is explicit inverse versus factorized solve. The named identity is written with (A^{-1}), which makes its structure transparent. Implementations often should apply a factorization instead of constructing the inverse. The mathematical abstraction and the numerical representation must not be conflated.

The fourth is sequential simplicity versus path dependence of feasibility. A rank-(k) change can be decomposed into (k) rank-one changes, but one ordering may encounter a singular intermediate matrix even when the final matrix is nonsingular. Woodbury evaluates the coupled inner condition directly and can be the better abstraction.

Structural–Framed Character

The candidate is strongly structural within its domain. Its identity is fixed by roles and relations—not by historical attribution, notation, or one application—and the formula is invariant under consistent changes of basis. It yields proof, diagnosis, complexity reduction, and an exact boundary condition.

It is also irreducibly framed by linear algebra. Matrix inversion, outer products, rank, covectors, factorization, conditioning, and arithmetic complexity are not removable accents. Calling any reuse-after-small-change pattern “Sherman–Morrison” would be metaphorical and would discard the equation that determines membership.

Structural Core vs. Domain Accent

The structural core is the reuse of a solved baseline under a one-direction modification, with a low-dimensional gate determining whether an update exists and a low-dimensional correction producing the new solution. That skeleton may inspire methods in other domains.

The domain accent is decisive: (A) must be a square invertible matrix or linear operator in a setting where the products are defined; the change must factor as \(uv^{\mathsf T}\); the gate must literally be \(1+v^{\mathsf T}A^{-1}u\); and the correction must be the stated outer product. The formula is therefore a domain-specific abstraction rather than a prime.

The nearest catalog abstraction, Perturbation Theory, does not cover the residual. It encodes small-parameter series around a solvable baseline. Sherman–Morrison is exact, rational, finite, and valid for non-small updates. Matrix and Inversion supply its objects and broad operation but not its rank-one update relation.

  • Inversion. The formula computes the inverse relation after a structured modification. Inversion is a literal mechanism but too broad to capture the update identity.
  • Perturbation. \(uv^{\mathsf T}\) modifies a baseline matrix. Smallness is not required, so the generic disturbance sense applies more readily than power-series Perturbation Theory.
  • Perturbation Theory. Related through baseline-plus-correction reasoning, but sharply distinguished because Sherman–Morrison is exact and non-asymptotic.
  • Refinement. It reuses a previously solved representation to adapt to a changed problem rather than restarting, though Refinement does not provide the algebra.
  • Invariance. A consistent change of basis changes the coordinate matrices and vectors but preserves the underlying inverse-update relation.

Relationships to Other Abstractions

Local relationship map for Sherman–Morrison FormulaParents appear above the current abstraction, mutual partners to the right, and children below. Node labels state whether each abstraction is prime or domain-specific; colors identify relation types.Sherman–MorrisonFormulaDOMAINDomain-specific abstraction: Matrix — presupposesMatrixDOMAIN

Current abstraction Sherman–Morrison Formula Domain-specific

Parents (1) — more general patterns this builds on

  • Sherman–Morrison Formula presupposes Matrix Domain-specific

    Perturbation. (uv^{\mathsf T}) modifies a baseline matrix.

Hierarchy paths (5) — routes to 5 parentless roots

Neighborhood in Abstraction Space

Sherman–Morrison Formula sits in a sparse region of the domain-specific corpus (93rd percentile for distinctiveness): few abstractions share its structure, so a faithful description tends to retrieve it precisely.

Family — Unclustered & Miscellaneous (1565 abstractions)

Nearest neighbors

Computed from structural-signature embeddings · 2026-09-08

Not to Be Confused With

  • Woodbury matrix identity — the rank-(k) generalization with a \(k\times k\) inner inverse; Sherman–Morrison is its (k=1) scalar case.
  • Matrix determinant lemma — updates (det(A)), not (A^{-1}), although it shares the scalar factor and invertibility test.
  • Binomial inverse theorem — a related or alternative matrix inverse identity presented under varying hypotheses; names should not be merged without checking the exact formula.
  • BFGS or DFP updates — quasi-Newton matrix updates engineered to satisfy secant and symmetry properties; their inverse forms may be derived with low-rank identities but are not aliases.
  • Rank-one approximation — replaces a matrix by an approximate rank-one representation; Sherman–Morrison exactly inverts a rank-one modification to an invertible baseline.
  • First-order perturbation expansion — approximates the inverse by dropping higher powers; Sherman–Morrison sums the rank-one effect exactly when \(\alpha\neq0\).
  • Pseudoinverse update formulas — handle singular or rectangular cases under additional range and rank conditions; they are outside the ordinary identity.

References

[1] W. W. Hager, “Updating the Inverse of a Matrix,” SIAM Review 31, no. 2 (1989): 221–239. DOI: 10.1137/1031049. registry ↩a ↩b ↩c

[2] N. J. Higham, “What Is the Sherman–Morrison–Woodbury Formula?” September 29, 2020. Author's technical exposition. registry ↩a ↩b ↩c ↩d ↩e

[3] G. H. Golub and C. F. Van Loan, Matrix Computations, 4th ed. (Johns Hopkins University Press, 2013). Official publisher record. registry ↩a ↩b

[4] J. Sherman and W. J. Morrison, “Adjustment of an Inverse Matrix Corresponding to a Change in One Element of a Given Matrix,” The Annals of Mathematical Statistics 21, no. 1 (1950): 124–127. DOI: 10.1214/aoms/1177729893. registry ↩a ↩b

[5] M. S. Bartlett, “An Inverse Matrix Adjustment Arising in Discriminant Analysis,” The Annals of Mathematical Statistics 22, no. 1 (1951): 107–111. DOI: 10.1214/aoms/1177729698. registry