Hendrik Lorentz
1. The Power of Index Notation
Index notation looks pretty scary the first time you see it. Lots of Greek letters, half of them upstairs and half downstairs, repeated in ways that seem weird, and supposedly this weird method describes some of the most difficult math in physics. It looks like some ancient hieroglyphic language. Which, it kind of is, but once you understand a little of it, things that used to be a page of algebra turn into a line you can read off. Better than that, it starts doing some of your thinking for you. This post is an attempt to show that through one result, proved twice, once the ordinary way and once with indices.
1.1 Index Notation
Here is the whole thing in a few sentences. Instead of writing a vector as \(\mathbf{V}\) and listing its components off to the side, you write \(V^\mu\) and let the label \(\mu\) do the listing for you. It runs over the four coordinates \(x^\mu=(ct,x,y,z)\), so \(V^\mu\) is not one number, it’s however many coordinates you are working in. Two rules are basically the rest. The first is that a repeated index means "sum over it," so \(V^\mu W_\mu\) really means \(\sum_{\mu=0}^{3}V^\mu W_\mu\). That is Einstein's convention. The second is that up and down are different objects. An index upstairs and an index downstairs transform in opposite ways when you change coordinates, and that is exactly why you are allowed to sum them against each other; the two transformation factors cancel (this is also the canonical vector-convector pairing). Summing two of the same kind, something like \(V^\mu W^\mu\), does not mean anything at all. Anything not summed away is called a free index, and free indices have to match on both sides of an equation: same letters, same up or down. Objects can carry more than one, so \(F^{\mu\nu}\) is a \(4\times4\) array of numbers, and \(\partial_\mu\) is just shorthand for \(\partial/\partial x^\mu\), which counts as a lower index.
1.2 Example
Everyone tells you that Maxwell's equations look the same to every inertial observer. That is true, but it is not really obvious at all. Well, somebody has to actually check it, and that somebody is going to be us. Here are the equations, in vacuum with sources present:
Now put an observer in a frame \(S'\) moving at speed \(v\) along \(x\). They measure their own \(\mathbf{E}'\), \(\mathbf{B}'\), \(\rho'\), \(\mathbf{J}'\). Are the equations the same for them?
1.3 Component method
To even get started you need three separate sets of rules, which is already more setup than you might expect. First the derivatives, which come from the chain rule on \(x=\gamma(x'+vt')\) and \(t=\gamma(t'+vx'/c^2)\):
Then the fields with all six components:
And the sources: \(\rho'=\gamma(\rho-vJ_x/c^2)\) and \(J'_x=\gamma(J_x-v\rho)\).
Actually, there's a pretty interesting story behind these. Einstein was already convinced the equations had to look the same in every frame but he had no way of knowing what \(\mathbf{E}\) and \(\mathbf{B}\) would look like to a moving observer. So in his 1905 paper he basically did it in reverse: assume the equations keep their form, then work out what the fields must do for that to happen. The rules above are what came out, and same for the sources. Which means we have not checked anything yet, and the setup already contains two real results.
Okay. Let's do the easiest of the four and see what happens. Substitute everything into \(\nabla'\cdot\mathbf{B}'\), then collect the \(\gamma\) terms and the \(\gamma v/c^2\) terms separately:
The first bracket dies because \(\nabla\cdot\mathbf{B}=0\) in the unprimed frame. The second dies because of the \(x\)-component of Faraday's law.
Interesting result! The primed magnetic Gauss law did not follow from the unprimed magnetic Gauss law. It needed Faraday as well. A boost mixes the equations into each other, in the same way it mixes \(\mathbf{E}\) into \(\mathbf{B}\). Nothing in the way we wrote those four equations warned us that this would happen. And that was one of eight scalar equations, with no symmetry shortcuts available, since the boost has picked out the \(x\)-axis and broken the symmetry between the three directions. Worse, when you finally finish, what you have shown is that Maxwell's equations survive this boost. Boost along \(y\) instead and you start over. So, a real pain in the ass.
1.4 Index method
Now the same thing again. Write all six field components as a single antisymmetric object (the EM field tensor),
and the four equations collapse into two:
Under a Lorentz transformation \(\Lambda\), each object transforms according to how many indices it has and which way they point. \(F\) has two upper indices so it picks up two factors of \(\Lambda\), \(J\) has one, and \(\partial_\mu\) has a lower index so it picks up the inverse. Then:
That is the entire proof. The only step doing any work is the middle one, where \(\Lambda^{-1}\) meets \(\Lambda\) and gives you a Kronecker delta. The one leftover \(\Lambda\), the one carrying the free index \(\nu\), is exactly what turns \(J\) into \(J'\) on the far right. The boost never even came up. No \(\gamma\), no \(\beta\), no choice of axis, no matrix written out anywhere. The only thing we used about \(\Lambda\) is that it has an inverse. So this one calculation covers every element of the Lorentz group at once (boosts in any direction, rotations, and anything you build out of them) for the same amount of work as covering one. And those field transformation rules the component method had to go discover? They are now just the matrix product \(F'=\Lambda F\Lambda^{\mathsf T}\), and each line comes nicely out of a two-term calculation.
1.5 Why it works
Here is the thing, though. Even that calculation was more than we needed. Suppose \(T\) and \(S\) are tensors of the same type and \(T=S\) in some frame. Changing frames multiplies both sides by the same Jacobian factor, so \(T'-S'=\mathcal{J}(T-S)=0\), and the equation still holds. An equation between tensors of matching type is true in every frame or in none of them. So go back and look at \(\partial_\mu F^{\mu\nu}=\mu_0J^\nu\). Free index \(\nu\) upstairs on both sides, everything else contracted away, both sides are \((1,0)\) tensors. That is it. There was never anything to check. You can literally count indices instead of doing algebra and you show invariance.
1.6 Where it breaks
Which sounds too good, and it is, because there is a hole in it and the hole is pretty big. Take \(\partial_\mu V^\nu\). One free index up, one free index down, looks like a perfectly respectable \((1,1)\) tensor. It is not one. Write \(A^\nu{}_\beta=\partial x'^\nu/\partial x^\beta\) and hit it with the product rule:
The garbage only disappears when \(A\) is constant, which is to say when the coordinate change is linear. And that is exactly why we got away with it earlier! Lorentz transformations are linear, so \(\Lambda\) is a constant matrix, its derivative is zero, the garbage never appears, and \(\partial_\mu F^{\mu\nu}\) really is an honest tensor. But nothing in the proof really said that clearly. We just let the \(\Lambda\)s go past the derivative. Now change to spherical coordinates (still flat space, still no gravity anywhere in sight!) and the garbage does not disappear. Fixing that is what Christoffel symbols and the covariant derivative are for, and that is a post of its own.
So here is where we get to. They look pretty scary, but make things a hell of a lot easier!