There’s a wide class of coordinate transforms that are typically given *backwards*. Witness spherical polar coordinates:

Typically we already know what our cartesian coordinates are, and we want to express them in this fancy new coordinate system . That is, we want a map

but it looks like we’ve only been given the inverse map

Now, really we know how to invert these expressions. But doing calculus with inverse functions like is no fun at all, and besides we can imagine situations where no inverse exists.

What we’re interested in is what becomes of the basis vectors and covectors when we change to spherical polar coordinates.

Let’s imagine that the manifold is “ with cartesian lines drawn on”, and the manifold is “ with spherical lines drawn on”. Obviously these are both , but our reasoning will be completely general.

Recall that a map induces a ‘pullback’ that takes functions/covectors on to functions/covectors on ; and a ‘pushforward’ that takes curves/vectors on to curves/vectors on . That is, the pullback operates ‘backwards’ to the direction of the original map .

But this is exactly the same as saying that the pullback induced by the inverse map will operate in the expected ‘forwards’ direction. So, takes functions/covectors on to functions/covectors on . So, given that we only have access to right now, it looks like we can successfully work out what our covectors will look like in spherical coordinates.

Another way of phrasing this is that *the exterior derivative commutes with pullbacks*. Let be a function on and a vector field on . Then

## A correct method for covectors

But now let be the coordinate function for the coordinate , i.e. . Then

using the fact that we know from above, and standard facts about the exterior derivative (Leibniz rule over multiplication etc.).

Rinse and repeat for the other basis covectors:

So given a covector in cartesian coordinates we now know how substitute for , writing in spherical coordinates.

## An incorrect method for vectors

But what about ordinary vectors?

Let’s try and naively apply the calculus we already know, so try the following (for the basis vector):

Now when we contract this with our earlier expression for , we should get

But instead we get

What went wrong? We neglected to consider contributions to that might arise from other coordinate vectors being rotated into the direction due to the coordinate change (this sentence doesn’t really make sense, but then again, we’re trying to ‘explain’ a contradiction).

## A correct method for vectors

Write out completely general expressions for :

All we know about these basis vectors is that, when contracted with the basis covectors, we should obtain the identity matrix, even when they’ve been written out in spherical coordinates:

( is just the identity map)

So we repeatedly apply this property to the expression above, essentially inverting the 3-by-3 matrix that has components .

For example, for we get

which gives the correct result when contracted with .

## Conclusion

The essential difference between vectors and covectors is that, under maps, one of them moves one way and the other one moves the other way. Hopefully the little parable in this blogpost has illustrated this fact.

When you have a metric you can talk about them having indices in different places, but that allows you to forget about the difference between them altogether! The interesting differences between vectors and covectors come into play when:

- You don’t necessarily know what the metric is.
- You’re using maps between manifolds/coordinate systems whose inverses don’t necessarily exist (for example, the projection onto a submanifold has no inverse).

The fact that the exterior derivative commutes with pullbacks also explains why it’s covectors that show up in integrals, thanks to the ‘change of variables’ formula

It also explains why it’s so easy to find the form of the metric in new coordinates, because the metric is a rank (0,2)-tensor, i.e. a sum of pairs of covectors, tensor-producted together:

and we can just substitute for in the new coordinates and we’re done!