= Solution
Apply part (b) to the first column of $A$, using an <orthogonal> reflection to zero all entries below the first. Next apply a <Householder reflection> to the trailing subvector of the second column, embedded as $\operatorname{diag}(1,H_2)$ so it leaves the first row and the zeros already created intact. Continue similarly through the columns. If a trailing column subvector is zero, skip that step.
The product of these embedded <orthogonal> matrices sends $A$ to an <upper triangular matrix> $R$. Write that product as $Q^T$; its transpose $Q$ is also <orthogonal>. Hence
$$
\boxed{Q^TA=R,\qquad A=QR.}
$$
The argument uses no inverse of $A$ and therefore includes singular matrices.
Back to article page