= Rank-one matrix update
{title2=$B=A+uv^T$}
A <rank-one matrix update> changes a <matrix> $A$ by an <outer product> $uv^T$. For real <vectors> $u,v\in\mathbb R^n$, its action on an input <vector> $x$ is
$$
(A+uv^T)x=Ax+u(v^Tx).
$$
The <dot product> $v^Tx$ reads one <scalar> from the input, and the correction moves the output along $u$. All correction outputs therefore lie in one <linear span>. If either <vector> is zero, the update is zero; otherwise the correction is a <rank-one matrix>. The full updated <matrix> need not have rank one.
For example, choose
$$
u=\begin{pmatrix}1\\2\end{pmatrix},\qquad
v=\begin{pmatrix}3\\-1\end{pmatrix},\qquad
uv^T=\begin{pmatrix}3&-1\\6&-2\end{pmatrix}.
$$
The update sends $x=(x_1,x_2)^T$ to the correction $(3x_1-x_2)(1,2)^T$. Although all four entries change, there is only one direction of correction. Adding it to the <identity matrix> gives $B=\begin{pmatrix}4&-1\\6&-1\end{pmatrix}$.
This special structure allows existing work to be reused. The <matrix determinant lemma> updates the <determinant> using one <scalar>, and the <Sherman–Morrison formula> updates the <matrix inverse> using an <outer product>. Such formulas are useful when a <linear system> changes slightly after a new observation or a parameter adjustment: the unchanged part can retain its <LU decomposition>. The term rank-one describes the rank of the \i[correction], not the size of the entry changes. https://ocw.mit.edu/courses/18-065-matrix-methods-in-data-analysis-signal-processing-and-machine-learning-spring-2018/988b4c05680f40a5a4b3be7004a32500_XhSk_Lw2X_U.pdf[Gilbert Strang, MIT 18.065, Lecture 14: Low Rank Changes in A and Its Inverse]{ref}.
Back to article page