Spectral Theorems

eigendecomposition (orthogonal)

The spectral theorem has a concrete matrix face. When an operator has an orthonormal eigenbasis, stacking those eigenvectors as the columns of a matrix Q gives a unitary matrix (orthogonal in the real case), and the operator factors as A = Q D Q^*. Here D is the diagonal matrix of eigenvalues and Q^* is the conjugate transpose. In the real symmetric case this reads A = Q D Q^T with Q orthogonal, so Q^* and Q^-1 and Q^T all coincide.

Read the factorization right to left as a change of perspective. Q^* rotates a vector into eigen-coordinates, D scales each coordinate by its eigenvalue, and Q rotates back. Because Q is unitary it preserves all lengths and angles — there is no shearing or distortion, only a rigid rotation, a clean stretch, and a rotation back. This is exactly why orthogonal eigendecomposition is numerically stable: unitary factors never amplify error, so the condition number stays at its best.

Contrast this with the general eigendecomposition A = S D S^-1 from Volume I, where S is merely invertible. There S can be wildly skewed and S^-1 can be huge, so the factorization can be unstable and geometrically opaque. The orthogonal version is the gold standard you get exactly when A is normal: the eigenvector matrix is a rotation, its inverse is just its adjoint (free to compute), and the spectral resolution A = sum lambda_i q_i q_i^* falls right out of the columns.

A = Q D Q^T, Q = [q1 | q2], D = diag(lambda1, lambda2), Q^T Q = I

Real symmetric A factors into an orthogonal Q, a diagonal D of eigenvalues, and Q transpose.

A = Q D Q^* and the spectral resolution A = sum lambda_i q_i q_i^* are the same fact written two ways. The rank-one piece q_i q_i^* is exactly the orthogonal projection onto the i-th eigenvector.

Also called
orthogonal eigendecompositionA = Q D Q^*unitary diagonalization