# Scalar triple product of quaternion scalar parts

I'm reading this paper about quaternion and 3D rotation with unit quaternions,

\begin{eqnarray*} && \dot{q} = (q, {\bf q}) \\ && \dot{r} = (r, {\bf r}) \\ && \dot{r'} = \dot{q}\dot{r}\dot{q}^* \\ && {\bf r'} =(q^2 - {\bf q} \cdot {\bf q}){\bf r} + 2q({\bf q} \times {\bf r}) + 2({\bf q} \cdot {\bf r}){\bf q}\\ && {\bf r'}={\bf r} + 2q({\bf q} \times {\bf r}) + 2{\bf q} \times ({\bf q} \times {\bf r})\\ && {\bf r'_1} \cdot {\bf r'_2} = {\bf r_1} \cdot {\bf r_2} \\ \end{eqnarray*}

on the page 3 it says "Finally, we can show that the operation preserves triple products" and suggests

\begin{eqnarray*} && [{\bf r'_1}, {\bf r'_2}, {\bf r'_3}] = [{\bf r_1}, {\bf r_2}, {\bf r_3}] \end{eqnarray*}

but I couldn't figure out how it could reach there. Simply putting them in the equation at the top of the same page about r' yields not very useful results. I suppose it's scalar triple product, what's the reason behind it?

• Perhaps you should include more details about the construction here, which will protect this question from link rot. – Travis Willse Jul 8 '15 at 1:48
• Thanks, added all equations! – RyuK Jul 8 '15 at 2:09
• I have often wondered how computer scientists and engineers ever learn anything from such articles... That they can take such a beautiful topic and make it so mystifyingly confusing has always amazed me... – rschwieb Jul 8 '15 at 2:22
• Also, the statement simply isn't true as written; in general we have $$\def\bfq{{\bf q}}\def\bfr{{\bf r}} \bfr_1' \cdot \bfr_2' = (q^2 + \bfq \cdot \bfq)^2 \bfr_1 \cdot \bfr_2,$$ that is, part of the first block of equations only holds for unit quaternions. – Travis Willse Jul 8 '15 at 7:34
• True, fixed the first sentence, "3D rotation with unit quaternions" – RyuK Jul 8 '15 at 9:26

The bigger picture is this: Since the quaternion norm $|\cdot|$ is multiplicative, that is, because $$|\dot{q}_1 \dot{q}_2| = |\dot{q}_1| |\dot{q}_2|,$$ the set of unit quaternions forms a group, which we usually denote $SU(2)$ (a special unitary group) or sometimes $Spin(3)$ (a spin group). As a topological space, the set of unit quaternions is just the $3$-sphere $\Bbb S^3 \subset \Bbb R^4 \cong \Bbb H$.
Now, this group acts (linearly) on the space $\Bbb H$ of quaternions via the conjugation operation, $\ast$, that is by the $'$ map defined in the question: $$\dot{r}' = \dot{q} \ast \dot{r} := \dot{q} \dot{r} \dot{q}^*.$$ We say that $\Bbb H$ is a (real) representation of $SU(2)$. If we substitute $\dot{r} = (r, {\bf 0}) + (0, \bfr)$ on both sides of the equation, we find that the conjugation interacts nicely with this decomposition. The l.h.s. becomes $$\dot{q} \ast ((r, {\bf 0}) + (0, \bfr)) = \dot{q} (r, {\bf 0}) \dot{q}^* + \dot{q} (0, \bfr) \dot{q}^*.$$ Now, the scalar $(r, {\bf 0})$ commutes with everything in $\Bbb H$, so the first term on the right is $$\dot{q} (r, {\bf 0}) \dot{q}^* = (r, {\bf 0}) \dot{q} \dot{q}^* = (r, {\bf 0}).$$ In other words, the action doesn't affect the scalar part of $r \in \Bbb H$ at all, it only "sees" the vector part. Thus, $SU(2)$ actually acts on the space $\Bbb R^3$ of vectors, via $$\dot{q} \star \bfr := \pi(\dot{q} \ast (0, \bfr)),$$ where $\pi: \Bbb H \to \Bbb R^3$ is just the map that picks out the vector component of a quaternion. We say that $\Bbb H$ decomposes as an $SU(2)$-representation as $\Bbb R \oplus \Bbb R^3$.
We know from the above that this action preserves the inner product, but the only linear maps that preserve the inner product are the rotations and reflections, so this action defines a map (in fact, a group homomorphism) $\Pi: SU(2) \to O(3)$. Since $SU(2)$ is topologically a $3$-sphere and hence connected, the image of this map is contained in the component containing the identity rotation, so we can regard $\Pi$ as a map $SU(2) \to SO(3)$; recall that $SO(3)$ is precisely the group of rotations of $\Bbb R^3$. (It turns out that this map is surjective and $2:1$; we say it is a double covering.) Thus, for every $\dot{q} \in SU(2)$ there is a rotation $A := \Pi(\dot{q}) \in SO(3)$ such that $\dot{q} \star \bfr = A \bfr$ for all $\bfr \in \Bbb R^3$.
On the other hand, $SO(3)$ is also precisely the group of linear transformations that preserve the cross product on $\Bbb R^3$, that is, the group of $B \in GL(3, \Bbb R)$ such that $B(\bfr_1 \times \bfr_2) = (B \bfr_1) \times (B \bfr_2)$ for all $\bfr_1, \bfr_2 \in \Bbb R^3$. Thus, the action of $SU(2)$ preserves it too: $$\dot{q} \star (\bfr_1 \times \bfr_2) = (\dot{q} \star \bfr_1) \times (\dot{q} \star \bfr_2).$$
So, the action of a unit quaternion on $\Bbb R^3$ preserves both the dot product and the cross product, but the triple product is built out of these, and so the action preserves it too: \begin{align} [\dot{q} \star \bfr_1, \dot{q} \star \bfr_2, \dot{q} \star \bfr_3] &= (\dot{q} \star \bfr_1) \cdot [(\dot{q} \star \bfr_1) \times (\dot{q} \star \bfr_2)] \\ &= (\dot{q} \star \bfr_1) \cdot (\dot{q} \star (\bfr_2 \times \bfr_3)) \\ &= \bfr_1 \cdot (\bfr_2 \times \bfr_3) \\ &= [\bfr_1, \bfr_2, \bfr_3] . \end{align}
Remark We can also write the triple product as the map $$[\bfr_1, \bfr_2, \bfr_3] := \det \pmatrix{\bfr_1 & \bfr_2 & \bfr_3},$$ where the matrix on the r.h.s. is the one produced by adjoining the vectors $\bfr_a$. In particular, the group of linear transformations of $\Bbb R^3$ preserving the determinant (and hence the triple product) is $SL(3, \Bbb R)$, which is a much larger group than $SO(3)$, and so the rotations are not nearly the only linear maps that do so.