Hodge dual computations#

by Stéphane Haussler

Warning

Draft

In this page, I present a straightforward algorithmic method to calculate the inner product of k–vectors (respectively k–forms). While my article on Hodge duality fundamentals provides geometric intuition, the discussion here provides an alternative approach to compute both the inner product of k–forms and the Hodge dual of k–forms, with a simple algorithmic method using the interior product \(⌟\).

This method might be non-standard, and I have not investigated whether it is established. However it certainly works as I intuitively expect it should and provides fast and direct computations.

The following assumes a solid understanding of the exterior product and Élie Cartan’s differential forms, as well as knowledge of how to apply the interior product \(⌟\).

The top-dimensional differential form is called the pseudo-scalar. Specifically, the pseudo-scalar is:

  • \(dx ∧ dy ∧ dz\) in 3D–Euclidean space, and

  • \(dt ∧ dx ∧ dy ∧ dz\) in 4D–Minkowski space.

The term pseudo-scalar is chosen because the Hodge dual of these top-dimensional differential forms are scalars. They are dual to scalar, but do not behave like scalars.

Inner product on k–froms#

Let us first establish a common foundation. Recall that the inner product of k–vectors is equal to that of k–forms. For basis vectors and covectors, the inner product is the metric. In flat spacetime, this yields the Minkowski metric \(η\):

\[∂_μ · ∂_ν = dx^μ · dx^ν = η^{μν} = η_{μν}\]

Considering basis vectors \(∂_ν\), dual covectors \(dx^μ\) are defined as:

\[dx^μ \left( ∂_ν \right) = δ^μ_ν\]

Where \(δ^μ_ν\) is the kronecker delta.

The interior product is an operation between a vector and a form. It consist of rearanging the form to bring the corresponding covector to the front, and then apply the vector to that front slot. This operation transforms a k–form to a (k-1)–form. For example:

\[\newcommand{\⌟}{\:⌟\:} ∂_y \⌟ dx ∧ dy ∧ dz = ∂_y \⌟ (- dy ∧ dx ∧ dz) = - dy \left( ∂_y \right) ∧ dx ∧ dz = - dx ∧ dz\]

Here, we have applied the basis vector \(∂_ν\) to the basis form \(dx^μ\).

We equate the interior product to the dot product for a vector pair to the interior product \(⌟\):

\[\newcommand{\⌟}{\:⌟\:} ∂_ν \⌟ ∂_μ = ∂_μ · ∂_ν = η_{μν}\]

For covectors:

\[\begin{split}\newcommand{\⌟}{\:⌟\:} dx^ν \⌟ dx^μ = dx^μ · dx^ν = η^{μν} \\\end{split}\]

The interior product of a vector can be applied to a general k–vector. For a basis vector acting on a basis 2–vector, we bring the corresponding basis 1–vector to the front and apply the vector to the first slot:

\[\begin{split}\newcommand{\⌟}{\:⌟\:} dt \⌟ dx ∧ dt &= dt \⌟ \left( - dt ∧ dx \right) \\ &= - ( dt · dt ) \; dx \\ &= - dx\end{split}\]

Simmilarly, the interior product of a basis vector can be taken with a 3–vector or a 4–vector. This provides a straightforward algorithmic approach to calculate the inner product with no thinking involved:

\[\begin{split}\newcommand{\⌟}{\:⌟\:} (dt ∧ dx) · (dt ∧ dx) &= dx \⌟ dt \⌟ dt ∧ dx \\ &= dx \⌟ (dt · dt) ∧ dx \\ &= dx \⌟ dx \\ &= dx · dx \\ &= -1\end{split}\]

Hodge dual of k–forms#

In the article Hodge duality fundamentals, the inclusion of the inner product to determine the Hodge dual of k–forms is explained. Here I present how to directly determine the Hodge dual. The Hodge dual can be determined directly by taking the interior product \(⌟\) with the pseudo-scalar. In Minkowski space, the pseudo-scalar is \(dt ∧ dx ∧ dy ∧ dz\).

