A geometric interpretation of the cross product

\( \def\U{ \vec u } \def\V{ {\color{orange}\vec v} } \def\W{ {\color{pink}\vec w} } \def\P{ {\color{red}\vec p} } \def\X{ {\color{grey}\vec x} } \def\VCrossW{ \V \times \W } \def\VolumeXVW{ \text{volume of the } (\X , \V, \W) \text{ parallelepiped } } \)

A summary, re-wording of: Cross products in the light of linear transformations from 3Blue 1 Brown. You'll definitely need to watch it several times, pick paper and pen to rephrase this reasoning with your own words. My take on the most important insights of the video is below.


In short this is a discussion about the equality below:

\[ (\V \times \W ) . \X = det(\X, \V, \W) \]

And we show with geometric interpretation that the result of the cross product \(\P = (\V \times \W ) \) is necessarily a vector perpendicular to the plane spanned by \(\V\),\(\W\) which norm equals the area of the parallelepiped formed by \(\V\),\(\W\)

Where lies the duality?



The result of the cross product is a dual vector / dual linear transformation.




The cross product \( \vec v \times \vec w= \vec p \) hides a mathematical duality, but not in the cross product operator itself: it is actually its resulting vector \( \vec p \) which holds a duality, it can be seen as a vector and a linear transformation. More precisely, let's trust the following result is true which shows \( \vec p \) is a linear transformation \( \mathbb R^3 \rightarrow \mathbb R\) that outputs the volume of a parallelogram:


\[ \P . \X = \VolumeXVW \]


In other word the dual vector \( \P \) transforms a point in space \( \X \) to a 1D scalar, such as this scalar equals the volume of the parallelepiped formed by \( (\X , \V, \W) \). We'll explain more about it further down.

Dot VS Cross:

The role of the cross product plays in the vector/transformation duality is to that of the dot product \( \vec a \, . \, \vec x = scalar \). Here the dual vector is \( \vec a\), its a vector and a transformation. The role of the dot product is to apply the dual transformation. The dot product is used to pass from a dual vector to a dual transformation.

3D cross product role in this type of duality is more remote, it produces a vector \( \vec a \) that can be interpreted as a dual vector / dual transformation.

Computational approach

Let's take for granted the computation of a 3D cross product \( \P = \V \times \W \). We don't know what does the operator \( \times \) do, except for the fact that you compute it as follows:

\[ \begin{array}{llll} (\VCrossW)_x & = & {\color{orange} V_y } {\color{pink} W_z } - {\color{orange} V_z } {\color{pink} W_y } \\ (\VCrossW)_y & = & {\color{orange} V_z } {\color{pink} W_x } - {\color{orange} V_x } {\color{pink} W_z } \\ (\VCrossW)_z & = & {\color{orange} V_x } {\color{pink} W_y } - {\color{orange} V_y } {\color{pink} W_x } \end{array} \]

We also take for granted the geometric interpretation of a 3x3 determinant (i.e the volume of the parallelepiped spanned by the basis vectors of the 3x3 matrix):

\[ \begin{array}{llll} & \P . \X & = & \VolumeXVW \\ \equiv & \P . \X & = & det(\X, \V, \W) \\ \end{array} \]

Now we can computationally show the link between the cross product operator and the volume. We Just need to develop the determinant to see that it matches our definition of the cross product:

\[ \begin{array}{llllllll} det \left [ \X, \V, \W \right ] & = & \begin{vmatrix} {\color{grey} X_x } & {\color{orange} V_x } & {\color{pink} W_x } \\ {\color{grey} X_y } & {\color{orange} V_y } & {\color{pink} W_y } \\ {\color{grey} X_z } & {\color{orange} V_z } & {\color{pink} W_z } \\ \end{vmatrix} \\ & = & ({\color{orange} V_y } {\color{pink} W_z } - {\color{orange} V_z } {\color{pink} W_y }) & {\color{grey} X_x } & - & ({\color{orange} V_x } {\color{pink} W_z } - {\color{orange} V_z } {\color{pink} W_x }) & {\color{grey} X_y } & + & ({\color{orange} V_x } {\color{pink} W_y } - {\color{orange} V_y } {\color{pink} W_x }) &{\color{grey} X_z } \\ & = & (\VCrossW)_x &{\color{grey} X_x } & + & (\VCrossW)_y &{\color{grey} X_y } & + & (\VCrossW)_z &{\color{grey} X_z } \\ & = & {\color{red} P_x }&{\color{grey} X_x } & + & {\color{red} P_y }&{\color{grey} X_y } & + & {\color{red} P_z }&{\color{grey} X_z } \\ & = & \P . \X \\ \end{array} \]

This shows the computation of a cross product produces a dual vector/transformation \({\color{red} \vec p}\) that itself compute the volume of a \( ({\color{grey} \vec x} , {\color{orange}\vec v}, {\color{pink}\vec w}) \) parallelepiped. Now, the missing piece is to interpret why \({\color{red} \vec p}\) is perpendicular to the plane formed by \( ({\color{orange}\vec v}, {\color{pink}\vec w}) \).





Geometric interpretation of \( {\color{red} \vec p} . {\color{grey} \vec x} = \text{volume of the } ({\color{grey} \vec x} , {\color{orange}\vec v}, {\color{pink}\vec w}) \text{ parallelepiped } \)





Let's now geometrically show that \( \P \) must be the result of the cross product \( \VCrossW \). We will show:

We will not rely on the definition of the cross product, however, we take for granted the following geometric interpretations:

Therefore, we start from the fact that \( det \left [ \X, \V, \W \right ] \) is the volume of \( (\X, \V, \W) \).





But, another way to obtain the volume of \( (\X, \V, \W) \) is to do:

