Spectral Theorems

real spectral theorem subtleties

Over the complex numbers the spectral theorem is generous: every normal operator diagonalizes orthonormally. Over the real numbers the story is more delicate, and forgetting the difference is a classic trap. The clean statement that survives intact over R is only for symmetric operators (T = T^T): these always have a real orthonormal eigenbasis. But a general real normal operator need not diagonalize over R at all.

The reason is that real polynomials can have complex roots. A rotation by 90 degrees, R = [0, -1; 1, 0], is normal and orthogonal, yet it has no real eigenvalues — its eigenvalues are i and -i, and there is no real vector it merely scales. You cannot diagonalize it with real numbers because there is literally no real eigenvector to find. The complex eigenvalues come in conjugate pairs, reflecting the fact that the operator rotates a plane rather than fixing a line.

What survives is a real block form. Every real normal operator has an orthonormal basis in which it is block-diagonal, with 1-by-1 blocks for real eigenvalues and 2-by-2 rotation-scaling blocks of the form [a, -b; b, a] for each conjugate pair a +/- bi. So orthogonal matrices become products of plane rotations and reflections, skew-symmetric matrices become pure rotation blocks, and only symmetric matrices collapse all blocks to size one. The moral: over C ask whether T is normal; over R you must ask whether T is symmetric, a strictly stronger condition.

R = [cos t, -sin t; sin t, cos t] is real normal, eigenvalues exp(+/- i t), no real eigenvector for t != 0, pi

A real rotation is normal but only block-diagonalizes over R; its true eigenvalues live in C.

Mnemonic: over C, normal is enough; over R, you need symmetric. A real rotation is the standard counterexample — perfectly normal, yet impossible to diagonalize without stepping into the complex numbers.

Also called
real vs complex spectral theoremreal normal operators