Intuition behind the Triple Product identity

I can't speak as to the ease of remembering the form of the triple product identity, but I believe it's a little bit easier (and I mean a little) to gain some geometric intuition if one is familiar with geometric algebra.

(Forgive me if my answer seems a bit sparse on details. I tried be as verbose as possible without writing an entire essay on geometric algebra.)

Geometric algebra is simply linear algebra equipped with a "geometric product" that can be defined as thus: $$ ab=a\cdot b+a\wedge b. $$ The first term is recognized as the inner product, while the second term is Grassmann's outer, or "wedge", product. The wedge product is anti-commutative and results in a new algebraic object called a "bivector", a directed area representing the plane spanned by its multiplicands. Since the cross product results in the normal vector to this very plane, this creates a dual relationship between the wedge and cross products which allows us to reformulate the triple product identity from

$$ a\times(b\times c)=(a\cdot c)b-(a\cdot b)c $$

to (omitting details)

$$ a\cdot (b\wedge c)=(a\cdot b)c-(a\cdot c)b. $$

What we'll show is that this triple product identity is indicative of bivectors being generators of rotations.

As before, we can clearly see that the triple product results in a vector lying in the plane spanned by $b$ and $c$. If we decompose $a$ into components perpendicular and parallel to the plane, we obtain

$$ a\cdot(b\wedge c)=(a_\parallel+a_\perp)\cdot (b\wedge c)=a_\parallel\cdot(b\wedge c), $$

where we've used the fact that, since $a_\perp$ is orthogonal to every vector in the plane, $a_\perp\cdot(b\wedge c)=0$.

Accordingly, this changes the identity to

$$ a\cdot (b\wedge c)=(a_\parallel\cdot b)c-(a_\parallel\cdot c)b. $$

Now, if we take the inner product of this with $a_\parallel$, it yields

$$ a_\parallel\cdot[a\cdot(b\wedge c)]=(a_\parallel\cdot b)(a_\parallel\cdot c)-(a_\parallel\cdot c)(a_\parallel\cdot b)=0. $$

Thus, the triple product vector is orthogonal to the projection of $a$ into the plane. This means that, in addition to projecting $a$ onto the bivector and scaling its length, the triple product rotates it by exactly ninety degrees!

To gain further insight as to why this is so, we must show that bivectors behave like the unit imaginary $i$ from complex algebra, which is also a generator of ninety degree rotations.

$$ ab=a\cdot b+a\wedge b $$

$$ ba=b\cdot a+b\wedge a=a\cdot b-a\wedge b $$

$$ (ab)(ba)=(a\cdot b)^2-(a\wedge b)^2 $$

To evaluate the geometric product on the left side, we first use the fact that the wedge product is anti-commutative:

$$ b\wedge b=-b\wedge b \Rightarrow b\wedge b=0. $$

Therefore, the geometric product of any vector with itself is just the square of its norm.

$$ bb=b\cdot b+b\wedge b=b\cdot b=|b|^2. $$

Our equation then becomes

$$ |a|^2|b|^2=|a|^2|b|^2\cos^2\theta-(a\wedge b)^2. $$

Rearranging, we finally obtain

$$ (a\wedge b)^2=|a|^2|b|^2(\cos^2\theta-1)=-|a|^2|b|^2\sin^2\theta. $$

So indeed, the square of a bivector is a negative scalar, just like the unit imaginary. And also like the unit imaginary, this make bivectors generators of rotations!


I always had a difficulty remembering this identity, so I took some time to figure out the following tips to help myself:

$A\times (B\times C) = (A\cdot C)B-(A\cdot B)C$, and $(A\times B)\times C = -(C\cdot B)A+(C\cdot A)B$

  1. The result is a linear combination of the two vectors taking cross product first.

  2. Each factor consists of all three vectors.

  3. The vector in the middle (i.e. $B$ in the example) always has a positive coefficient ( without considering the effect of dot product).

Hope this helps!


I know this answer is $6$ years late, but I just thought I'd share another perspective on the vector triple product. So we want to show that:$$\vec{a}\times(\vec{b}\times\vec{c})=(\vec{a}\cdot\vec{c})\vec{b}-(\vec{a}\cdot\vec{b})\vec{c}$$ Since this is just for the sake of conveying intuition, begin by assuming that the vector $\vec{b}$ lies purely along the $x$-axis (i.e. $\vec{b}=b_{1}\hat{i}$). Then let $\vec{c}$ lie somewhere in the $xy$ plane (i.e. $\vec{c}=c_{1}\hat{i}+c_{2}\hat{j}$). Finally, let $\vec{a}$ lie anywhere (i.e. $\vec{a}=a_{1}\hat{i}+a_{2}\hat{j}+a_{3}\hat{k}$). Intuitively one can just rotate this whole set-up and have the same basic dynamics play out, so it's generalizable (but again, this is just for intuition purposes). Now we make a few simple but crucial realizations: the $\hat{i}$-component of $\vec{c}$ (i.e. $c_{1}$) actually has no influence on the cross product $\vec{a}\times(\vec{b}\times\vec{c})$, since the (absolute value of the) signed area of the parallelogram spanned by $\vec{b}$ and $\vec{c}$ (which represents $||\vec{b}\times\vec{c}||$) only depends on the length of the parallelogram's base (i.e. $||\vec{b}||=|b_{1}|$) and the parallelogram's height (i.e. $|c_{2}|$). Furthermore, you can intuit that the cross product's direction also doesn't depend on what $c_{1}$ is. A similar line of reasoning allows us to neglect the $\hat{k}$-component of $\vec{a}$ (i.e. $a_{3}$ has no effect on $\vec{a}\times(\vec{b}\times\vec{c})$).

