{#sec:Grass}
================================

We will selectively review some basic properties of the Grassmannian. The differential geometric perspectives are drawn from [@Husemoller; @MS], the more concrete matrix-theoretic view from [@AMS; @EAS; @Wong], and the computational aspects from [@GVL].

We fix the ambient space $\mathbb{R}^n$. A *$k$-plane* is a $k$-dimensional subspace of $\mathbb{R}^n$. A *$k$-frame* is an ordered orthonormal basis of a $k$-plane, regarded as an $n \times k$ matrix whose columns $a_1,\dots, a_k$ are the orthonormal basis vectors. A *flag* is a strictly increasing sequence of nested subspaces, $\mathbf{X}_0\subset \mathbf{X}_1\subset \cdots \subset \mathbf{X}_m\subset  \mathbb{R}^n$; it is *complete* if $m=n$.

We write $\operatorname{Gr}(k,n)$ for the *Grassmannian* of $k$-planes in $\mathbb{R}^n$, $\operatorname{V}(k,n)$ for the *Stiefel manifold* of orthonormal $k$-frames, and $\operatorname{O}(n) \coloneqq \operatorname{V}(n,n)$ for the *orthogonal group* of $n \times n$ orthogonal matrices. $\operatorname{V}(k,n)$ may be regarded as a homogeneous space, $$\operatorname{V}(k,n) \cong \operatorname{O}(n)/\operatorname{O}(n-k),$$ or more concretely as the set of $n \times k$ matrices with orthonormal columns.

There is a *right action* of $\operatorname{O}(k)$ on $\operatorname{V}(k,n)$: For $Q\in \operatorname{O}(k)$ and $A \in \operatorname{V}(k,n)$, the action yields $AQ \in \operatorname{V}(k,n)$ and the resulting homogeneous space is $\operatorname{Gr}(k,n)$, i.e., $$\label{eq:homo}
\operatorname{Gr}(k,n) \cong \operatorname{V}(k,n)/\operatorname{O}(k) \cong \operatorname{O}(n)/\bigl(\operatorname{O}(n-k) \times \operatorname{O}(k)\bigr).$$ In this picture, a subspace $\mathbf{A} \in \operatorname{Gr}(k,n)$ 