9
$\begingroup$

The following question is related to research I am doing on reinforcement learning on manifolds.

I have a set of basis vectors $\boldsymbol{B} = \{\boldsymbol{b}_1,\dots,\boldsymbol{b}_k\}$ that span a $k$-dimensional linear subspace of $\mathbb{R}^n$ ($\boldsymbol{b}_i \in \mathbb{R}^n$ $\forall \ i \in (1,\dots,k)$ and $k<n$). The basis vectors can change. I want a method for converting the basis vectors into an orthonormal basis that spans the same subspace as the original basis vectors with the requirement that the map from the subspace spanned by the basis vectors to the orthonormal basis is smooth.

More formally, Let $V_k(\mathbb{R}^n)$ be the Stiefel manifold, i.e. the set of orthonormal ordered $k$-tuples of vectors in $\mathbb{R}^n$, and $G_k(\mathbb{R}^n)$ be the Grassmannian manifold, i.e. the set of $k$-dimensional linear subspaces of $\mathbb{R}^n$. I want to find a smooth map that sends each $k$-dimensional linear subspace of $\mathbb{R}^n$ (a point in $G_k(\mathbb{R}^n)$) to an orthonormal $k$-tuple of vectors in $\mathbb{R}^n$ (a point in $V_k(\mathbb{R}^n)$) that forms a basis for that subspace. The smoothness of the map is key.

$\endgroup$
0

3 Answers 3

15
$\begingroup$

This is not possible even for continuous maps for any $k$ in $(0,n)$ because the Stiefel manifold is connected. On the other hand, every fiber of $V_k(\mathbb R^n)$ to $G_k(\mathbb R^n)$ is disconnected. If we had a section, we could divide $V_k(\mathbb R^n)$ into two pieces, those which lie in the same connected component of a fiber as the section and those which line in a different connected component. These two pieces never meet in a fiber and therefore never meet at all, so $V_k(\mathbb R^n)$ has at least two components, which contradicts its connectedness. (More precisely, we use that the fibration is locally trivial, so the inverse image of a ball on $G_k(\mathbb R^n)$ has two components, one containing the section and one not, and since these don't meet in the inverse image of any ball in $G_k(\mathbb R^n)$ they don't meet anywhere.)

A more general argument is that this is not possible because it would mean that the the tautological vector bundle on $G_k(\mathbb R^n)$ (the vector bundle whose fiber over each point is the $k$-dimensional linear subspace) is isomorphic to the trivial vector bundle (the isomorphism sending the standard basis of $\mathbb R^k$ to this orthonormal basis) but this is impossible because the Stiefel-Whitney classes of the tautological bundle are nonzero while the Steifel-Whitney classes of the trivial bundle are zero. The argument above is essentially about the nonvanishing of the first Stiefel-Whitney class. In fact the last Stiefel-Whitney class is nonzero, which gives an obstruction to having even a single continuously vanishing nonzero vector in the subspace.

$\endgroup$
6
$\begingroup$

First, let me add a pedagogical remark. The answer by Will Sawin is of course completely correct. I just want to add that it might be instructive to consider the case $k=1$ where the Stiefel manifold is actually a sphere and the Grassmannian is the real projective space. The nontrivial fibration we have in that case is $$ \mathbb{Z}_2 \to S^n \to \mathbb{R}P^n. $$

The problem you pose is to choose one of the two unit vectors on each line going through the origin which can be intuitively seen to be impossible to do continuously on the whole manifold of lines.

But more importantly, your manifold reformulation seems suspicious to me since the Grassmann manifold is not the manifold $B$ of ordered bases $b = \{b_1, \ldots, b_k\}$.

In terms of homogenenous spaces, we have $V_k(\mathbb{R}^n) \simeq O(n)/O(n-k)$ for the Stiefel manifold. We can think of the Grassmann manifold in two different ways. Either as $G_k(\mathbb{R}^n) \simeq O(n)/(O(k)\times O(n-k))$, where we can see its relation to the Stiefel manifold, or as $$ G_k(\mathbb{R}) \simeq GL(n)/P $$ where $P$ is the stabilizer of the subspace spanned by the first $k$ elementary vectors: $$ P = \left\{ \begin{pmatrix} A & B \\ 0 & D \end{pmatrix} \in GL(n) \right\}. $$

