6

In $n>2$ dimensions, suppose we have a (possibly non-planar) rotation matrix $A\in SO(n)$, and a 1-parameter family of Givens rotations

$$G(\theta)=G_{21}(\theta)=\begin{bmatrix}\cos\theta&-\sin\theta&0&\cdots&0\\\sin\theta&\cos\theta&0&\cdots&0\\0&0&1&\cdots&0\\\vdots&\vdots&\vdots&\ddots&\vdots\\0&0&0&\cdots&1\end{bmatrix},\qquad\theta\in\mathbb R.$$

I expect that these generate the special orthogonal group (as a monoid), so any other rotation matrix $X\in SO(n)$ can be written as

$$X=G(\theta_k)\,A\,G(\theta_{k-1})\,\cdots\,A\,G(\theta_3)\,A\,G(\theta_2)\,A\,G(\theta_1)$$

for some angles $\theta_1,\cdots,\theta_k$.

Of course it won't always work, e.g. if $A$ is the identity, or if $A$ fixes (setwise) the plane $\mathbb R^2\subset\mathbb R^n$ or fixes a non-zero subspace orthogonal to that plane. But it should "almost always" work, I think. Can we make this more precise? Is there a simple condition on $A$ that guarantees generation of all of $SO(n)$?

In particular, does it work if $A$ doesn't fix any non-zero subspace orthogonal to $\mathbb R^2$? (We can focus on 1D and 2D subspaces, since if $A$ fixes a $k$D subspace with $k>2$ then it acts like $A\in O(k)$ which always has a 2D fixed subspace.)


As pointed out by @DavidK, we can take $A$ to cycle the axes:

$$A=\begin{bmatrix}0&0&0&0&\cdots&0&(-1)^{n-1}\\1&0&0&0&\cdots&0&0\\0&1&0&0&\cdots&0&0\\0&0&1&0&\cdots&0&0\\\vdots&\vdots&\vdots&\vdots&\ddots&\vdots&\vdots\\0&0&0&0&\cdots&0&0\\0&0&0&0&\cdots&1&0\end{bmatrix}$$

Then conjugation with $A$ produces other Givens rotations, such as $A\,G_{21}(\theta)\,A^{-1}=G_{32}(\theta)$. (Note that $A^{-1}=A^{2n-1}$ is in the monoid generated by $A$.) And these can be combined to make any rotation $X$, using Euler angles.

However, that is just one particular $A$, not "almost any" $A$.

mr_e_man
  • 5,986
  • 1
    Suppose $A$ is rotation by $1$ radian in the $xz$-plane, and you have givens rotations in the $xy$ plane to work with.

    Can you show how you'd get a rotation of, say, $\pi/3$ about the $x$-axis? If you can do that, then I'll feel like you've done your part to show that your conjecture might be true.

    – John Hughes Dec 04 '24 at 01:03
  • 2
    @JohnHughes - Good question. For $n=3$, in this context, a rotation is equivalent to a point on the sphere, the image of $[0,0,1]^\top$, since the orientation of the other two vectors can be gotten by pre-composing (i.e. multiplying on the right) with $G(\theta)$. So... (making a new comment for more space) – mr_e_man Dec 04 '24 at 01:36
  • 2
    Start with the north pole $z=[0,0,1]^\top$, apply $A$ to get a point $p$ at distance $1$ from the pole, apply $G(\theta)$ to get a circle with radius $1$, apply $A$ again to get a circle centred at $p$ passing through $z$, apply $G(\theta)$ to sweep the circle around and get a disk (on the sphere) centred at $z$ with radius $2$... Repeat twice more to get a disk with radius $4$, thus covering the whole sphere. – mr_e_man Dec 04 '24 at 01:40
  • If I read what you wrote correctly, you just showed how to rotate a vector to any other point on the sphere. That's not the same thing as constructing every possible rotation. For example, to do the rotation the first comment mentions, you need to rotate $[0,0,1]^T$ to a point $\pi/3$ distant on the sphere; but you also need to do so while leaving the $x$ axis where it started. – David K Dec 04 '24 at 16:03
  • 1
    For three dimensions, I'd try a rotation $A$ that takes the $x$ axis to the $y$ axis and the $y$ axis to the $z$ axis (and so takes the $z$ axis to the $x$ axis). Compose this with the family of Givens rotations to get Givens rotations about all three axes, and then compose these to implement Euler angles of some sort. But I can only see how to do this in an odd number of dimensions; in 4D a transformation that cycles the $x$ axis through the other three axes is not a rotation. – David K Dec 04 '24 at 16:07
  • @DavidK (1) - You rotate $[0,0,1]^\top$ to a point $\pi/3$ distant on the sphere, and then wherever the $x$ axis ends up, you pre-compose with $G(\theta)$, choosing $\theta$ such that the $x$ axis goes back where it started. – mr_e_man Dec 04 '24 at 23:47
  • @DavidK (2) - I don't just want to prove that it works for some $A$; I want to prove that it works for most $A$. I don't know exactly what "most" means, and that's part of the question. But for now I'll say it means the set of such $A$ is an open and dense subset of $SO(n)$. – mr_e_man Dec 04 '24 at 23:53
  • @DavidK (2) - To make the Euler angles idea work in even dimensions, just negate the last axis: $$A=\begin{bmatrix}0&0&0&-1\1&0&0&0\0&1&0&0\0&0&1&0\end{bmatrix}$$ – mr_e_man Dec 05 '24 at 00:33
  • For comparison, IIRC there's a theorem that almost all tuples of elements from a (semisimple?) Lie group generate a free subgroup. – coiso Dec 05 '24 at 00:39
  • Funny how that works in even dimensions, but I guess it does! – David K Dec 05 '24 at 01:31
  • Are you allowing to use inverses of $A$ as well (i.e. the group generated by $A,G$, rather than the monoid)? – LPZ Dec 06 '24 at 13:59
  • If you have a rotation $R$ which sends the north pole to some point $v$ on the sphere and a rotation $S$ through angle $\alpha$ in the $xy$-plane, then $RSR^{-1}$ is a rotation through angle $\alpha$ whose axis of rotation is the radial line through $v$. – Zbigniew Fiedorowicz Dec 06 '24 at 19:17
  • @LPZ - No. $A^{-1}$ is not available. – mr_e_man Dec 10 '24 at 03:59
  • If the angles that determine $A$ are a rational multiple of $\pi$, then $A^{-1}$ would equal $A^k$ for some $k>0$. This may be more challenging than the case where the angles are irrational. If the angles are rationally independent, there exist positive powers of $A$ such as $A^k$ which are arbitrarily close to $A^{-1}$. – The Other Terry Dec 10 '24 at 04:23
  • If n=3, then $A$ is defined by a point on the sphere (axis of rotation) and an angle. If we assume the angle is an irrational multiple of $\pi$, then generating all rotations seems clearer. Project the $z$-axis onto the $xy$-plane using the axis of rotation (not the angle yet). Call this vector $v$. The collection $A^nv$ provides a dense collection of angles with respect to the $xy$-plane for $n\geq 1$. If we wiggle $v$ (rotate in the $xy$-plane), we get an open neighborhood of angles that sweeps out all angles with $xy$-plane. Suppose we want to obtain an angle $\theta$. Continued ... – The Other Terry Dec 11 '24 at 03:55
  • Choose $n$ and $v+\delta$ such that $A^n(v+\delta)$ has angle $\theta$. Choose a Givens rotation on the $xy$-plane that rotates $A^n(v+\delta)$ into the $yz$-plane. The same method can be used to obtain any angle $\psi$ relative to the $xz$-plane. This shows it's possible to generate any triple of angles relative to each plane. Compose them to obtain any rotation. I.e., R = G_1 A^{n_1} H_1 G_2 A^{n_2} H_2 G_3 A^{n_3} H_3$. – The Other Terry Dec 11 '24 at 03:56
  • Please don't rely on the title of your MSE questions for important information. The body should be self-contained. As things stand you seem to asking several questions here, so it might be better for you to break your problem down into subproblems and ask more focussed questions about those. – Rob Arthan Dec 11 '24 at 23:34
  • @RobArthan - I think the body is self-contained, and actually the title is missing a bit of information, namely the phrase "in general" or "almost always". -- I don't see how to break down the problem. What would you suggest as the several separate Questions? – mr_e_man Dec 12 '24 at 14:00
  • Well, the part about fixed subspaces orthogonal to the plane could be a separate Question. But I'm less interested in that, if it doesn't provide a way to answer this Question. – mr_e_man Dec 12 '24 at 14:23
  • I think I misread what you wrote in the body of your question and agree on a second reading that the body is self-contained. I would still encourage you to try to break the problem down into subproblems as I think that will increase the likelihood of useful responses. Best! – Rob Arthan Dec 12 '24 at 20:16
  • @mr_e_man Can you explain in details how you recover every rotation when $A$ cycles the axes ? I can see how you get all rotations in standard form (block diagonal matrices of plane rotations), but I don't understand how you get ANY rotation (or maybe i misunderstood your question) – GreginGre Dec 13 '24 at 09:02
  • @GreginGre - Yes, you can get any rotation by combining those plane rotations. I didn't give details because I thought $n$-dimensional Euler angles were well-known. You could post a new Question about it, though this one is similar. – mr_e_man Dec 13 '24 at 15:52

2 Answers2

2

This is true even in a bit greater generality. Suppose that $G$ is a connected compact simple Lie group (and $SO(n)$ satisfies all these properties). Let $H< G$ be a 1-parameter subgroup. Then for generic elements $g\in G$, the group $G$ is generated by $H$ and $g$. Here a subset of $G$ is "generic" if it is nonempty and its complement is given by a finite system of polynomial equations (actually, one equation suffices). In particular, a generic subset is open, dense and has full measure in $G$.

Here is one way to prove this. Let ${\mathfrak g}$ denote the Lie algebra of $G$ (for you, this is the space of skew-symmetric $n\times n$ matrices equipped with the matrix commutator $XY-YX$ serving as the Lie bracket). Let $\xi\in {\mathfrak g}$ denote a generator of the (1-dimensional) Lie algebra of $H$. (Physicists usually say that $\xi$ is a "generator of $H$" but this is an abuse of terminology.) The group $G$ acts on its Lie algebra via the adjoint representation, for you, this simply means: $$ Ad_g(\eta)= g \eta g^{-1}, g\in G, \eta\in {\mathfrak g}. $$ The key is that given any nonzero vector $\eta\in {\mathfrak g}$, for generic elements $g\in G$, the $Ad_{\langle g\rangle}$-orbit of $\eta$ spans ${\mathfrak g}$ as a vector space: $$ Ad_{\langle g\rangle}(\eta)=\{Ad_{g^k}(\eta): k\in \mathbb Z\}. $$
(This is where I use the assumption that $G$ is a simple Lie group: The adjoint representation is irreducible.) For $\eta=\xi$ as above, the elements $Ad_{g^k}(\eta)$ are generators of Lie algebras of conjugate subgroups $$ H_k:=g^k H g^{-k}< G. $$

What is this good for? Suppose that $\eta_0,...,\eta_{N-1}$ are basis elements of ${\mathfrak g}$, where $N=\dim(G)$. Consider the map $$ F: \mathbb R^N\to G, F(t_0,...,t_{N-1})= \exp(t_0\eta_0)\cdots \exp(t_{N-1}\eta_{N-1}). $$ The differential of this map at $\mathbf 0$ sends a vector $(t_0,...,t_{N-1})$ to the linear combination $$ \sum_{i=0}^{N-1} t_i \eta_i. $$ Thus, the differential is a linear isomorphism. By the Inverse Function Theorem, it follows that the image of $F$ contains a neighborhood $W$ of $1\in G$. In our situation, we take $\eta_i=Ad_{g^i}(\xi)$, $i=0,...,N-1$. Then the image of $F$ is the image of the product map $$ H_0\times ...\times H_{N-1}\to G, $$ $(h_0,...,h_{N-1})\mapsto h_0....h_{N-1}$.