\( \text{area of base} \times \text{ height } \)



More precisely:

\( \begin{array}{lll} & \text{Area of the parallelogram} (\V,\W) & \times & \text{height of the parallelepiped} (\X, \V, \W) \\ \equiv & Area(\V,\W) & \times & Height(\X, \V, \W) \end{array} \)



Now the crux lies on how we compute the height of the parallelogram. Let's \( \U \) be a unit vector perpendicular to \( \V, \W \). One way to get the height is to project \( \X \) onto \( \U \). We do the projection using the dot product:

\( \begin{array}{lll} Area(\V,\W) & . & (\U . \X) \\ Area(\V,\W) & . & \| \U \| \, \| \X \| \cos( \widehat{ \U \ \X } ) \\ Area(\V,\W) & . & \| \U \| \, \| \X \text{ projected onto } \U \| \\ \end{array} \)

!! But we can set \( Area(\V,\W) . \U = \P \) !!
which is equivalent to write:

\( \begin{array}{llllll} ( &Area(\V,\W) \ . & ( & \U & . & \X) ) \\ ( (&Area(\V,\W) \ . & & \U) & . & \X ) \\ ( & & \P & & . & \X ) \\ \end{array} \)



This shows \( \P \) is necessarily co-linear to \( \U \), in other words, \( \P \) is necessarily perpendicular to \( \V, \W \). Now what about the norm of \( \P \)? Well we can project \( \X \) indifferently onto \( \P \) or \( \U \) :




\( \begin{array}{llll} & = & \| \P \| & \, & \| \X \text{ projected onto } \P \| \\ & = & \| \P \| & \, & \| \X \| \cos( \widehat{ \X \ \P } ) \\ & = & \| \P \| & \, & \| \X \| \cos( \widehat{ \X \ \U } ) \\ & = & \| \P \| & \, & \| \X \text{ projected onto } \U \| \\ & = & Area(\V,\W) & \times & Height(\X, \V, \W) \end{array} \)



A complicated way to confirm it since we already showed:
\( \P = Area(\V,\W) . \U \)
and therefore:
\( \| \P \| = Area(\V,\W) . \| \U \| = Area(\V,\W) \)

going full circle:

\[ det([\X, \V, \W]) = \text{ area of base } \times \text{ height } = \text{ area of base } \times \U . \X = (\P.\X) \] For \((\P.\X)\) to respect the above equality, \( \P \) must be collinear to some unit vector \( \U \) perpendicular to \(\V, \W\) since it must represent the height of the parallelepiped. The length of \( \P \) must be equal to the area \( (\V, \W) \) for \( \P . \X \) to compute the volume of \( \X, \V, \W \). Finally, we already computationally demonstrated earlier that \( \P = \V \times \W \) implies \( det([\X, \V, \W]) = \P . \X \). This proves the geometrical properties of the cross product operator and its relation to the volume of some parallelepiped \( (\X, \V, \W) \)!



As short as possible summary

The volume of the \( (\X, \V, \W) \) parallelepiped = det[\(\X, \V, \W \)] = \( \P . \X \) = \( (\V \times \W) . \X \)

Computationally tinkering the formulation of the volume of \( (\X, \V, \W) \), we can uncover an operator '\( \times \)' which we name "cross product":

\( det([\X, \V, \W]) \\ = \\ (V_y \ W_z - V_z \ W_y) \ X_x + \\ (V_z \ W_x - V_x \ W_z) \ X_y + \\ (V_x \ W_y - V_y \ W_x) \ X_z \\ \\ = \\ (V \times W)_x \ X_x + \\ (V \times W)_y \ X_y + \\ (V \times W)_z \ X_z \\ \\ = \\ P_x \ X_x + \\ P_y \ X_y + \\ P_z \ X_z \\ \)

Therefore we have:

\( P_x = (\V \times \W)_x \\ P_y = (\V \times \W)_y \\ P_z = (\V \times \W)_z \\ \)

So there is some weird operator '\( \times \)' such as the above relationship holds, this does not give us (yet) geometrical insight.



So far mathematically we have:

\( \P . \X \\ = (\V \times \W) . \X \\ = det([\X, \V, \W]) \\ \)

Now geometrically:

\( = det([\X, \V, \W]) \\ = \text{ volume of } (\X, \V, \W) \\ = \text{ Area of the parallelogram } (\V, \W) \times \text{ height of the parallelepiped } (\X, \V, \W) \\ = \text{ Area of the parallelogram } (\V, \W) \times (\text{unit vector perpendicular to }(\V, \W)) . \X \\ = P . X \\ \)

Therefore:

\( \P = \text{ Area of the parallelogram } (\V, \W) \times (\text{Unit vector perpendicular to } (\V, \W)) \)





After thoughts

What makes this piece of insight really hard to grasp is that it feels like a recursive reasoning (chicken and egg problem). You could have popped from your magical hat the definition of a "cross product" and showed how it relates to the volume of \( (\X, \V, \W) \), but you can do the opposite as well, start from the volume/determinant and find a related operator that you call a "cross product". In addition to that the video also links a third concept: duality between vectors and linear transformations. This packs a lot of information where 3 concepts (cross product; determinant/volume; and duality) are linked together. What's more is that you can unfold a line of thought starting from either of these 3 ideas. Since a video is most suited for linear demonstration this explains why it's best to watch is several time and you cannot avoid struggling a bit and re-writing various ways the reasoning behind it to fully grasp it.

No comments

(optional field, I won't disclose or spam but it's necessary to notify you if I respond to your comment)
All html tags except <b> and <i> will be removed from your comment. You can make links by just typing the url or mail-address.
Anti-spam question: