# Calculating the Hodge Star in the most general case

• I
• Vanilla Gorilla
In summary: Second, I again think that I roughly understand Einstein Notation in a basic sense (I.e., simple examples), but I don't really understand the use of it here, and how to conduct the summations.In summary, the conversation discusses the difficulty in understanding and computing the Hodge Star in Differential Geometry. The individual has found a source that provides some explanation and examples, but still struggles with certain aspects such as calculating the Levi-Civita Symbol and using Einstein Notation. They are seeking a general method for computing the Hodge Star and would appreciate an example with lower dimensions.

#### Vanilla Gorilla

TL;DR Summary
What is the most general possible way to compute the Hodge Star? If possible, please provide an example of calculation with p,d<3, and d>p.
I have been learning a little Differential Geometry lately and recently came across the Hodge Star. So far I have been unable to find an explanation for its calculation that I can understand. I believe some ways of computing it were only valid in an orthonormal basis, but I would like to be able to compute it in a general basis. So far, the closest I have come to being able to understand, and then calculate it has been from this source, on pages 3-5 (See attached image).
The main problems I have with this computation are twofold. For one, I am unfamiliar with how to efficiently calculate the Levi-Civita Symbol. I think I understand the definitions of even and odd permutations, but I don't understand how I can efficiently tell whether a given permutation is odd or even without manually swapping scripts. Likewise, I have never seen the Levi-Civita Symbol with both sub- and super-scripts before.
Second, I again think that I roughly understand Einstein Notation in a basic sense (I.e., simple examples), but I don't really understand the use of it here, and how to conduct the summations.

Here is an example I tried to calculate below.
Write ## \large dx^1 \wedge ... \wedge dx^P=dx^{1...P}## for brevity.
Suppose we have ## \large \alpha = 7 dx^{123} + 5 dx^{132} + 8 dx^{321}. ## Obviously, this is a 3-form. Let's suppose we're on a 7-dimensional pseudo-Riemannian manifold. Assume we're in Cartesian, so the determinant of the absolute value of the Metric, ##\large \sqrt {|g|}## is 1. Rewrite ## \large \alpha## in Einstein notation; I'm omitting terms with values of 0 for brevity. Also, I use the function ##p(n_1,n_2,n_3...,n_b) ## to denote all possible permutations of the list ##n_1,n_2,n_3...,n_b##. For example, ## \large p(1,2,3) = {123, 132, 213, 231, 312, 321}##.
$$\begin{gather*} \star (dx^{\mu_1} \wedge … \wedge dx^{\mu_p} ) = \frac {\sqrt {|g|}} {(d-p)!} \epsilon^{\mu_1…\mu_p}_{\nu_1…\nu_{d-p}} dx^{\nu_1} \wedge … \wedge dx^{\nu_{d-p}} ~~~~~~~ \text {(See original source)} \\ \star (dx^{\mu_1 ... \mu_p} ) = \frac {\sqrt {|g|}} {(d-p)!} \epsilon^{\mu_1…\mu_p}_{\nu_1…\nu_{d-p}} dx^{\nu_1 ... \nu_{d-p}} \\ \star (dx^{\mu_1 ... \mu_3} ) = \frac {1} {(7-3)!} \epsilon^{\mu_1…\mu_3}_{\nu_1…\nu_{7-3}} dx^{\nu_1 ... \nu_{7-3}} \\ \star (dx^{\mu_1 \mu_2 \mu_3} ) = \frac {1} {24} \epsilon^{\mu_1 \mu_2 \mu_3 }_{\nu_1 \nu_2 \nu_3 \nu_4 } dx^{\nu_1 \nu_2 \nu_3 \nu_4 } \\ \star (dx^{p(1,2,3)} ) = \frac {1} {24} \epsilon^{ p(1,2,3) }_{ p(1,2,3,4) } dx^{ p(1,2,3,4) } \\ \end{gather*}$$
Then I get lost.
I have also tried the formula ## \large \alpha \wedge \star \beta = \langle \alpha, \beta \rangle \omega##, as shown below, where we solve for ##\large \beta##, for any ##\large \alpha##, ##\large \omega## is the volume form ##\large \omega=\sqrt {|g|} dx^{0...d-1}##, and ##\large \langle \alpha, \beta \rangle=\alpha_{\mu_1···\mu_p} \beta^{\mu_1···\mu_p}##, again, all according to the same source.
$$\begin{gather*} \alpha \wedge \star \beta = \langle \alpha, \beta \rangle \omega \\ \alpha \wedge \star \beta = \left [ \alpha_{\mu_1···\mu_p} \beta^{\mu_1···\mu_p} \right ] \left [ \sqrt {|g|} dx^{0...d-1} \right ] \\ \text {By linearity, we move scalars to the front:} ~~~ \alpha \wedge \star \beta = \left ( \sqrt {|g|} \left [ \alpha_{\mu_1···\mu_p} \beta^{\mu_1···\mu_p} \right ] \right ) \left [ dx^{0...d-1} \right ] \\ \text {Rewriting the notation, but keeping the same meaning of the expression:} ~~~ \alpha \wedge \star \beta = \left ( \sqrt {|g|} \left [ \alpha_{\mu_1···\mu_p} \beta^{\mu_1···\mu_p} \right ] \right ) \left [ dx^{1...d} \right ] \\ \alpha \wedge \star \beta = \left [ \alpha_{\mu_1···\mu_p} \beta^{\mu_1···\mu_p} \right ] \left [ dx^{1...d} \right ] \\ \end{gather*}$$
Then I again get lost.
I don't know if I did everything, or even anything, right in the above examples, but I just wanted to share them so my issues might be more apparent.