Since $G$ is connected, the subset $W$ generates the entire group $G$. Hence, the subgroups $H_0,...,H_{N-1}$ generate $G$. But these subgroups are conjugates of $H$ under powers of $g$. Hence, $H$ and $g$ generate $G$.

Moishe Kohan
  • 111,854
  • This looks good. But do $H$ and $g$ generate $G$ as a monoid (not allowing $g^{-1}$)? – mr_e_man Dec 12 '24 at 14:43
  • @mr_e_man: Oh, sorry, I missed the fact that you are considering a monoid. This should not matter since for $g$ of infinite order one approximates negative powers of $g$ by positive powers and my proof is robust under small perturbation. Or one uses $g$ of finite order. But I will have to edit the argument. – Moishe Kohan Dec 12 '24 at 14:51
  • Also, is there a way to find the polynomials that define that "generic" subset? – mr_e_man Dec 12 '24 at 14:52
  • @mr_e_man: Yes, it amounts to vanishing of a certain determinant. I will spell it out when I edit the answer. – Moishe Kohan Dec 12 '24 at 15:14
  • Thanks in advance... – mr_e_man Dec 13 '24 at 16:27
-1

Let $Q$ be the $90^\circ$ rotation in $yz$-plane taking $(0,0,1)$ to $(0,1,0)$. Then $Q$ together with $SO(2)$, rotations in the $xy$-plane generate all of $SO(3)$. In what follows $G(3)$ denotes the subgroup generated by $Q$ and $SO(2)$,

First of all any rotation in the $xz$-plane can be obtained by conjugating a rotation in $SO(2)$ by $Q$. Now let $v$ be a point on the unit sphere with spherical coordinates $(1,\theta,\phi)$. Then a rotation through angle $\phi$ in the $xz$-plane takes $(0,0,1)$ to the point with spherical coordinates $(1,0,\phi)$. Then the rotation through angle $\theta$ in $SO(2)$ takes $(1,0,\phi)$ to $v$. Thus we have shown that there is a rotation $R$ in $G(3)$ which takes $(0,0,1)$ to any point $v$ in the unit sphere. Then we can obtain any rotation with radial axis $v$ by conjugating elements of $SO(2)$ by $R$. Hence $G(3)=SO(3)$.

If $n>4$ it is impossible for the set of all rotations within a given plane $P_1$ together with a single rotation in another plane $P_2$ to generate all of $SO(n)$. The reason is that any element of the resulting subgroup $G(n)$ has to fix all vectors in the orthogonal complement of $P_1+P_2$. Since we can find elements of $SO(n)$ which move any nonzero vector, we must have $G(n)\subsetneqq SO(n)$. I am not sure whether it may be true for $n=4$.

  • We already had one $A$ that works for $n=3$: $$A=\begin{bmatrix}0&0&1\1&0&0\0&1&0\end{bmatrix}$$ You've only given one more $A$ that works for $n=3$: $$A=\begin{bmatrix}1&0&0\0&0&1\0&-1&0\end{bmatrix}$$ What I wanted was a general test applying to any $A\in SO(3)$ (analogous to $\det A\neq0$ telling whether the columns of $A$ linearly generate the whole vector space). For example, "$A$ and $G(\theta)$ for $\theta\in\mathbb R$ generate $SO(3)$, if $A$ doesn't have $[0,0,1]^\top$ as an eigenvector" (can we prove this?). – mr_e_man Dec 09 '24 at 20:49
  • 1
    For $n>4$, I never said that $A$ must be a simple rotation, i.e. a planar rotation. E.g. we allow $$A=\begin{bmatrix}1&0&0&0&0\0&\cos\alpha&-\sin\alpha&0&0\0&\sin\alpha&\cos\alpha&0&0\0&0&0&\cos\beta&-\sin\beta\0&0&0&\sin\beta&\cos\beta\end{bmatrix}\in SO(5).$$ Sorry if my terminology was unclear. By "single rotation" I meant "single element of $SO(n)$". – mr_e_man Dec 09 '24 at 21:14