For example, the Hodge dual of \(dx ∧ dy\) is:

\[\begin{split}\newcommand{\⌟}{\:⌟\:} ⋆ dx ∧ dy & = (dx ∧ dy) \⌟ dt ∧ dx ∧ dy ∧ dz \\ & = dy \⌟ dx \⌟ (- dx ∧ dt ∧ dy ∧ dz) \\ & = dy \⌟ dx \⌟ (+ dx ∧ dy ∧ dt ∧ dz) \\ & = dy \⌟ (dx · dx) \: dy ∧ dt ∧ dz \\ & = - dy \⌟ dy ∧ dt ∧ dz \\ & = - (dy · dy) \: dt ∧ dz \\ & = dt ∧ dz \\\end{split}\]

Euclidean space#

Inner product#

Hodge duals#

Minkowski space#

Inner product#

We can systematicall apply the procedure to obtain the same result as above:

1–forms

\[\begin{split}\begin{array}{c|rrrr} & dt & dx & dy & dz \\ \hline dt & +1 & 0 & 0 & 0 \\ dx & 0 & -1 & 0 & 0 \\ dy & 0 & 0 & -1 & 0 \\ dz & 0 & 0 & 0 & -1 \\ \end{array}\end{split}\]
\[\begin{split}\newcommand{\⌟}{\:⌟\:} \begin{alignedat}{5} dt · dt &=& dt &\⌟& dt & = +1 \\ dx · dt &=& dx &\⌟& dx & = -1 \\ dy · dt &=& dy &\⌟& dy & = -1 \\ dz · dt &=& dz &\⌟& dz & = -1 \\ \end{alignedat}\end{split}\]

2–forms

\[\begin{split}\begin{array}{c|rrrrrr} & dt ∧ dx & dt ∧ dy & dt ∧ dz & dy ∧ dz & dz ∧ dx & dx ∧ dy \\ \hline dt ∧ dx & -1 & 0 & 0 & 0 & 0 & 0 \\ dt ∧ dy & 0 & -1 & 0 & 0 & 0 & 0 \\ dt ∧ dz & 0 & 0 & -1 & 0 & 0 & 0 \\ dy ∧ dz & 0 & 0 & 0 & +1 & 0 & 0 \\ dz ∧ dx & 0 & 0 & 0 & 0 & +1 & 0 \\ dx ∧ dy & 0 & 0 & 0 & 0 & 0 & +1 \\ \end{array}\end{split}\]
\[\begin{split}\newcommand{\⌟}{\:⌟\:} \newcommand{\·}{\:·\:} \begin{alignedat}{5} (& dt ∧ dx &) \· (& dt ∧ dx &) =& dx &\⌟& dt &\⌟& dt ∧ dx &= + dx &\⌟& dx &= -1 \\ (& dt ∧ dy &) \· (& dt ∧ dy &) =& dy &\⌟& dt &\⌟& dt ∧ dy &= + dy &\⌟& dy &= -1 \\ (& dt ∧ dy &) \· (& dt ∧ dz &) =& dz &\⌟& dt &\⌟& dt ∧ dz &= + dz &\⌟& dz &= -1 \\ (& dy ∧ dz &) \· (& dy ∧ dz &) =& dz &\⌟& dy &\⌟& dy ∧ dz &= - dz &\⌟& dz &= +1 \\ (& dz ∧ dx &) \· (& dz ∧ dx &) =& dx &\⌟& dz &\⌟& dz ∧ dx &= - dx &\⌟& dx &= +1 \\ (& dx ∧ dy &) \· (& dx ∧ dy &) =& dy &\⌟& dx &\⌟& dx ∧ dy &= - dy &\⌟& dy &= +1 \\ \end{alignedat}\end{split}\]

3–forms

