Early in differential geometry, texts typically reformalize our usual gradient, divergence and curl operators as covariant tensors rather than vectors. This is primarily motivated by the observation that they transfer covariantly rather than contravariantly, and therefore need to be assigned a new tensorial structure to govern the transformation rules.

However, in assigning additional structure to these operators, it lends them additional interpretation that does not seem very physically useful.

Take, for example, the curl. Observing that it transforms covariantly, we can assign it a covariant tensor structure. When we want to take the curl of a vector field, we first map the vectors to covectors, take an exterior derivative, and then remap the resulting 2-forms back to vectors.

However, while this achieves our goal of defining the curl in a way that transforms covariantly, we've unintentionally given it a new interpretation to its codomain as maps from 2 vectors to a real number. And, even worse, any vector field is now a map from 2 vectors to a real number via hodge dual. While defining new structures has given us something more useful, it seems to have equivocated our familiar vectors with uninteresting structural baggage in return.

It seems like I'm forced to either, 1) find a useful interpretation of the codomain of the curl operator of the form $(a_x \ dy \wedge dz + a_y \ dx \wedge dz + a_z dx \wedge dy)(v_1, v_2)$ as a useful real number, so that I can be at peace with thinking of the curl as a map from covectors to covectors and not just a vector operator with covariant transformation rules, or 2) accept that sometimes in making physically useful things formal with tensor calculus and the hodge dual, we've created some uninteresting interpretations that simply weren't possible beforehand.

What's a physicist to do?

  • 2
    $\begingroup$ Can you clarify which part of this you find to be problematic? There's a lot of room in formal mathematics for things which are not of immediate physical relevance. $\endgroup$
    – J. Murray
    Jan 3, 2018 at 17:56
  • $\begingroup$ On additional thought, I think I just have some intuitive resistance to the Hodge isomorphism between two-forms and vectors in R3. The usual intuition for an isomorphism between groups is that the two groups are 'the same thing, but relabelled'. At first glance, a 2-form and a vector are very different objects, and despite my having convinced myself both vector fields have the same structures, they still seem like 'different things'. Maybe in this case, I just need to generalize my intuition for an isomorphism to be a map between 'groups with identical structure' rather than 'the same thing'. $\endgroup$ Jan 3, 2018 at 18:24
  • $\begingroup$ Mathematically, if they have identical structure, they're indistinguishable in all matters except how I think about them, in any case. $\endgroup$ Jan 3, 2018 at 18:27
  • 2
    $\begingroup$ Two groups which are isomorphic to each other are indistinguishable from the perspective of group theory, but may be completely unrelated from a different point of view. Complex numbers with $|z|=1$ equipped with complex multiplication and 2D rotation matrices equipped with matrix multiplication are isomorphic groups, but complex numbers and matrices are completely different objects. $\endgroup$
    – J. Murray
    Jan 3, 2018 at 18:37
  • $\begingroup$ Okay, this is progress. Here's my next issue. My geometry texts seem to advertise that tensors allow us to generalize our vector caculus differential operators. However, if the tensorial form of differential operators apply to covectors, and the vector calculus form applies to vectors, we have issues. Now, I earlier thought that Hodge * was an equality relation, rather than isomorphism relation. This would have fixed the problem, since vectors would have actually been covectors, so applying differential operators on vectors was a specific case of applying tensors to covectors. $\endgroup$ Jan 3, 2018 at 19:37

1 Answer 1


This answer takes into account the elaboration on the question which takes place in the comments.

Let's build a tensor space. I won't bother with the definition of a tangent vector as a "directional derivative" operator - we'll just start from the fairly intuitive notion of tangent vectors as little "arrows" which live in the tangent space at a point $p$ in some manifold $\mathcal{M}$.


A vector $X$ defined at a point $p\in M$ can be expanded in terms of a vector basis $\hat e_i$. That is, $$X = X^i \hat e_i$$ where we follow the Einstein summation convention.


A covector is an $\mathbb{R}-$linear map which eats vectors and returns real numbers. While the vector space is spanned by the vector basis $\hat e_i$, the covector space is spanned by the covector basis $\epsilon_i$. In principle, these bases may be chosen independently of one another, but one typically chooses the covector basis such that $$\epsilon_i(\hat e_j) = \cases{+1 & $i=j$ \\ 0 & $i\neq j$}$$

The action of a covector $\omega = \omega_i \epsilon^i$ on a vector $X = X^i \hat e_i$ is as follows: $$\omega(X) = \omega_i \epsilon^i(X^j \hat e_j) = \omega_i X^j \epsilon^i(\hat e_j) = \omega_i X^i$$

We can similarly define the action of a vector on a covector: $$X(\omega) \equiv \omega(X)$$

Therefore, we can regard vectors and covectors as objects which eat each other and return real numbers.


A $(p,q)-$tensor $T$ is an $\mathbb{R}-$multilinear map which eats $p$ covectors and $q$ vectors and returns a real number. From this standpoint, functions on the manifold are $(0,0)-$tensors, vectors are $(1,0)-$tensors, and covectors are $(0,1)-$tensors. As an example, consider a $(1,1)-$tensor $T$. Its action on a covector $\omega$ and a vector $X$ is then $$ T(\omega,X) = T(\omega_i \epsilon^i,X^j \hat e_j) = \omega_i X^j T(\epsilon^i,\hat e_j) = \omega_i X^j T^i_{\ j}$$ where $$T^i_{\ j} \equiv T(\epsilon^i,\hat e_j)$$ are called the components of $T$ in the chosen basis.

Metric Tensors

A metric tensor $g$ is a symmetric, positive-definite $(0,2)$-tensor. Its action on two vectors $X$ and $Y$ can be written $$g(X,Y) = g(X^i\hat e_i,Y^j \hat e_j) = X^i Y^j g(\hat e_i,\hat e_j) = X^i Y^j g_{ij}$$ where the components $$g_{ij}$$ can be put in the form of a symmetric, invertible matrix. This generalizes the notion of the familiar dot product between vectors.


We can define an operation called flat which takes a vector $X$ to a covector $X^\flat$ by plugging it into the first slot of the metric but leaving the second slot empty. In other words, $$X^\flat \equiv g(X,\bullet)$$ Its action on a vector $Y$ is given by $$X^\flat(Y) = (X^\flat)_i \epsilon^i(Y^j \hat e_j) = (X^\flat)_i Y^j \epsilon^i(\hat e_j) = (X^\flat)_i Y^i$$ but $$X^\flat(Y) = g(X,Y) = X^i Y^j g_{ij}$$ so it follows that $$(X^\flat)_i = g_{ij} X^j$$

Inverse Metric

We can define a $(2,0)-$tensor $\Gamma$ which acts like a metric on covectors rather than vectors. Its defining characteristic would be the fact that

$$\Gamma(X^\flat,Y^\flat) = g(X,Y)$$ Therefore, $$(X^\flat)_m (Y^\flat)_n \Gamma^{mn} = X^i Y^j g_{mi}g_{nj}\Gamma^{mn} = X^i Y^j g_{ij}$$

It follows that the components $\Gamma^{ij}$ are the components of the inverse of the metric tensor written as a matrix. We sometimes write $\Gamma = g^{-1}$, despite the fact that the inverse of a $(2,0)-$tensor is not a meaningful notion. We also often write the components of $\Gamma$ as $g^{ij}$ - that is, the components of the metric tensor with "raised indices." This is a fairly severe abuse of notation, but such is life.


Now that the inverse metric has been defined, we can define a sharp operation which takes a covector $\omega$ to a vector $\omega^\sharp$: $$ \omega^\sharp \equiv \Gamma(\omega,\bullet)$$

Musical Isomorphism

Notice that because of our previous definitions, $$(X^\flat)^\sharp = X$$ and $$(\omega^\sharp)^\flat = \omega$$ This correspondence is often called the musical isomorphism.

Differential Forms

A differential $k$-form is totally asymmetric $(0,k)-$tensor. Functions on $\mathcal{M}$ are 0-forms, while covectors are 1-forms. The asymmetry condition starts to be important with 2-forms, which are spanned by the basis $$\epsilon^i \wedge \epsilon^j$$. If $\mathcal{M}$ has dimension 2, then we could have

  • 0-forms: $f$
  • 1-forms: $\alpha = \alpha_1 \epsilon^1 + \alpha_2 \epsilon^2$
  • 2-forms: $\beta = \beta_{12} (\epsilon^1\wedge \epsilon^2)$

where $$\epsilon^1\wedge\epsilon^2 = -\epsilon^2\wedge\epsilon^1$$

No higher forms are possible (or rather, all higher forms are trivially 0) because of the asymmetry condition.

Hodge Star

Notice that on a manifold of dimension $d$, the set of $k-$forms has dimension ${d\choose{k}}$. Therefore, we can set up a correspondence between $k-$forms and $(d-k)-$forms. We call this operation $\star$ - the Hodge star. In the following, I'll assume we're working in an orthonormal basis.

The idea is basically as follows: If we start with a $k$-form $\alpha$ which can be written as a product of basis forms $\epsilon^{i_1}\wedge\ldots\wedge\epsilon^{i_k}$, then $\star\alpha$ is the unique $d-k$ form such that $\alpha\wedge\star\alpha = \epsilon^1\wedge\ldots\wedge\epsilon^d$.

On a 2D space in orthonormal coordinates, one has $$\star 1 = \epsilon^1\wedge\epsilon^2$$ $$\star \epsilon^1 = \epsilon^2 \qquad \star \epsilon^2 = -\epsilon^1$$ $$\star \epsilon^1\wedge \epsilon^2 = 1$$

whereas in 3D, $$\star 1 = \epsilon^1\wedge\epsilon^2\wedge\epsilon^3$$ $$\star \epsilon^1 = \epsilon^2\wedge\epsilon^3 \qquad \star \epsilon^2=\epsilon^3\wedge\epsilon^1 \qquad \star \epsilon^3=\epsilon^1\wedge\epsilon^2$$

This extends to general forms by linearity; for instance, in 3D and an orthonormal basis, the 1-form $\alpha=2\epsilon^1 + \epsilon^3$ is mapped to the 2-form $$\star\alpha = 2(\epsilon^2\wedge\epsilon^3) + (\epsilon^1\wedge\epsilon^2)$$

Exterior Derivative

We can define an operation called exterior differentiation which takes a $k-$form $\alpha$ and returns a $(k+1)-$form $d(\alpha)$. It is defined by the following properties:

  • $df=(\partial_i f)\epsilon^i$ for all smooth functions $f$, and
  • $d(d(f))\equiv d^2(f) = 0$ for all smooth functions $f$, and
  • $d(\alpha \wedge \beta) = d\alpha \wedge \beta + (-1)^p \alpha \wedge d\beta$ where $\alpha$ is a $p-$form and $\beta$ is a $k-$form ($k$ is unspecified)

In our 2D example, given a 0-form $f$, we have that $$d(f) = (\partial_1 f)\epsilon^1 + (\partial_2 f)\epsilon^2$$ and given a 1-form $$\alpha = \alpha_1 \epsilon^1 + \alpha_2 \epsilon^2$$ we have that $$d(\alpha) = (\partial_2 \alpha_1)\epsilon^2\wedge\epsilon^1 + (\partial_1 \alpha_2) \epsilon^1\wedge\epsilon^2=(\partial_1 \alpha_2 - \partial_2 \alpha_1)\epsilon^1\wedge\epsilon^2$$

