Invariant subspaces of an endomorphism diagonal in a basis #
An endomorphism f of a module that is diagonal in a basis b, so f (b i) = a i • b i, scales
the i-th coordinate of every vector by the eigenvalue a i. When the eigenvalues are pairwise
distinct, that is when a is injective, this pins down the invariant subspaces: an f-invariant
subspace contains every basis vector occurring in one of its elements, hence is spanned by the
basis vectors it contains, and a nonzero eigenvector of f is a multiple of a single basis
vector. Neither is automatic for an operator with repeated eigenvalues.
The mechanism is that a coordinate of a vector w can be cleared without disturbing the others:
f w - a j • w again lies in any invariant subspace containing w, and its k-th coordinate is
(a k - a j) * b.repr w k, which vanishes at k = j and, by injectivity of a, at no other
index where w had a nonzero coordinate. An induction on the number of nonzero coordinates then
strips a vector down to a single basis vector.
Mathlib records the neighbouring facts in eigenspace language: eigenspaces for distinct
eigenvalues are independent (Module.End.eigenspaces_iSupIndep), and eigenvectors for distinct
eigenvalues are linearly independent (Module.End.eigenvectors_linearIndependent'); neither says
what an invariant subspace looks like. TauCeti.iSup_inf_iInf_eigenspace_of_invariant does cut
an invariant submodule out by eigenspaces, but for a commuting family over an algebraically
closed field, in finite dimension, and with semisimple restrictions. A diagonalizing basis
carries all of that for free and in coordinates, which is the form used here: no finiteness, no
algebraic closedness, and the answer names the basis vectors involved.
Main results #
Module.Basis.repr_apply_of_apply_basis: the coordinates off ware those ofwscaled by the eigenvalues.Module.Basis.repr_eq_zero_of_weight_ne: a joint eigenvector has zero coordinate at a basis vector of a different joint weight.Module.Basis.self_mem_of_repr_ne_zeroandModule.Basis.eq_span_self_mem: an invariant subspace contains every basis vector occurring in one of its elements, and is spanned by the basis vectors it contains.Module.Basis.exists_apply_eq_and_mem_span_singleton: a nonzero eigenvector offis a multiple of a single basis vector, whose eigenvalue is its eigenvalue.
The coordinates are scaled by the eigenvalues #
An endomorphism diagonal in a basis scales the coordinates: if f (b i) = a i • b i for
every i, then f multiplies the i-th coordinate of every vector by a i.
A joint eigenvector has zero coordinate at every basis vector of a different joint weight, when a family of endomorphisms is diagonal in the basis.
Invariant subspaces are spanned by basis vectors #
An invariant subspace contains every basis vector occurring in one of its elements, when the endomorphism is diagonal in the basis with pairwise distinct eigenvalues: the coordinates of an element can then be separated by repeatedly clearing one of them.
An invariant subspace is spanned by the basis vectors it contains, when the endomorphism is diagonal in the basis with pairwise distinct eigenvalues.
Eigenvectors are multiples of basis vectors #
A nonzero eigenvector is a multiple of a single basis vector, when the endomorphism is diagonal in the basis with pairwise distinct eigenvalues, and its eigenvalue is the eigenvalue of that basis vector.