I think I can be taught able to use either of these methods, but I just need to see an example. There seems to be a lot of unwritten convention that I am unfamiliar with, that jeopardizes my capacity to understand.

#### Attachments

• 1684095961927.png
24.5 KB · Views: 59
Vanilla Gorilla said:
TL;DR Summary: What is the most general possible way to compute the Hodge Star? If possible, please provide an example of calculation with p,d<3, and d>p.

I have been learning a little Differential Geometry lately and recently came across the Hodge Star. So far I have been unable to find an explanation for its calculation that I can understand. I believe some ways of computing it were only valid in an orthonormal basis, but I would like to be able to compute it in a general basis. So far, the closest I have come to being able to understand, and then calculate it has been from this source, on pages 3-5 (See attached image).
The main problems I have with this computation are twofold. For one, I am unfamiliar with how to efficiently calculate the Levi-Civita Symbol. I think I understand the definitions of even and odd permutations, but I don't understand how I can efficiently tell whether a given permutation is odd or even without manually swapping scripts. Likewise, I have never seen the Levi-Civita Symbol with both sub- and super-scripts before.
Second, I again think that I roughly understand Einstein Notation in a basic sense (I.e., simple examples), but I don't really understand the use of it here, and how to conduct the summations.

Here is an example I tried to calculate below.
Write ## \large dx^1 \wedge ... \wedge dx^P=dx^{1...P}## for brevity.
Suppose we have ## \large \alpha = 7 dx^{123} + 5 dx^{132} + 8 dx^{321}. ## Obviously, this is a 3-form. Let's suppose we're on a 7-dimensional pseudo-Riemannian manifold. Assume we're in Cartesian, so the determinant of the absolute value of the Metric, ##\large \sqrt {|g|}## is 1. Rewrite ## \large \alpha## in Einstein notation; I'm omitting terms with values of 0 for brevity. Also, I use the function ##p(n_1,n_2,n_3...,n_b) ## to denote all possible permutations of the list ##n_1,n_2,n_3...,n_b##. For example, ## \large p(1,2,3) = {123, 132, 213, 231, 312, 321}##.
$$\begin{gather*} \star (dx^{\mu_1} \wedge … \wedge dx^{\mu_p} ) = \frac {\sqrt {|g|}} {(d-p)!} \epsilon^{\mu_1…\mu_p}_{\nu_1…\nu_{d-p}} dx^{\nu_1} \wedge … \wedge dx^{\nu_{d-p}} ~~~~~~~ \text {(See original source)} \\ \star (dx^{\mu_1 ... \mu_p} ) = \frac {\sqrt {|g|}} {(d-p)!} \epsilon^{\mu_1…\mu_p}_{\nu_1…\nu_{d-p}} dx^{\nu_1 ... \nu_{d-p}} \\ \star (dx^{\mu_1 ... \mu_3} ) = \frac {1} {(7-3)!} \epsilon^{\mu_1…\mu_3}_{\nu_1…\nu_{7-3}} dx^{\nu_1 ... \nu_{7-3}} \\ \star (dx^{\mu_1 \mu_2 \mu_3} ) = \frac {1} {24} \epsilon^{\mu_1 \mu_2 \mu_3 }_{\nu_1 \nu_2 \nu_3 \nu_4 } dx^{\nu_1 \nu_2 \nu_3 \nu_4 } \\ \star (dx^{p(1,2,3)} ) = \frac {1} {24} \epsilon^{ p(1,2,3) }_{ p(1,2,3,4) } dx^{ p(1,2,3,4) } \\ \end{gather*}$$
Then I get lost.
I have also tried the formula ## \large \alpha \wedge \star \beta = \langle \alpha, \beta \rangle \omega##, as shown below, where we solve for ##\large \beta##, for any ##\large \alpha##, ##\large \omega## is the volume form ##\large \omega=\sqrt {|g|} dx^{0...d-1}##, and ##\large \langle \alpha, \beta \rangle=\alpha_{\mu_1···\mu_p} \beta^{\mu_1···\mu_p}##, again, all according to the same source.
$$\begin{gather*} \alpha \wedge \star \beta = \langle \alpha, \beta \rangle \omega \\ \alpha \wedge \star \beta = \left [ \alpha_{\mu_1···\mu_p} \beta^{\mu_1···\mu_p} \right ] \left [ \sqrt {|g|} dx^{0...d-1} \right ] \\ \text {By linearity, we move scalars to the front:} ~~~ \alpha \wedge \star \beta = \left ( \sqrt {|g|} \left [ \alpha_{\mu_1···\mu_p} \beta^{\mu_1···\mu_p} \right ] \right ) \left [ dx^{0...d-1} \right ] \\ \text {Rewriting the notation, but keeping the same meaning of the expression:} ~~~ \alpha \wedge \star \beta = \left ( \sqrt {|g|} \left [ \alpha_{\mu_1···\mu_p} \beta^{\mu_1···\mu_p} \right ] \right ) \left [ dx^{1...d} \right ] \\ \alpha \wedge \star \beta = \left [ \alpha_{\mu_1···\mu_p} \beta^{\mu_1···\mu_p} \right ] \left [ dx^{1...d} \right ] \\ \end{gather*}$$
Then I again get lost.
I don't know if I did everything, or even anything, right in the above examples, but I just wanted to share them so my issues might be more apparent.