\[\begin{split}\begin{array}{c|rrrr} & dx ∧ dy ∧ dz & dt ∧ dy ∧ dz & dt ∧ dz ∧ dx & dt ∧ dx ∧ dy \\ \hline dx ∧ dy ∧ dz & -1 & 0 & 0 & 0 \\ dt ∧ dy ∧ dz & 0 & +1 & 0 & 0 \\ dt ∧ dz ∧ dx & 0 & 0 & +1 & 0 \\ dt ∧ dx ∧ dy & 0 & 0 & 0 & +1 \\ \end{array}\end{split}\]
\[\begin{split}\newcommand{\⌟}{\:⌟\:} \newcommand{\·}{\:·\:} \small \begin{alignedat}{5} (& dx ∧ dy ∧ dz &) \· (& dx ∧ dy ∧ dz &) =& dz \⌟ dy \⌟ dx \⌟ dx ∧ dy ∧ dz &=& - dz \⌟ dy \⌟ dy ∧ dz &= + dz \⌟ d = -1 \\ (& dt ∧ dy ∧ dz &) \· (& dt ∧ dy ∧ dz &) =& dz \⌟ dy \⌟ dt \⌟ dt ∧ dy ∧ dz &=& + dz \⌟ dy \⌟ dy ∧ dz &= - dz \⌟ d = +1 \\ (& dt ∧ dz ∧ dx &) \· (& dt ∧ dz ∧ dx &) =& dx \⌟ dz \⌟ dt \⌟ dt ∧ dz ∧ dx &=& + dx \⌟ dz \⌟ dz ∧ dx &= - dx \⌟ d = +1 \\ (& dt ∧ dx ∧ dy &) \· (& dt ∧ dx ∧ dy &) =& dy \⌟ dx \⌟ dt \⌟ dt ∧ dx ∧ dy &=& + dy \⌟ dx \⌟ dx ∧ dy &= - dy \⌟ d = +1 \\ \end{alignedat}\end{split}\]

4–forms

\[\begin{split}\begin{array}{c|c} & dt ∧ dx ∧ dy ∧ dz \\ \hline dt ∧ dx ∧ dy ∧ dz & -1 \\ \end{array}\end{split}\]
\[\begin{split}\newcommand{\⌟}{\:⌟\:} \newcommand{\·}{\:·\:} (dt ∧ dx ∧ dy ∧ dz) \· (dt ∧ dx ∧ dy ∧ dz) &= dz \⌟ dy \⌟ dx \⌟ dt \⌟ dt ∧ dx ∧ dy ∧ dz \\ &= dz \⌟ dy \⌟ dx \⌟ dx ∧ dy ∧ dz \\ &= -1 dz \⌟ dy \⌟ ∧ dy ∧ dz \\ &= +1 dz \⌟ ∧ dz \\ &= -1\end{split}\]

Hodge duals#

1-forms

\[\begin{split}⋆ dt &=& dx ∧ dy ∧ dz \\ ⋆ dx &=& dt ∧ dy ∧ dz \\ ⋆ dy &=& dt ∧ dz ∧ dx \\ ⋆ dz &=& dt ∧ dx ∧ dy \\\end{split}\]

2-forms

\[\begin{split}⋆ dt ∧ dx &= \\ ⋆ dt ∧ dy &= \\ ⋆ dt ∧ dz &= \\ ⋆ dy ∧ dz &= \\ ⋆ dz ∧ dx &= \\ ⋆ dx ∧ dy &= \\\end{split}\]

3-forms

\[\begin{split}⋆ dx ∧ dy ∧ dz &= \\ ⋆ dt ∧ dy ∧ dz &= \\ ⋆ dt ∧ dz ∧ dx &= \\ ⋆ dt ∧ dx ∧ dy &= \\\end{split}\]

4-forms

\[⋆ dt ∧ dx ∧ dy ∧ dz =\]