I'll start with a physical example. Let's say we have the angular velocity (in 3D euclidean space with orthonormal basis spanning it), which has the bivector representation $$\Omega = \omega_x \mathbf e_{yz} + \omega _y \mathbf e_{xz} + \omega_z \mathbf e_{xy}$$ for unit bivectors $\mathbf e_{yz}, \mathbf e_{xz}, \mathbf e_{xy}$,

and the skew symmetric matrix representation $$\Omega = \begin{bmatrix} 0 & -\omega_z & \omega_y \\ \omega_z & 0 & -\omega_x \\ -\omega_y & \omega_x & 0 \end{bmatrix}$$

The hodge dual of this bivector is the axial vector $$\star\Omega = \boldsymbol\omega = \omega_x\mathbf e_x + \omega _y \mathbf e_{y} + \omega_z \mathbf e_{z}$$

When we calculate the velocity of a particle with a position vector $\mathbf r = r_x\mathbf e_x + r_y \mathbf e_{y} + r_z \mathbf e_{z}$ and angular velocity $\Omega$, then the velocity of the particle is said to be given by $$\mathbf v = \Omega \mathbf r \iff \mathbf v = \boldsymbol\omega\times \mathbf r$$

What I don't understand is what the operation between $\Omega$ and $\mathbf r$ is.

I understand that the hodge dual of a wedge product is a cross product, which gives us the relationship that $$\text{vector}\wedge\text{vector} = \text{bivector} \iff \text{vector}\times \text{vector}=\text{axial vector}$$

However, there is also the relationship that $$\text{vector}\times \text{axial vector} = \text{vector}$$ which seems to be the relationship here. Now, if we replace the axial vector with the actual bivector (as seen in the angular velocity example above), what is the operation between the vector and the bivector??? $$ \text{bivector } ??? \text{ vector} = \text{vector}$$

Obviously, when we write the bivector as a skew symmetric matrix, we're just performing regular matrix multiplication. However, if we're writing it as just the sum of unit bivectors, what is this operation??

$$\langle\omega_x \mathbf e_{yz} + \omega _y \mathbf e_{xz} + \omega_z \mathbf e_{xy}\rangle \text{ ??? } \langle r_x\mathbf e_x + r_y \mathbf e_{y} + r_z \mathbf e_{z} \rangle$$

I initially thought it might be a wedge product, but quickly realized that it would just be wedging a bivector and a vector which returns a trivector, not a regular vector that I want. I can't think of any other operation that would return a vector between a bivector and a vector.