I think I can be taught able to use either of these methods, but I just need to see an example. There seems to be a lot of unwritten convention that I am unfamiliar with, that jeopardizes my capacity to understand.

Since ##dx^{132}=dx^{321}=-dx^{123}## we have ##\alpha =-6\;dx^{123}.## This means that
$$\star\alpha =-6 \cdot \frac {\sqrt {|g|}} {(7-3)!} \;\epsilon^{123}_{4567} \;dx^{4567}$$

Euge

I have two questions
1. How would we expand the summation between the Levi-Civita Symbol and ##dx^{4567}##?

Likewise, from this, I gather the following:
The first step to computation is to write ##\alpha##, the thing we take the hodge star of, in terms of a single p-form, rather than the sum of multiple different p-forms. To do this, just use the anticommutativity of the wedge product to swap the order of the scripts (analogous to the order of the wedge product), getting all in terms of a single p-form.
Is that correct?

Vanilla Gorilla said:

I have two questions
1. How would we expand the summation between the Levi-Civita Symbol and ##dx^{4567}##?
Which summation?

You can find examples on Wikipedia:
https://en.wikipedia.org/wiki/Hodge_star_operator
Vanilla Gorilla said:
Likewise, from this, I gather the following:
The first step to computation is to write ##\alpha##, the thing we take the hodge star of, in terms of a single p-form, rather than the sum of multiple different p-forms. To do this, just use the anticommutativity of the wedge product to swap the order of the scripts (analogous to the order of the wedge product), getting all in terms of a single p-form.
Is that correct?
Yes. In case you have expressions like ##\beta = dx^{123}+ dx^{124}## you can use linearity of the Hodge operator and apply it to both 3-forms.

Vanilla Gorilla
fresh_42 said:
$$\star\alpha =-6 \cdot \frac {\sqrt {|g|}} {(7-3)!} \;\epsilon^{123}_{4567} \;dx^{4567}$$
Is this not shorthand for ##\large \star\alpha =-6 \cdot \frac {\sqrt {|g|}} {(7-3)!} \;\epsilon^{i_1 i_2 i_3}_{i_4 i_5 i_6 i_ 7} \;dx^{4567} ##. I was assuming that that was what was implied, and then we needed to do the Einstein Notation implied summation. I take it that I am misinterpreting?

Vanilla Gorilla said:
Is this not shorthand for ##\large \star\alpha =-6 \cdot \frac {\sqrt {|g|}} {(7-3)!} \;\epsilon^{i_1 i_2 i_3}_{i_4 i_5 i_6 i_ 7} \;dx^{4567} ##. I was assuming that that was what was implied, and then we needed to do the Einstein Notation implied summation. I take it that I am misinterpreting?
No, the indices were ##123## and ##4567##. If I get it right, then it's ##+1## anyway, the signature of the permutation. But as ##123## and ##4567## are already ordered, we have just ##1.##

Vanilla Gorilla
OK, that makes sense; what about calculating the Levi-Civita Symbol efficiently?

Vanilla Gorilla said:
OK, that makes sense; what about calculating the Levi-Civita Symbol efficiently?
Are you asking how to program it or how to do it manually? It is the signature of the permutation, so we need to count the transpositions that are necessary to bring it into the natural order. Here are formulas in case you want to write code:
https://en.wikipedia.org/wiki/Levi-Civita_symbol
https://de.wikipedia.org/wiki/Levi-Civita-Symbol

Otherwise, just count:
##321\rightarrow 231 \rightarrow 213 \rightarrow 123## makes ##(-1)^3=-1.##

In practice, is the only way to calculate to literally just count the transpositions by hand?

Vanilla Gorilla said:
In practice, is the only way to calculate to literally just count the transpositions by hand?
... or write a little program with the SORT algorithm of your choice, or simply with the product formula
$$\displaystyle \varepsilon_{i_{1}\dots i_{n}}=\prod _{1\leq p<q\leq n}{\frac {i_{p}-i_{q}}{p-q}}$$