Notice that $$d(d(\alpha))=0$$ This is no coincidence - $$d^2\alpha = 0$$ for all $k-$forms $\alpha$.


We now define the operations $\operatorname{grad}$ (which maps functions to vector fields), $\operatorname{curl}$ (which maps vector fields to vector fields), and $\operatorname{div}$ (which maps vector fields to functions). Note that we restrict our attention to manifolds of dimension 3 and orthonormal coordinates.

Given a function (aka a $(0,0)-$tensor, or a $0-$form) $f$

  • $df$ is a 1-form (a covector field), and
  • $(df)^\sharp$ is a vector field

so we let $$\operatorname{grad}(f) = (df)^\sharp$$

Given a vector field $X$,

  • $X^\flat$ is a covector field (a 1-form), and
  • $d(X^\flat)$ is a 2-form, and
  • $\star^{-1} d(X^\flat)$ is a 1-form (a covector field), and
  • $[\star^{-1} d(X^\flat)]^\sharp$ is a vector field

so we let $$\operatorname{curl}(X) = [\star^{-1} d(X^\flat)]^\sharp$$

Lastly, given a vector field $X$,

  • $X^\flat$ is a covector field (a 1-form), and
  • $\star X^\flat$ is a 2-form, and
  • $d(\star X^\flat)$ is a 3-form, and
  • $\star^{-1} d(\star X^\flat)$ is a 0-form (a function)

so we let $$\operatorname{div}(X) = \star^{-1} d(\star X^\flat)$$

We have therefore defined the standard vector calculus operations in the language of differential forms/differential geometry. Notice that it follows immediately that

$$\operatorname{curl}(\operatorname{grad}(f)) = [\star^{-1} d([(df)^\sharp]^\flat)]^\sharp = [\star^{-1} d^2 f]^\sharp = 0$$ and $$\operatorname{div}(\operatorname{curl}(f)) = 0$$ (that one is messy due to the symbols we used, but it's pretty straightforward).

  • $\begingroup$ Brilliant!!!!!! $\endgroup$
    – Vangi
    Jul 9, 2019 at 18:04
  • $\begingroup$ I am sorry for "resurrecting" this thread, I know it has been a long time since you wrote it, but can you generalise flat and sharp as changing a (p, q) tensor into (p+1, q-1) or (p-1, q+1) tensors? ( $g_{\mu\nu}T^{\mu\sigma\rho} = T^{\sigma\rho}_{\nu})$ ? $\endgroup$
    – Vangi
    Jul 9, 2019 at 18:16
  • $\begingroup$ @Vangi No problem. Yes, you can (be careful of index placement though, it's important that $\nu$ come before $\sigma$ in $T_{\nu}^{\ \ \sigma \rho}$). Given a (3,0)-tensor $\mathbf T$ which eats three covectors, you can define an associated (2,1)-tensor $\mathbf S$ which eats one vector and two covectors like this: ${\mathbf{S}}(X,\alpha,\beta) := {\mathbf{T}}(X^\flat,\alpha,\beta)$. If you work out the relationship between the components of $\mathbf S$ and the components of $\mathbf T$, you will find that $S_\nu^{\ \ \sigma \rho} = g_{\mu \nu} T^{\mu \sigma \rho}$. $\endgroup$
    – J. Murray
    Jul 9, 2019 at 18:25
  • 1
    $\begingroup$ Curl is a function which maps vector fields to vector fields. I'm not sure what you mean when you say you want to calculate the curl of a 1-form. Of course, given a one form, you could just start from step 2 and go from there (which is equivalent to sharping it first and then calculating the curl), but in a strict sense this wouldn't be curl. $\endgroup$
    – J. Murray
    Jul 9, 2019 at 19:52
  • 1
    $\begingroup$ @Vangi And yes - you have stumbled on an explanation of why curl is only a meaningful operation in $n=3$ dimensions. See here for more. $\endgroup$
    – J. Murray
    Jul 9, 2019 at 19:56

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.