Any help?


  • $\begingroup$ The operation between $\Omega$ and $\mathbf{r}$ is the ordinary matrix multiplication. You can check that this amounts to calculating the cross product $\omega\times\mathbf{r}\,.$ $\endgroup$
    – Kurt G.
    Commented Sep 17, 2023 at 7:59
  • $\begingroup$ @KurtG. Yes, i have stated this in my question if we write the bivector is in the form of a skew symmetric matrix. However, if we just write the bivector in terms of basis bivectors, how do I make sense of this operation? $\endgroup$
    – Max0815
    Commented Sep 17, 2023 at 8:00
  • $\begingroup$ In the vocabulary of geometric algebra, it would be the geometric product. Would it not? $\endgroup$
    – user317176
    Commented Sep 17, 2023 at 8:00
  • $\begingroup$ @user317176 Isn't a geometric product for two vectors though? $\mathbf a \mathbf b = \mathbf a \cdot \mathbf b + \mathbf a \wedge \mathbf b$. Here, it's between a bivector and a vector, not between two vectors. $\endgroup$
    – Max0815
    Commented Sep 17, 2023 at 8:02
  • 3
    $\begingroup$ @KurtG. It says nowhere that the wedge and cross products are "the same thing" (at least I don't see it). It's the same on vectors insofar as $a\times b = \star(a\wedge b)$. Now if $a = \star\Omega$ then $$(\star\Omega)\wedge b=\star(\Omega\mathbin{\lfloor}b)$$ where ${\lfloor}$ is the interior product imported via the isomorphism $V\cong V^*$ from the metric. Thus we have $$(\star\Omega)\times b=(\star^2)\Omega\mathbin{\lfloor}b.$$ This has an immediate geometric interpretation: project $b$ onto the plane represented by $\Omega$ and then take its orthogonal complement within that plane. $\endgroup$ Commented Sep 17, 2023 at 16:04

2 Answers 2


It is 'almost' the interior product (not to be confused with the inner product, which will also play a role, hence the ‘almost’). In general, suppose $V$ is a real vector space, and you have integers $0\leq k\leq p$. Given a $p$-vector $v$ (i.e $v\in \bigwedge^pV$) and a $k$-covector $\alpha$ (i.e $\alpha\in\bigwedge^k(V^*)$), one can define a $(p-k)$-vector $\iota_{\alpha}v\equiv\alpha\,\lrcorner\, v\in \bigwedge^{p-k}V$, and the result is a bilinear function of $(\alpha,v)$. Usually, one flips the role of $V$ and $V^*$. Now if you have an inner product, then you can establish an isomorphism between $\bigwedge^k(V^*)$ and $\bigwedge^kV$, so rather than requiring $\alpha$ to be a $k$-covector, you can simply work with a $k$-vector.

I don’t feel like going full general, so I’ll just tell you how things work here. Let $(V,\langle\cdot,\cdot\rangle)$ be an inner product space, $\xi\in V$ a given vector (i.e we’re taking $k=1$) and suppose you have $p$ many vectors $v_1,\dots,v_p\in V$. Then, once you unwind the mumbo jumbo, we can define the interior product $\xi\,\lrcorner\,(v_1\wedge\cdots\wedge v_p)$, and it will equal \begin{align} \xi\,\lrcorner\,(v_1\wedge\cdots\wedge v_p)&=\sum_{j=1}^p(-1)^{j-1}\langle\xi,v_j\rangle\,v_1\wedge\cdots\wedge\widehat{v_j}\wedge \cdots\wedge v_p. \end{align} In other words, you run through $v_1\wedge\cdots\wedge v_p$, and starting with a positive sign, delete the $v_j$ and replace it instead with the number $\langle\xi,v_j\rangle$. So, from a $p$-vector, we have converted it into a $(p-1)$-vector. Btw, the ‘ordering’ isn’t really important. I could just as well define a new operation $\llcorner$ which acts like $(v_1\wedge\cdots\wedge v_p)\,\llcorner\,\xi:= \xi\,\lrcorner\,(v_1\wedge\cdots\wedge v_p) $. In particular, when $p=2$, we have for vectors $\xi,v,w\in V$, \begin{align} \xi\,\lrcorner \,(v\wedge w)\equiv (v\wedge w)\,\llcorner\,\xi =\langle\xi,v\rangle w-\langle\xi,w\rangle v.\label{1}\tag{$*$} \end{align}

So, anyway now with your angular velocity bivector (I’m pretty sure you have a typo in its definition) and position vector, you can play this game ($p=2,k=1$) to produce a vector $\Omega\,\llcorner\,\mathbf{r}$: \begin{align} \Omega\,\llcorner\,\mathbf{r} &= (\omega_x\,e_y\wedge e_z+\omega_y\,e_z\wedge e_x+\omega_z\,e_x\wedge e_y)\,\llcorner\,(r_xe_x+r_ye_y+r_ze_z). \end{align} Now, just open up the brackets (we can do this because as I mentioned above, the interior product is bilinear). You’ll get a total of $9$ interior products to compute (as you’d expect when opening up a bracket of 3$\times$ 3 terms). For each interior product of a bivector with a vector, we produce $2$ terms, as in \eqref{1}. Fortunately, many of these terms vanish due to orthonormality of $\{e_x,e_y,e_z\}$. We end up with the expected formula for the velocity.

But, note also that the cross product of two vectors in $\Bbb{R}^3$ (or more generally, an oriented 3-dimensional inner-product space) is $v\times w=\star(v\wedge w)$. So, in the case of angular velocity, you have $\omega\times r=\star(\omega\wedge r)=\star((\star\Omega)\wedge r)$.

  • $\begingroup$ Icic :D tysm xdd $\endgroup$
    – Max0815
    Commented Sep 17, 2023 at 22:51

$ \newcommand\proj[1]{\langle#1\rangle} \newcommand\lcontr{\mathbin\rfloor} \newcommand\rcontr{\mathbin\lfloor} $peek-a-boo's answer is good, but because geometric algebra (GA) is mentioned in the comments I wanted to show how that fits in here. The geometric product is not just a product between vectors; in fact, what I would say defines GA is the viewpoint that the geometric product is a product between arbitrary multivectors. More precisely, for any Clifford algebra over a field of characteristic not 2 there is a canonical isomorphism with the exterior algebra; GA is just the viewpoint of taking this isomorphism seriously, and the geometric product is just the Clifford product applied to the exterior algebra via the aforementioned isomorphism.

Euclidean GA is where our geometric product is the Clifford product associated with the standard inner product. In 3D we can choose a right-handed, unit pseudoscalar $I$; this means that $|I^2| = 1$ and more over $I = e_1e_2e_3$ where $e_1,e_2,e_3$ is the standard basis. "Pseudoscalar" means a top-dimension simple multivector; in this case it means "3-vector". The Hodge star is precisely $$ \star X = \widetilde XI $$ for any multivector $X$ and where $\widetilde X$ is reversal, the antiautomorphism which is the identity on vectors and reverses all products.

If $A_s, B_t$ are respectively an $s$-vector and a $t$-vector, then there are two (threeish) derived products that play a central role: $$ A_s\wedge B_t = \proj{A_sB_t}_{s+t},\quad A_s\lcontr B_t = \proj{A_sB_t}_{t-s},\quad A_s\rcontr B_t = \proj{A_sB_t}_{s-t}. $$ The operation $\proj\cdot_k$ is us using the exterior algebra structure to project onto $k$-vectors (in GA parlance "the grade $k$ part"). By convention this yields 0 if $k < 0$. The notation $\wedge$ is no deceit, it is precisely the exterior product. The other two operations are the left and right contractions, precisely the same that peek-a-boo talks about. They are essentially identical: $$ A_s\rcontr B_t = \widetilde{\widetilde B_t\lcontr\widetilde A_s} $$ though using both makes notation nicer.

Now note that $A_sI$ and $IA_s$ are $(n-s)$-vectors ($n$ the dimension of the underlying vector space). This together with the associativity of the geometric product makes clear the following duality $$ (IA_s)\wedge B_t = \proj{IA_sB_t}_{n-s+t} = I\proj{A_sB_t}_{n-(n-s+t)} = I\proj{A_sB_t}_{s-t} = I(A_s\rcontr B_t). $$ Now noting for vectors $a, b$ and when $n=3$ that $$ a\times b = \star(a\wedge b) = (\widetilde{a\wedge b})I = -(a\wedge b)I = (a\wedge b)I^{-1} $$ and that $I$ is in the center of the algebra because 3 is odd, we see for a bivector $\Omega$ $$ (\star\Omega)\times b = I^{-1}[(I\widetilde\Omega)\wedge b] = -I^{-1}I(\Omega\rcontr b) = b\lcontr\Omega. $$

  • $\begingroup$ thank you so much for this addendum :D $\endgroup$
    – Max0815
    Commented Sep 17, 2023 at 22:50
  • $\begingroup$ $|I²| = 1$ should be $|I|² = 1$, correct? $\endgroup$ Commented Sep 18, 2023 at 10:31
  • $\begingroup$ @MichaWiedenmann No, it is correct as is. $I^2$ is a scalar, and I don't want to have to define a multivector magnitude in this post. $\endgroup$ Commented Sep 18, 2023 at 14:07

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .