Part 1 of 2. This part proves the theorem. Part 2 shows what it’s good for.
There’s a result in QED that looks like a technicality and turns out to be one of the most useful labour-saving devices in the whole subject:
Any correlation function of an odd number of photon fields vanishes. Not approximately, not to leading order — exactly, to all orders in perturbation theory, and in fact non-perturbatively. This is Furry’s theorem (Wendell Furry, 1937).
I’m going to prove it twice: once with the path integral, which is short and airtight, and once with Feynman diagrams, which is how you’d actually spot it in a calculation. Along the way I’ll flag the three places where I’ve most often seen the proof go wrong.
You’ll need: the QED Lagrangian, gamma-matrix manipulation, and the generating functional . That’s it.
1. The one-line reason
Before any algebra, here is the whole thing in a sentence.
The photon is odd under charge conjugation. So a state of photons carries C-parity . The vacuum has C-parity . QED conserves C. An amplitude connecting two states of different C-parity is zero. Odd is therefore forbidden.
That’s the physics. Everything below is the work of making two phrases precise — “the photon is C-odd” and “QED conserves C” — and then converting them into a statement about correlation functions.
2. Warm-up: scalar QED, where it’s obvious
Do this first. It has no gamma matrices and it contains the entire logical structure.
In scalar QED the charged matter is a complex field , and charge conjugation is just complex conjugation: . The kinetic term is
Now apply . The object becomes . But for the Lagrangian to come back to itself, we need it to turn into — note the flipped sign on the charge. The two agree if and only if
That’s it. The photon must be C-odd, and the reason is transparent: couples to the electric current, charge conjugation reverses all currents, so has to reverse too or the coupling won’t survive.
Everything else in this post is bookkeeping.
3. Spinor QED: same answer, real algebra
Now the theory we care about,
with charge conjugation acting as
Conventions. Metric , Weyl basis. The facts we need:
(The first identity holds because in the Weyl basis are real and is imaginary; check the cases and separately and you’ll see it.)
First, what happens to :
Look at what that says. turned into something built from , and turned into something built from .
The one structural fact worth remembering: swaps and .
Every sign below comes from putting them back in the right order. There are only ever three sources of signs: transposing the matrix sandwich, anticommuting the two fields past each other, and — for terms with a derivative — moving the derivative off the wrong field.
3.1 The vector bilinear flips sign
Insert between and , then use twice:
and then . So
The fields are Grassmann-valued, so . Anticommute, relabel , and use :
The electric current is C-odd. Exactly as advertised.
3.2 The kinetic term — and the trap
Here’s the part that trips people up. The kinetic term has the same Dirac structure as the current. So by the calculation we just did, it should also flip sign — and then no choice of transformation for could save the action, because both terms would flip together.
The resolution is the derivative. Repeat the algebra of §3.1 with in the right-hand slot:
The derivative has landed on the wrong field. But this sits inside , so integrate by parts and drop the boundary term:
That’s a second minus sign. Now anticommute and relabel exactly as before, which supplies the first one, and the two cancel:
The kinetic term flips twice and is therefore invariant. The interaction term has no derivative, so it flips once. Invariance of the full action then forces
which is the same conclusion we got in four lines from scalar QED.
⚠️ Trap #1: “it’s a Lorentz scalar, so it’s fine”
A shortcut you’ll see attempted: ” is of the form with a Lorentz scalar, and is C-even, so the kinetic term is C-even.”
This is not an argument. is also a Lorentz scalar, and it’s C-odd. The C-parity of a bilinear is fixed by the Dirac structure , not by its Lorentz rank:
- C-even :
- C-odd :
The kinetic term contains and is C-even only because of the extra sign from the integration by parts. Skip the IBP and you get the right answer for the wrong reason.
One more thing to check, and it’s free: the Maxwell term and any gauge-fixing term are quadratic in , hence automatically even under . The whole QED action is C-invariant.
4. The proof
Now the theorem itself. Define the generating functional with a source coupled to the photon:
is an external, non-dynamical, c-number source. It is not a field. It is not integrated over. It is not the electric current. Its entire job is to be a handle you differentiate with respect to. In particular, it does not transform under .
We need one assumption beyond what we’ve proved: the functional measure is invariant under charge conjugation. (This is the assumption that fails for anomalous symmetries. For C in QED it’s fine; the standard argument is that a regulated path integral behaves like a finite-dimensional one, and a finite-dimensional measure is obviously invariant under this relabelling.)
Now two moves.
Move 1 — relabel the matter fields. Change integration variables , . This is a relabelling of dummy variables, so it changes nothing on the left. The measure is invariant by assumption. The source term contains no matter fields, so it’s untouched. And by §3, the action turns into the same action with the photon flipped:
Move 2 — relabel the photon. Change variables . The measure doesn’t care about a sign flip. The action goes back to normal. And the source term flips:
is an even functional of the source. That’s the entire proof.
⚠️ Trap #2: two different objects called
You will sometimes see this step “justified” by saying that and both flip sign, so is invariant.
That reasoning conflates the external source with the electric current. They’re different objects that unfortunately share a letter. The current does flip sign under C — that’s §3.1, and it’s why the interaction term flips. The source does not.
And notice what the confusion costs you: if really were invariant, Moves 1 and 2 would give you , which is true, useless, and proves nothing. The sign flip of the source term is the content of the proof.
5. From to the theorem
The cleanest route is a Taylor expansion. Expand in powers of the source:
where the coefficients are precisely the correlators we’re after:
We’ve just shown is an even functional of . An even function has no odd Taylor coefficients. Therefore every with odd vanishes, and we’re done:
⚠️ Trap #3: the derivative version, done carelessly
Stated with functional derivatives instead, the argument is often written:
As written that’s false. Differentiating gives a derivative evaluated at , not at : The two sides only collide at the symmetric point. Counterexample: is even, but away from the origin.
Setting fixes it, and is exactly where correlators are evaluated — so the conclusion survives. But the Taylor-coefficient phrasing sidesteps the whole issue, which is why I’d use it.
6. The same thing, in diagrams
The path-integral proof is airtight but a bit abstract. Here’s the version you’ll actually recognise in a calculation.
Any correlator of photons decomposes, order by order, into diagrams containing closed fermion loops with photons attached. Take a loop with photon legs. Crucially, this comes in two versions — the fermion arrow can run either way around the loop — and both are legitimate distinct diagrams that must be summed.
The three-photon fermion loop, both charge-flow orientations. Each is nonzero. Their sum is not.
Physical one-liner: reversing the arrow reverses the charge flowing around the loop, which is the same as sending at every vertex on it. With vertices, that’s a relative factor of . For odd the two orientations are equal and opposite, and cancel.
Technical version: let be the charge-conjugation matrix, defined by . Then the propagator satisfies . Insert between every factor in the loop trace and use ; each of the vertices contributes one minus sign, and the reversed loop equals times the original.
Explicit check for . The trace is plus the same thing with all loop momenta reversed. Expand the numerator and sort the terms:
- terms with an odd number of ‘s (those carrying an even power of momenta, from the ‘s) die under the trace;
- terms with an even number of ‘s survive the trace but are odd in the loop momenta, so they cancel against the reversed diagram.
Nothing is left.
Neither diagram vanishes on its own. This is a cancellation between two diagrams, not the vanishing of one. If you compute a single orientation and get a nonzero answer, nothing has gone wrong — you’re only half done. This matters in practice: forget the second orientation and you’ll wrongly conclude that Furry’s theorem is violated.
7. Does it hold off-shell?
Yes, and this is the version you actually want.
Look back at the proof: it never mentioned , never used a polarisation vector, never referred to external states at all. It is a statement about the Green’s function of photon fields, which is perfectly well defined for arbitrary off-shell momenta.
The on-shell statement is then a corollary — S-matrix elements come from these Green’s functions via LSZ (amputate, contract with ), and a vanishing Green’s function gives a vanishing amplitude.
The off-shell version is stronger and far more useful, because it lets you kill a fermion loop sitting inside a larger diagram, where its photon legs are virtual. That’s the case that comes up constantly, and it’s the subject of Part 2.
One honest caveat: a correlator of ‘s alone is not gauge invariant, so “this correlator vanishes” is a statement made within a choice of gauge. It holds in any gauge whose gauge-fixing term is even in — covariant gauges , axial gauges — which covers everything you’d normally use.
8. What would break it
The proof used exactly three inputs, so there are exactly three ways to lose the theorem.
-
The measure isn’t invariant. This is the anomaly loophole. It doesn’t bite for C in QED, but it’s the reason the “assume the measure is invariant” step deserves to be stated rather than skipped.
-
The interactions violate C. In pure QED, Furry’s theorem is exact. In the Standard Model, the weak interactions violate C, so it isn’t — diagrams involving and exchange can produce odd-photon amplitudes. They’re there; they’re just heavily suppressed.
-
The background violates C. The proof assumes we’re in the vacuum. A background electromagnetic field, a finite density of matter, a nonzero chemical potential — all of these are C-odd environments, and Furry’s theorem fails in them. This turns out to be physically interesting rather than a disappointment; see Part 2.
Notice what is not on that list: the fermion mass, the gauge choice, the loop order, and whether the photons are on-shell. None of them matter.
Summary
- Claim: for odd , exactly and non-perturbatively.
- Reason: the photon is C-odd, so photons carry C-parity , and the C-even vacuum can’t connect to an odd state.
- Proof: C-invariance of the action plus invariance of the measure gives ; the correlators are the Taylor coefficients of about ; an even functional has no odd coefficients.
- In diagrams: the two arrow orientations of an -photon fermion loop differ by and cancel for odd .
- Three things to get right: the integration by parts in the kinetic term; that is a source and not the current; and that the odd derivatives vanish at , not identically.
Next: Part 2 — what it buys you: no photon tadpole, no three-photon vertex, whole classes of Feynman diagrams deleted for free, why light doesn’t scatter off light until fourth order, and what happens near a magnetar.