how do you calculate with that formula? (I just don't understand the 4 indices, I know how to calculate using vanilla product notation.)

Vanilla Gorilla said:
how do you calculate with that formula? (I just don't understand the 4 indices, I know how to calculate using vanilla product notation.)
I would only use the formula as code in a program. You have chosen ##d=7,## that's too many factors to do it by hand. Counting transpositions is faster.

Vanilla Gorilla
Alright, that makes sense; does this apply even in a non-orthonormal basis?

Vanilla Gorilla said:
Alright, that makes sense; does this apply even in a non-orthonormal basis?
It applies to orthogonal bases, but we need an orientation, i.e. an order.

By orthogonal I take it you mean basis vectors are perpendicular? And what do you mean by an orientation or order? Just the way in which we write the basis vectors "canonically", like how we write xyz rather than zyx?

Vanilla Gorilla said:
By orthogonal I take it you mean basis vectors are perpendicular?
Yes.
Vanilla Gorilla said:
And what do you mean by an orientation or order? Just the way in which we write the basis vectors "canonically", like how we write xyz rather than zyx?
Yes. Since ##dx\wedge dy = -dy\wedge dx## there is a difference between ##(x,y)## and ##(y,x).## Volumes are oriented.

Vanilla Gorilla
OK, so this definition requires both a canonical ordering of basis vectors (An oriented volume) and orthogonal (But not necessarily orthonormal) basis vectors? Is that correct?

Also, thank you so much, this is so helpful!

fresh_42
Vanilla Gorilla said:
OK, so this definition requires both a canonical ordering of basis vectors (An oriented volume) and orthogonal (But not necessarily orthonormal) basis vectors? Is that correct?

Also, thank you so much, this is so helpful!
Yes, that's correct.

Is there a way to generalize to non-orthogonal basis systems? Sorry, I thought this WAS the way to generalize to non-orthogonal systems, which is why I pursued it specifically, and not other definitions.

We define for an orthonormal basis ##\{e_1,\ldots,e_d\}##
$$\star(e^{1}\wedge e^{2}\wedge \dots \wedge e^{p})=e^{p+1}\wedge e^{p+2}\wedge \dots \wedge e^{d}$$
If we have a basis transformation, then by the linearity of the Hodge operator we get a corresponding operator for this new basis. That results in a different factor but it should work. At least I do not see why we would need especially orthonormal bases. All we need is a vector space basis for the co-tangential space where the differential forms live in.

So we would get a slightly differently defined NEW operator if I understand correctly?

Also, I'm not just asking if it's defined on non-orthogonal basis, but if it is, how to calculate it on them

As I said, by the linearity of ##\star.##
\begin{align*}
x'=\alpha x+\beta y\, &, \,y'=\gamma x+ \delta y\\
dx'=\alpha dx+ \beta dy\, &, \,dy'=\gamma dx+\delta dy\\
dx'\wedge dy'&= (\alpha \delta - \beta \gamma )\;dx\wedge dy\\
\star(dx'\wedge dy')&= (\alpha \delta - \beta \gamma )\;\star(dx\wedge dy)
\end{align*}
Hence, we get the determinant of the transformation matrix as the correction factor.

That makes sense, but I thought the square root of the metric tensor term, ##\sqrt {|g|}## in the original equation, already accounted for the change in basis. Is this incorrect?

Also, again, thank you so much for your replies, they are incredibly helpful, and I really appreciate it :)

Vanilla Gorilla said:
That makes sense, but I thought the square root of the metric tensor term, ##\sqrt {|g|}## in the original equation, already accounted for the change in basis. Is this incorrect?
I am not an expert on Hodge operators and I simply wonder why orthogonality is assumed in every source I found. However, as far as I can see, the metric is the adjustment of the geometry, basically the adjustment between orthonormal and orthogonal. It becomes ##1## if we consider ##\mathbb{R}^n.## Furthermore, it is a local phenomenon and the partial derivatives are evaluated at a certain point of the co-tangent bundle. -

You, on the other hand, asked, what happens if we change from a global Cartesian to an arbitrary coordinate system. In this case, we get a different volume element that has to be factored in additionally.

I wouldn't bother much about orthonormality since physics mainly uses ##dx_i## and ##g_{ij}=\langle \dfrac{\partial }{\partial x_i}\, , \,\dfrac{\partial }{\partial x_j} \rangle## and the determinant of the transformation matrix in any other cases.

But I would be very interested if you would find a statement that actually requires orthogonality. Given any basis, we can always make it orthogonal, and with the metric even orthonormal. So is it just a convenience to require orthogonality or does it play a role somewhere? Maybe it is historically and nobody ever actually thought about changing from ##dx \wedge dy## to ##dx'\wedge dy'.##

fresh_42
"We compute in terms of tensor index notation with respect to a (not necessarily orthonormal) basis..."

Our original formula gave $$\star\alpha =-6 \cdot \frac {\sqrt { | det \left [ g_{ij} \right ] | }} {(7-3)!} \;\epsilon^{123}_{4567} \;dx^{4567}$$ The only difference between our formula and the coordinate-invariant formula seems to be to multiply by the inverse metric tensor components.

I read a bit more about Hodge theory and where it leads, especially to decompositions of spaces where orthogonal projections play a role. We already have local coordinates with the metric so I think it simply doesn't make much sense to carry a transformation matrix through every single calculation step. It doesn't have any benefit, only an additional factor. So my resume would be: If we already have a geometry per construction, why not use it and make life easier?

So basically just use the Hodge formula you gave previously, since we already constructed an orthogonal basis, so we'd just be overcomplicating by putting it into a non-orthogonal basis?

Vanilla Gorilla said:
So basically just use the Hodge formula you gave previously, since we already constructed an orthogonal basis, so we'd just be overcomplicating by putting it into a non-orthogonal basis?
That would be my point of view.

Vanilla Gorilla
Alright, thank you for your help!

fresh_42