Therefore, for the sake of intuition, let us set $c_{1}=a_{3}=0$. As a result, we now have $\vec{b}$ lying purely along the $x$-axis, $\vec{c}$ lying orthogonal to $\vec{b}$ along the $y$-axis, and $\vec{a}$ lying somewhere on the $xy$ plane. In fact, for the moment, let us go even further and pretend $\vec{b}=\hat{i}$ (i.e. $b_{1}=1$) and $\vec{c}=\hat{j}$ (i.e. $c_{2}=1$). We know, out of context, that any vector $\vec{a}$ in $\mathbb{R^2}$ can be represented as:$$\vec{a}=(\vec{a}\cdot{\hat{i}})\hat{i}+(\vec{a}\cdot{\hat{j}})\hat{j}$$ When it is the case then that $\vec{b}=\hat{i}$ and $\vec{c}=\hat{j}$, then we have $\vec{b}\times\vec{c}=\hat{k}$. Then, from basic cross product intuition, we see that the vector $\vec{a}\times(\vec{b}\times\vec{c})$ will be proportional to a $90$-degree clockwise rotation of vector $\vec{a}$ (when viewed looking at the $xy$ plane from the head of vector $\vec{b}\times{\vec{c}}$). Furthermore, the magnitude of this cross product vector is equal to the magnitude of vector $\vec{a}$ (think of the rectangle's area). In this case, because $\vec{b}\times{\vec{c}}=\hat{k}$, the appropriate linear transformation that accomplishes the $90$-degree clockwise rotation is: $$\begin{bmatrix}0&1\\-1&0\\\end{bmatrix}$$ (where we have pretended that all our vectors are in $\mathbb{R^2}$ instead of $\mathbb{R^3}$, though a similar rotation matrix exists for the $\mathbb{R^3}$ case). Thus: \begin{align}\vec{a}\times(\vec{b}\times\vec{c}) &=\begin{bmatrix}0&1\\-1&0\\\end{bmatrix}\begin{bmatrix} \vec{a}\cdot{\hat{i}}\\ \vec{a}\cdot{\hat{j}}\\ \end{bmatrix} \\ & = \begin{bmatrix}\vec{a}\cdot{\hat{j}}\\-\vec{a}\cdot{\hat{i}}\\ \end{bmatrix}\\&=(\vec{a}\cdot{\hat{j}})\hat{i}-(\vec{a}\cdot{\hat{i}})\hat{j}\\&=(\vec{a}\cdot\vec{c})\vec{b}-(\vec{a}\cdot\vec{b})\vec{c}\end{align} Now let us generalize a bit so that instead we have $\vec{b}=b_{1}\hat{i}$ and $\vec{c}=c_{2}\hat{j}$. First, suppose that $b_{1}$ is positive. Then if $c_{2}>0$ as well, we have (by the exact same logic as above): $$\vec{a}=\biggr(\vec{a}\cdot{\frac{\vec{b}}{||\vec{b}||}}\biggr)\frac{\vec{b}}{||\vec{b}||}+\biggr(\vec{a}\cdot{\frac{\vec{c}}{||\vec{c}||}}\biggr)\frac{\vec{c}}{||\vec{c}||}$$ But this time, the magnitude of the cross product $||\vec{a}\times(\vec{b}\times\vec{c})||$ will be the product of all $3$ of their magnitudes (can you see why?). So we can rotate vector $\vec{a}$ by $90$-degrees clockwise and then scale it up by $||\vec{b}||||\vec{c}||$ after (or before, since it's linear) the rotation: \begin{align}\vec{a}\times(\vec{b}\times\vec{c})\\&=||\vec{b}||||\vec{c}||\begin{bmatrix}0&1\\-1&0\\\end{bmatrix}\begin{bmatrix}\vec{a}\cdot{\frac{\vec{b}}{||\vec{b}||}}\\ \vec{a}\cdot{\frac{\vec{c}}{||\vec{c}||}}\\ \end{bmatrix}\\&=||\vec{b}||(\vec{a}\cdot{\vec{c}})\hat{i}-||\vec{c}||({\vec{a}\cdot{\vec{b}}})\hat{j}\\&=(\vec{a}\cdot\vec{c})\vec{b}-(\vec{a}\cdot\vec{b})\vec{c}\end{align} I'll leave the rest of the cases as an exercise to the reader.