The "Correct" Way to Do Cross Products
So, the way vector products ("cross products") are taught, one uses the
quaternions \(\mathbb{H}\), takes the purely imaginary part, \(\vec{v}
= v_1 \hat{i} + v_2 \hat{j} + v_3 \hat{k}\) and \(\vec{w} = w_1 \hat{i}
+ w_2 \hat{j} + w_3 \hat{k}\), takes the quaternion product, then takes
the purely imaginary part.
This is not quite correct IMHO due to the "pseudo-vector problem":
the cross-product of two vectors does not transform the same under the
transformation \(P(\vec{v}) = -\vec{v}\) as its constituent vectors do
-- \(P(\vec{v} \times \vec{w}) = P(\vec{v}) \times P(\vec{w}) =
-\vec{v} \times -\vec{w} = \vec{v} \times \vec{w}\).
The correct way is to take \(\vec{v}^{\flat} \wedge \vec{w}^{\flat}\),
an alternating 2-tensor ("2-form at a point"), and then take
\([^*(\vec{v}^{\flat} \wedge \vec{w}^{\flat})]^{\#}\) to push the
alternating 2-tensor back to a vector if necessary.
In this way, we have a vector cross a vector is a pseudo-vector, a
vector cross a pseudo-vector or a pseudo-vector cross a vectos is a
vector, and a pseudo-vector cross a pseudo-vector is a pseudo-vector.
Additionally, the correct way to take curl \(\vec{\nabla} \times
\vec{A}\) is \(d(\vec{A}^{\flat})\), then take
\(\{^*[d(\vec{A}^{\flat})]\}^{\#}\) to push the 2-form back to a vector
field if necessary. Note that the curl of a vector field is a
pseudo-vector field and the curl of a pseudo-vector field is a vector
field.