This post will show that

quaternion product = cross product – dot product.

First, I’ll explain what quaternions are, then I’ll explain what the equation above means.

The complex numbers are formed by adding to the real numbers a special symbol *i* with the rule that *i*^{2} = -1. The quaternions are similarly formed by adding to the real numbers *i*, *j*, and *k *with the requirement that

*i*^{2} = *j*^{2} = *k*^{2} =* ijk* = -1.

A quaternion is a formal sum of a real number and real multiples of the symbols *i*, *j*, and *k*. For example,

*q* = *w* + *xi* + *yj* + *zk*.

In this example we say *w* is the real part of *q* and *xi* + *yj* + *zk* is the vector part of *q*, analogous to the real and imaginary parts of a complex number.

The quaternion product of two vectors (*x*, *y*, *z*) and (*x*´, *y* ´, *z*´) is the product of *q* = *xi* + *yj* + *zk* and *q*‘ = *x’i* + *y’j* +* z’k* as quaternions. The quaternion product *qq*´ works out to be

– (*xx*´ + *yy*´ + *zz*´) + (*yz*´ – *zy*´)*i* +(*zx*´ – *xz*´)*j* + (*xy*´ – *yx*´)*k*

The real part is the negative of the dot product of (*x*, *y*, *z*) and (*x*´, *y*´, *z*´) and the vector part is the cross product of (*x*, *y*, *z*) and (*x*´, *y*´, *z*´).

This relationship is an interesting bit of algebra on its own, but it is also **historically important**. In the 19th century, a debate raged regarding whether quaternions or vectors were the best way to represent things such as electric and magnetic fields. The identity given here shows how the two approaches are related.

**Footnote**: To multiply two quaternions, you need to know how to multiply *i*, *j*, and *k* by each other. It is not immediately obvious, but you can derive everything from *i*^{2} = *j*^{2} = *k*^{2} =*ijk* = -1. For example, start with* ijk* = -1 and multiply both sides on the right by *k*. So *ijk*^{2} = –*k*, and since *k*^{2} = -1, *ij* = *k*. Similar manipulations show *jk* = *i* and *ki* = *j*.

Next, (*jk*)(*ki*) = *ij*, but it also equals *jk*^{2}*i* = –*ji*, so *ij* = –*ji* = *k*. Similarly *kj* = –*jk* = –*i* and *ik* = –*ki* = –*j* and this completes the multiplication table for *i*, *j*, and *k*.

The way to remember these products is to imagine a cycle: *i* -> *j* -> *k* -> *i*. The product two consecutive symbols is the next symbol in the cycle. And when you traverse the cycle backward, you change the sign.