The latter description is closer to the manifold of (ordered) $k$-tuples of linearly independent vectors which is $$B \simeq GL(n)/Q$$ where $$ Q = \left\{ \begin{pmatrix} I_k & B \\ 0 & D \end{pmatrix} \in GL(n) \right\}. $$ Here $I_k$ is the $k\times k$ unit matrix. This subgroup of $GL(n)$ is smaller than $P$. The dimensions are $$ \begin{align} \dim V_k(\mathbb{R}^n) & = nk-\frac{1}{2}k(k+1) \\ \dim G_k(\mathbb{R}^n) & = nk-k^2 \\ \dim B & = nk \end{align} $$.

You say you want the map $\varphi\colon B\to V_k(\mathbb{R}^n)$ so that $[b] \to \varphi(b)$ is smooth, where $[b]$ is the subspace spanned by the basis $b$. (For this to be well defined, we need $\varphi(bP) = \varphi(b)$.) Your manifold formulation suggest you want this map to be composition of $b\to[b]$ and (putative) section $G_k(\mathbb{R}^n)\to V_k(\mathbb{R}^n)$.

Why do you need smoothness with respect to $[b]$? If you work with $b$ directly, you have several well studied options which are smooth and/or numerically stable.

$\endgroup$
2
  • $\begingroup$ I am happy to work directly with $\boldsymbol{b}$. The Gram–Schmidt process seems to have problems though. Consider two basis vectors in $\mathbb{R}^2$. Imagine the first vector points in the positive x-axis direction, and the second is a rotation of the first by a small angle of + or - $\epsilon$. Depending on the sign of the rotation, I will get a second orthonormal vector pointing in the direction of the either positive or negative y-axis. Therefore, slightly changing $\boldsymbol{b}$ can lead to very different orthonormal vectors. Are there other methods that don't have problems like this? $\endgroup$
    – Jabby
    Commented Sep 24 at 16:47
  • 2
    $\begingroup$ @Jabby Going from $e_1 + \epsilon e_2$ to $e_1 - \epsilon e_2$ passes through situation where we have just 1-dimensional subspace instead of 2-dimensional. I suggest you post another question about orthogonalization processes and include your motivation / goals so that people know better how to help you. $\endgroup$ Commented Sep 24 at 17:05
1
$\begingroup$

I will try to frame Will Sawin's answer in a slightly different language, that may be helpful. What you are asking for is a smooth section of $V_k(\mathbb{R}^n)$ over $G_k(\mathbb{R}^n)$, where the former is seen as a principal bundle over the latter with structure group $O(k)$. The "flipping problem" you refer to in several comments in this and another MO post of yours actually illustrate that the answer to your question is that there is no such an object (in fact, there is not even a continuous section of this bundle) if $k<n$.

This is due to the fact that the aforementioned principal bundle is non-trivial, that is, $V_k(\mathbb{R}^n)$ is not bundle isomorphic to $G_k(\mathbb{R}^n)\times O(k)$ (with the projection onto the first component as the bundle projection). If there were a smooth section of $V_k(\mathbb{R}^n)$ over $G_k(\mathbb{R}^n)$, one can use it to construct such a bundle isomorphism by using the right $O(k)$-action on $V_k(\mathbb{R}^n)$, a contradiction.

Now, as to why $V_k(\mathbb{R}^n)$ is a non-trivial principal $O(k)$-bundle over $G_k(\mathbb{R}^n)$ if $k<n$, this is essentially Will's second paragraph. Since the tautological vector bundle over $G_k(\mathbb{R}^n)$ is (vector bundle isomorphic to) the vector $k$-bundle associated to $V_k(\mathbb{R}^n)$ with fiber $\mathbb{R}^k$, it would be trivial if $V_k(\mathbb{R}^n)$ itself were trivial. However, we do know that the former is not trivial because it has nonzero Stiefel-Whitney characteristic classes if $k<n$ as pointed in Will's answer.

In fact, the situation is even worse: you cannot find such a map even if you relinquish ortonormality of the bases in the image. If there were such a map, one could use the Gram-Schmidt orthonormalization (which, as I pointed in my first comment to your other MO question, is smooth) to get a smooth section of $V_k(\mathbb{R}^n)$ over $G_k(\mathbb{R}^n)$, yielding once more a contradiction.

What you do have is only local smooth sections of $V_k(\mathbb{R}^n)$ over $G_k(\mathbb{R}^n)$ due to local triviality of the former as a bundle over the latter. You could try a "piecewise-smooth" (but necessarily discontinuous) approach instead, as suggested by Ryan Budney's comment to your other MO question.

$\endgroup$

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .