Projections: doing it twice changes nothing
A projection is an operator P: V -> V with P^2 = P. Once you have projected, projecting again does nothing — the output is already settled. An operator obeying X^2 = X is called idempotent, and idempotent is exactly the algebraic fingerprint of a projection. This generalizes the orthogonal projection from Vol I, but here P need not be orthogonal.
The payoff: every projection splits V into a direct sum V = im P ⊕ ker P. The image is exactly the vectors P leaves fixed (P fixes everything it lands on, since P(Pv) = Pv), and the kernel is what P erases. Every v decomposes uniquely as v = Pv + (v - Pv), the first piece in the image, the second in the kernel.
P on R^2, P = [1, 1;
0, 0]
Check idempotent: P^2 = [1,1; 0,0] * [1,1; 0,0]
= [1,1; 0,0] = P OK
Image = { (a, 0) } (the x-axis) -> P fixes these
Kernel = { (t, -t) } (the line y=-x) -> P kills these
Split: (3, 2) = P(3,2) + (3,2 - P(3,2))
= (5, 0) + (-2, 2)
image piece + kernel piece, sum back to (3,2)Nilpotents: eventually everything dies
At the opposite extreme sits the nilpotent operator: N with N^k = 0 for some power k. Apply it enough times and it annihilates every vector. The cleanest model is the shift that pushes a basis down a chain and drops the last rung off the end.
N on R^3 (the shift): N(e1)=0, N(e2)=e1, N(e3)=e2
Matrix: N = [0, 1, 0;
0, 0, 1;
0, 0, 0]
Iterate:
N^1 sends e3 -> e2 -> e1 -> 0
N^2 = [0,0,1; 0,0,0; 0,0,0] (still nonzero)
N^3 = 0 (everything dies)
So k = 3 is the nilpotency index. The kernels grow:
ker N = span(e1)
ker N^2 = span(e1, e2)
ker N^3 = all of R^3Nilpotents are the raw material of the Jordan form you will meet later: every operator, after subtracting its eigenvalue, looks nilpotent on each generalized eigenspace. Notice too that N restricted to ker N^2 is still nilpotent — nilpotency survives restriction to an invariant subspace, a fact that drives the whole structure theory.
Why these two are templates
Projections and nilpotents are at opposite poles of operator behavior. A projection is as stable as possible — it repeats itself forever. A nilpotent is as transient as possible — it self-destructs. Most operators are built from blends of these two flavors, which is exactly why mastering them now pays off when we decompose general operators into invariant pieces.