Skip to article frontmatterSkip to article content
Site not loading correctly?

This may be due to an incorrect BASE_URL configuration. See the MyST Documentation for reference.

One diagram in full detail: IId (and IIe as a warm-up)

The two preceding sections attack the order-α2\alpha^2 anomalous moment A2A_2 from two directions. The derivation section goes top-down: it starts from the Green function and stops when each of the five diagrams has been reduced to a well-defined integral. The NLO section goes bottom-up: it takes those integrals, hands them to SymPy and Fortran, and reports numbers. Between the two there is a gap. Nowhere is a single diagram carried continuously, with every intermediate expression written out, from the Lagrangian to a closed-form answer.

That gap is what this section fills, for one diagram. We take IId, the diagram in which a one-loop electron self-energy sits on an internal line of the leading-order vertex, and compute

μIId=1124−π218+12log⁡λ2m2\mu_\mathrm{IId} = \frac{11}{24} - \frac{\pi^2}{18} + \frac12\log\frac{\lambda^2}{m^2}

starting from LQED\mathcal{L}_\mathrm{QED} and skipping nothing. IId is the right diagram for this purpose because it needs both kinds of counterterm — a mass counterterm δm\delta m and a field-strength counterterm δZ2\delta Z_2 — because its ultraviolet cancellation can be checked by hand in one line, and because it keeps an infrared divergence which we can trace to its source. A shorter warm-up on diagram IIe comes first, to set up the machinery on a diagram that needs only one counterterm.

Everything here is checked by the scripts named along the way, and all displayed outputs are their actual output. Two of the intermediate results are ones SymPy gets wrong if asked naively; both are shown, because knowing where a computer algebra system lies to you is part of knowing how the calculation works.

The reader is assumed to know what a Feynman diagram is and to have seen a one-loop calculation once. No familiarity with renormalization technique is assumed: the counterterms are constructed here, not quoted.

Conventions, fixed once

Metric gμν=diag(+1,−1,−1,−1)g_{\mu\nu} = \mathrm{diag}(+1,-1,-1,-1); Dirac representation for the γ\gamma matrices, as in code/dirac.py; ℏ=c=1\hbar = c = 1. The Feynman slash is /a=γμaμ\slashed a = \gamma^\mu a_\mu, and

{γμ,γν}=2gμν,σμν=i2[γμ,γν].\{\gamma^\mu,\gamma^\nu\} = 2g^{\mu\nu},\qquad \sigma^{\mu\nu} = \frac{i}{2}\left[\gamma^\mu,\gamma^\nu\right].

The electron mass is mm; we set m=1m=1 in the parametric integrals (it can always be restored by dimensional analysis) but keep it explicit while deriving. The fine structure constant is α=e2/4π\alpha = e^2/4\pi, and the combination that appears in every loop is abbreviated

c≡e216π2=α4π.c \equiv \frac{e^2}{16\pi^2} = \frac{\alpha}{4\pi}.

Per-diagram results are quoted in units of (α/π)2(\alpha/\pi)^2 and written μX\mu_\mathrm{X}, so that ∑XμX=A2\sum_\mathrm{X}\mu_\mathrm{X} = A_2.

Two regulators are in play throughout:

A word on the photon mass, since a massive vector field is not innocent in general. The propagator of a massive vector is

−ik2−λ2(gμν−kμkνλ2),\frac{-i}{k^2-\lambda^2} \left(g_{\mu\nu} - \frac{k_\mu k_\nu}{\lambda^2}\right),

and the kμkν/λ2k_\mu k_\nu/\lambda^2 term is singular as λ→0\lambda\to0. It is harmless here because the photon always attaches to the electron current, which is conserved: the kμkνk_\mu k_\nu piece is contracted with a current jμj^\mu satisfying kμjμ=0k_\mu j^\mu = 0 and drops out identically. That is why the 1950s papers could use a photon mass without further apology, and why we may write the propagator simply as −igμν/(k2−λ2)-ig_{\mu\nu}/(k^2-\lambda^2).

1. The Lagrangian and the rules that follow from it

1.1 The bare Lagrangian

QED with an external classical field AμclA^\mathrm{cl}_\mu is

L=−14F0μνF0μν+ψˉ0(i/∂−m0)ψ0−e0ψˉ0/A0ψ0−e0ψˉ0/Aclψ0,\mathcal{L} = -\frac14 F_{0\mu\nu}F_0^{\mu\nu} + \bar\psi_0\left(i\slashed\partial - m_0\right)\psi_0 - e_0\bar\psi_0\slashed A_0\psi_0 - e_0\bar\psi_0\slashed A^\mathrm{cl}\psi_0,

with F0μν=∂μA0ν−∂νA0μF_{0\mu\nu} = \partial_\mu A_{0\nu} - \partial_\nu A_{0\mu}. The subscript 0 marks bare quantities: the parameters appearing in the Lagrangian, which are not what an experiment measures. Gauge fixing in Feynman gauge adds −12(∂μA0μ)2-\frac{1}{2}(\partial^\mu A_{0\mu})^2, which is what makes the photon propagator proportional to gμνg_{\mu\nu}.

1.2 Renormalized perturbation theory

The reason bare parameters are not the measured ones is that the loop corrections we are about to compute shift them. It is cleaner to say so in the Lagrangian from the start. Define renormalized fields and parameters by

ψ0=Z2 ψ,A0μ=Z3 Aμ,m0=m+δm′,e0Z2Z3=eZ1,\psi_0 = \sqrt{Z_2}\,\psi,\qquad A_0^\mu = \sqrt{Z_3}\,A^\mu,\qquad m_0 = m + \delta m',\qquad e_0 Z_2\sqrt{Z_3} = e Z_1,

and write Z2=1+δ2Z_2 = 1 + \delta_2, Z3=1+δ3Z_3 = 1 + \delta_3, Z1=1+δ1Z_1 = 1 + \delta_1. Substituting into L\mathcal{L} and separating the terms with a δ\delta from those without gives

L=−14FμνFμν+ψˉ(i/∂−m)ψ−eψˉ/Aψ−eψˉ/Aclψ⏟same form, renormalized parameters\mathcal{L} = \underbrace{-\frac14 F_{\mu\nu}F^{\mu\nu} + \bar\psi\left(i\slashed\partial - m\right)\psi - e\bar\psi\slashed A\psi - e\bar\psi\slashed A^\mathrm{cl}\psi}_{\text{same form, renormalized parameters}}
−14δ3FμνFμν+ψˉ(iδ2/∂−δm)ψ−eδ1ψˉ/Aψ−eδ1ψˉ/Aclψ⏟counterterms,\qquad\underbrace{-\frac14\delta_3F_{\mu\nu}F^{\mu\nu} + \bar\psi\left(i\delta_2\slashed\partial - \delta_m\right)\psi - e\delta_1\bar\psi\slashed A\psi - e\delta_1\bar\psi\slashed A^\mathrm{cl}\psi}_{\text{counterterms}},

where δm≡Z2 δm′\delta_m \equiv Z_2\,\delta m' collects the mass shift. The counterterms are ordinary interaction terms with their own Feynman rules; they are not a bookkeeping device applied after the fact. Their values are fixed by renormalization conditions, which is where the physics enters, and we will fix them in §7.

The four counterterms do four different jobs. δm\delta_m makes the pole of the electron propagator sit at the measured mass mm. δ2\delta_2 makes the residue at that pole equal to one. δ3\delta_3 makes the measured charge the residue of the photon pole. δ1\delta_1 renormalizes the vertex, and is tied to δ2\delta_2 by the Ward identity Z1=Z2Z_1 = Z_2. Diagram IId will need δm\delta_m and δ2\delta_2; diagram IIe will need δ3\delta_3.

1.3 The Feynman rules

Reading the rules off the Lagrangian in the standard way:

electron propagator:i(/k+m)k2−m2+iϵ\text{electron propagator:}\qquad \frac{i\left(\slashed k + m\right)}{k^2 - m^2 + i\epsilon}
photon propagator:−igμνk2−λ2+iϵ\text{photon propagator:}\qquad \frac{-ig_{\mu\nu}}{k^2 - \lambda^2 + i\epsilon}
vertex:−ieγμ\text{vertex:}\qquad -ie\gamma^\mu
counterterm vertices:i(/k δ2−δm),−ie δ1γμ,\text{counterterm vertices:}\qquad i\left(\slashed k\,\delta_2 - \delta_m\right),\qquad -ie\,\delta_1\gamma^\mu,

together with the usual ∫d4k/(2π)4\int d^4k/(2\pi)^4 per loop, a factor (−1)(-1) and a trace for each closed fermion loop, and a relative minus sign between diagrams differing by an interchange of external fermion lines. The two-point counterterm vertex i(/kδ2−δm)i(\slashed k\delta_2 - \delta_m) is the one that will appear inside IId, drawn as a cross on an electron line.

2. What we are computing

2.1 The vertex function and aea_e

The object of interest is the amputated three-point function with one photon leg — the vertex function Γμ(p′,p)\Gamma^\mu(p',p), defined so that the scattering amplitude off the external field is

iM=−ie uˉ(p′) Γμ(p′,p) u(p) A~μcl(q),q=p′−p.i\mathcal{M} = -ie\,\bar u(p')\,\Gamma^\mu(p',p)\,u(p)\, \tilde A^\mathrm{cl}_\mu(q),\qquad q = p'-p.

Lorentz invariance, parity and the Ward identity restrict Γμ\Gamma^\mu between on-shell spinors to two form factors (this is derived in the LO section):

uˉ(p′)Γμu(p)=uˉ(p′)[γμF1(q2)+iσμνqν2mF2(q2)]u(p),\bar u(p')\Gamma^\mu u(p) = \bar u(p')\left[\gamma^\mu F_1(q^2) + \frac{i\sigma^{\mu\nu}q_\nu}{2m}F_2(q^2)\right]u(p),

and the LO section shows that the electron’s magnetic moment is g/2=F1(0)+F2(0)g/2 = F_1(0) + F_2(0) with F1(0)=1F_1(0)=1 exactly, so that

ae=g−22=F2(0).a_e = \frac{g-2}{2} = F_2(0).

At order α\alpha this is Schwinger’s α/2π\alpha/2\pi. We want the order α2\alpha^2 piece, one diagram at a time.

2.2 The Gordon decomposition, derived

We will need to convert between the two structures γμ\gamma^\mu and (p+p′)μ(p+p')^\mu, so let us derive the relation between them explicitly. From {γμ,γν}=2gμν\{\gamma^\mu,\gamma^\nu\} = 2g^{\mu\nu} and the definition of σμν\sigma^{\mu\nu},

γμγν=12{γμ,γν}+12[γμ,γν]=gμν−iσμν.\gamma^\mu\gamma^\nu = \frac12\{\gamma^\mu,\gamma^\nu\} + \frac12\left[\gamma^\mu,\gamma^\nu\right] = g^{\mu\nu} - i\sigma^{\mu\nu}.

Contract this with pνp_\nu on the right, and with pν′p'_\nu on the left:

γμ/p=pνγμγν=pμ−iσμνpν,\gamma^\mu\slashed p = p_\nu\gamma^\mu\gamma^\nu = p^\mu - i\sigma^{\mu\nu}p_\nu,
/p′γμ=pν′γνγμ=p′μ−iσνμpν′=p′μ+iσμνpν′,\slashed p'\gamma^\mu = p'_\nu\gamma^\nu\gamma^\mu = p'^\mu - i\sigma^{\nu\mu}p'_\nu = p'^\mu + i\sigma^{\mu\nu}p'_\nu,

using the antisymmetry σνμ=−σμν\sigma^{\nu\mu} = -\sigma^{\mu\nu}. Adding,

γμ/p+/p′γμ=(p+p′)μ+iσμν(p′−p)ν=(p+p′)μ+iσμνqν.\gamma^\mu\slashed p + \slashed p'\gamma^\mu = \left(p+p'\right)^\mu + i\sigma^{\mu\nu}\left(p'-p\right)_\nu = \left(p+p'\right)^\mu + i\sigma^{\mu\nu}q_\nu.

Now sandwich between on-shell spinors and use the Dirac equations /p u(p)=m u(p)\slashed p\,u(p) = m\,u(p) and uˉ(p′)/p′=m uˉ(p′)\bar u(p')\slashed p' = m\,\bar u(p'). The left-hand side becomes 2m uˉ(p′)γμu(p)2m\,\bar u(p')\gamma^\mu u(p), so

uˉ(p′)γμu(p)=uˉ(p′)[(p+p′)μ2m+iσμνqν2m]u(p).\bar u(p')\gamma^\mu u(p) = \bar u(p')\left[ \frac{\left(p+p'\right)^\mu}{2m} + \frac{i\sigma^{\mu\nu}q_\nu}{2m}\right]u(p).

That is the Gordon decomposition. Solving it for iσμνqνi\sigma^{\mu\nu}q_\nu and substituting into the form-factor decomposition gives the form we will actually use,

Γμ=γμ(F1+F2)−(p+p′)μ2mF2.\Gamma^\mu = \gamma^\mu\left(F_1+F_2\right) - \frac{\left(p+p'\right)^\mu}{2m}F_2 .

So if we can reduce a computed Γμ\Gamma^\mu to the form Aγμ+B(p+p′)μ\mathcal{A}\gamma^\mu + \mathcal{B}(p+p')^\mu, then

F2=−2m B.F_2 = -2m\,\mathcal{B}.

One warning about this, which matters later. The two structures γμ\gamma^\mu and (p+p′)μ(p+p')^\mu are independent as matrices, but not after being sandwiched between spinors at q=0q=0: the Gordon relation at q=0q = 0 reads uˉγμu=uˉ (p+p′)μu/2m\bar u\gamma^\mu u = \bar u\,(p+p')^\mu u/2m, so the two sandwiches are proportional. Extracting B\mathcal{B} therefore requires either keeping q≠0q\ne0, or working with the unsandwiched matrix and using the Dirac equation only at the far ends of the string. We do the latter where the algebra is clean, and keep q≠0q\neq0 where it is not.

2.3 The explicit projector used by the code

The scripts do the extraction in a way that is easy to automate: pick the Breit frame, where

p=(E,0,0,w),p′=(E,0,0,−w),q=(0,0,0,−2w),p = (E,0,0,w),\qquad p' = (E,0,0,-w),\qquad q = (0,0,0,-2w),
E=m2+w2,q2=−4w2,E = \sqrt{m^2+w^2},\qquad q^2 = -4w^2,

so both electrons are on shell automatically and q2→0q^2\to0 means w→0w\to0. Sandwiching with explicit spinors for two choices of (μ,s′,s)(\mu,s',s) gives two independent linear equations for F1,F2F_1,F_2. Writing Aμ(s′,s)=uˉ(p′,s′)Γμu(p,s)A_\mu^{(s',s)} = \bar u(p',s')\Gamma^\mu u(p,s) and using the two choices (0,↑,↑)(0,\uparrow,\uparrow) and (1,↑,↓)(1,\uparrow,\downarrow), the basis sandwiches evaluate to

uˉγ0u=2m,uˉiσ0νqν2mu=−2w2m(μ=0, s′=s=↑),\bar u\gamma^0u = 2m,\quad \bar u\frac{i\sigma^{0\nu}q_\nu}{2m}u = -\frac{2w^2}{m} \qquad (\mu=0,\ s'=s=\uparrow),
uˉγ1u=−2w,uˉiσ1νqν2mu=−2w(μ=1, s′=↑,s=↓),\bar u\gamma^1u = -2w,\quad \bar u\frac{i\sigma^{1\nu}q_\nu}{2m}u = -2w \qquad (\mu=1,\ s'=\uparrow,s=\downarrow),

and solving the 2×22\times2 system and letting w→0w\to0 gives the shortcut that code/g2_iid.py uses,

F2(0)=−12[A0∣w=0+∂A1∂w∣w=0](m=1).F_2(0) = -\frac12\left[A_0\big|_{w=0} + \frac{\partial A_1}{\partial w}\bigg|_{w=0}\right]\qquad (m=1).

Note that the μ=1\mu=1 sandwich alone would be degenerate — it measures only the combination F1+F2F_1+F_2, since both basis structures equal −2w-2w — which is the same degeneracy noted above, and the reason a second sandwich is needed.

3. From the Green function to this diagram

3.1 Gell-Mann–Low and Dyson

Everything starts from the time-ordered Green function of interacting fields,

Gμ(x′;y;x)=⟨Ω∣T ψ(x′)Aμ(y)ψˉ(x)∣Ω⟩,G^\mu(x';y;x) = \langle\Omega|T\,\psi(x')A^\mu(y)\bar\psi(x)|\Omega\rangle,

which the Gell-Mann–Low theorem rewrites in terms of free fields and the interaction Hamiltonian,

Gμ=⟨0∣T ψI(x′)AIμ(y)ψˉI(x) exp⁡(i∫d4z Lint)∣0⟩⟨0∣Texp⁡(i∫d4z Lint)∣0⟩.G^\mu = \frac{\langle0|T\,\psi_I(x')A_I^\mu(y)\bar\psi_I(x)\, \exp\left(i\int d^4z\,\mathcal{L}_\mathrm{int}\right)|0\rangle} {\langle0|T\exp\left(i\int d^4z\,\mathcal{L}_\mathrm{int}\right)|0\rangle}.

Expanding the exponential is the Dyson series. With Lint=−eψˉ/Aψ\mathcal{L}_\mathrm{int} = -e\bar\psi\slashed A\psi the term with nn interaction vertices is

(−ie)nn!∫d4z1⋯d4zn  ⟨0∣T ψ(x′)Aμ(y)ψˉ(x) (ψˉ/Aψ)(z1)⋯(ψˉ/Aψ)(zn)∣0⟩,\frac{(-ie)^n}{n!}\int d^4z_1\cdots d^4z_n\; \langle0|T\,\psi(x')A^\mu(y)\bar\psi(x)\, \left(\bar\psi\slashed A\psi\right)(z_1)\cdots \left(\bar\psi\slashed A\psi\right)(z_n)|0\rangle,

and the denominator cancels exactly the disconnected vacuum pieces of the numerator.

3.2 Which order do we need?

Count powers of ee. The external-field vertex carries one power; each internal photon carries two (one at each end). The leading-order vertex correction has one internal photon: e1⋅e2=e3e^1\cdot e^2 = e^3. The two-loop corrections have two internal photons: e1⋅e4=e5e^1\cdot e^4 = e^5. Since aea_e is measured in units where the LO term is α/2π∝e2\alpha/2\pi \propto e^2 relative to the tree vertex, the order e5e^5 terms give the (α/π)2(\alpha/\pi)^2 contributions. So we want n=5n=5.

In addition there are terms with counterterm vertices. A counterterm is itself of order e2e^2 (it is fixed by a one-loop calculation), so a diagram with three ordinary vertices and one two-point counterterm is also of order e3⋅e2=e5e^3\cdot e^2 = e^5 and must be included. That is exactly the δm\delta m insertion diagram which pairs with IId.

3.3 Wick’s theorem and the contraction that gives IId

Wick’s theorem turns the vacuum expectation value into a sum over complete pairings of the fields, each pairing contributing a product of propagators, with a sign (−1)P(-1)^P for the permutation PP needed to bring the paired fermion operators adjacent. For our correlator at order n=5n=5 there are 6!6! ways to pair the six ψ\psi’s with the six ψˉ\bar\psi’s and 15 ways to pair the six photon fields (three from the ziz_i vertices plus the external one — more precisely, at order 5 there are five vertex photons and one external, giving (6−1)!!=15(6-1)!! = 15 perfect matchings), for a total of 15×6!=1080015\times 6! = 10800 complete contractions.

code/wick_enum.py enumerates all of them and classifies each by topology and fermion-loop count. The relevant rows of its output are

order e^5:  10800 complete contractions (15 photon matchings x 6! fermion pairings)
  topology class                                                      count  /n! sign
  IIc: corner, vertex part at an internal vertex (+ mirror)             240    2 +1
  IId: self-energy on an internal line (+ mirror)                       240    2 +1
  I: crossed ladder                                                     120    1 +1
  IIa: ladder (vertex part at the external vertex)                      120    1 +1
  IIe: vacuum polarization in the internal photon                       120    1 -1

Read the IId row: 240 contractions, which after dividing by the 5!5! from the Dyson denominator gives weight 2. That factor of two is not a symmetry factor; it is the statement that there are two distinct diagrams of this topology — the self-energy can sit on either of the two internal electron lines — and they are mirror images of one another. The Breit-frame projection is symmetric under the reflection that exchanges them, so we compute one and double it. The sign is +1: IId has no closed fermion loop. (IIe’s -1 in the last row is the closed-loop sign, and it is already included in the standard definition of Πμν\Pi^{\mu\nu}.)

Concretely, one of the 240 contractions is the following. Label the five vertices z1,…,z5z_1,\dots,z_5 in the order in which the fermion line visits them, running from the incoming electron at xx to the outgoing one at x′x'. Let the external photon attach at z4z_4. Contract the photon field at z1z_1 with the one at z5z_5: that is the outer photon, and since z4z_4 lies between them it spans the external vertex, which is the leading-order vertex topology. Contract the remaining two photon fields, at z2z_2 and z3z_3, with each other: these are adjacent vertices with no external attachment between them, so the blob they form is a self-energy correction sitting on the internal electron line that runs from z1z_1 to z4z_4.

That distinction is the whole taxonomy in one sentence. If the inner photon had spanned the external vertex (z2z_2 to z5z_5, say) we would have a vertex subgraph and the diagram would be IIc or IIa; because it connects two adjacent vertices on a single internal segment, it is a self-energy and the diagram is IId. All 240 members of the class differ from this one by relabelling the ziz_i, which the 1/5!1/5! absorbs, and by the mirror reflection that puts the blob on the z4z_4–z5z_5 segment instead.

3.4 What LSZ does with the rest

Most of the 10800 contractions never reach Γμ\Gamma^\mu:

What remains is the five 1PI vertex cores, of which IId is one.

4. Where the Feynman rules come from: one contraction, done by hand

Section 1.3 listed the Feynman rules and §3 said which contraction we want, but between those two statements there is a real calculation: Wick’s theorem produces a sum of position-space products of propagators, and turning one of those products into a momentum-space integral is what defines the rules. This section does that calculation once, completely, on the simplest nontrivial case — the one-loop vertex correction at order e3e^3 — and then adds the one rule that cannot be seen at that order, the closed fermion loop, which is exactly the ingredient diagram IIe needs.

Nothing here is quoted. We start from the Dyson series and end with

uˉ(p′) δΓLOμ u(p)=∫d4k(2π)4  uˉ(p′) (−ieγν) i(/k′+m)k′2−m2 γμ i(/k+m)k2−m2 (−ieγρ) u(p)  −igνρkγ2−λ2,\bar u(p')\,\delta\Gamma^\mu_\mathrm{LO}\,u(p) = \int\frac{\mathrm{d}^4k}{(2\pi)^4}\; \bar u(p')\,(-ie\gamma^\nu)\, \frac{i(\slashed{k}'+m)}{k'^2-m^2}\,\gamma^\mu\, \frac{i(\slashed{k}+m)}{k^2-m^2}\,(-ie\gamma^\rho)\,u(p)\; \frac{-ig_{\nu\rho}}{k_\gamma^2-\lambda^2},

which is the formula §6.1 takes as its starting point. Once it has been obtained this way, the “rules” are visible as a pattern in the answer, and no further contraction ever has to be done by hand.

4.1 The two propagators

Wick’s theorem expresses a time-ordered vacuum expectation value as a sum over complete pairings, each pairing contributing a product of contractions, and a contraction of two free fields is by definition the free two-point function. For the two fields we have:

ψa(x) ψˉb(y)‾≡⟨0∣T ψa(x)ψˉb(y)∣0⟩=Sab(x−y),\overline{\psi_a(x)\,\bar\psi_b(y)} \equiv \langle0|T\,\psi_a(x)\bar\psi_b(y)|0\rangle = S_{ab}(x-y),
Aα(x) Aβ(y)‾≡⟨0∣T Aα(x)Aβ(y)∣0⟩=Dαβ(x−y).\overline{A_\alpha(x)\,A_\beta(y)} \equiv \langle0|T\,A_\alpha(x)A_\beta(y)|0\rangle = D_{\alpha\beta}(x-y).

Both are Green functions of the corresponding free wave operator, which fixes them without any further work. The Dirac field satisfies (i/∂−m)ψ=0(i\slashed\partial - m)\psi = 0, and the time-ordering step function produces a contact term, giving

(i/∂x−m)S(x−y)=i δ4(x−y).\left(i\slashed\partial_x - m\right)S(x-y) = i\,\delta^4(x-y).

Writing S(x−y)=∫d4k(2π)4e−ik⋅(x−y)S~(k)S(x-y) = \int\frac{d^4k}{(2\pi)^4}e^{-ik\cdot(x-y)}\tilde S(k) and using i/∂xe−ikx=/k e−ikxi\slashed\partial_x e^{-ikx} = \slashed k\,e^{-ikx},

(/k−m)S~(k)=i⟹S~(k)=i/k−m=i(/k+m)k2−m2,\left(\slashed k - m\right)\tilde S(k) = i \quad\Longrightarrow\quad \tilde S(k) = \frac{i}{\slashed k - m} = \frac{i\left(\slashed k+m\right)}{k^2-m^2},

where the last step multiplies numerator and denominator by /k+m\slashed k+m and uses /k/k=k2\slashed k\slashed k = k^2. The +iϵ+i\epsilon that selects the Feynman contour is understood. The same argument for the photon in Feynman gauge, where the wave operator is −gαβ ∂2-g_{\alpha\beta}\,\partial^2 (plus the mass term λ2\lambda^2), gives

D~αβ(k)=−igαβk2−λ2.\tilde D_{\alpha\beta}(k) = \frac{-ig_{\alpha\beta}}{k^2-\lambda^2}.

These two expressions are the entire input. Everything else below is combinatorics and Fourier transforms.

4.2 The Dyson series at order e3e^3, written out

From §3.1, the term of the Green function with three interaction vertices is

Gμ,(3)(x′,y,x)=i33!∫d4z1 d4z2 d4z3  ⟨0∣T ψ(x′)Aμ(y)ψˉ(x) Lint(z1)Lint(z2)Lint(z3)∣0⟩,G^{\mu,(3)}(x',y,x) = \frac{i^3}{3!}\int d^4z_1\,d^4z_2\,d^4z_3\; \langle0|T\,\psi(x')A^\mu(y)\bar\psi(x)\, \mathcal{L}_\mathrm{int}(z_1)\mathcal{L}_\mathrm{int}(z_2) \mathcal{L}_\mathrm{int}(z_3)|0\rangle,

and with Lint(z)=−e ψˉ(z)γαψ(z)Aα(z)\mathcal{L}_\mathrm{int}(z) = -e\,\bar\psi(z)\gamma^\alpha\psi(z)A_\alpha(z) each factor iLinti\mathcal{L}_\mathrm{int} carries i⋅(−e)=−iei\cdot(-e) = -ie:

Gμ,(3)=(−ie)33!∫d4z1 d4z2 d4z3  ⟨0∣T ψ(x′)Aμ(y)ψˉ(x) (ψˉγα1ψAα1)(z1)(ψˉγα2ψAα2)(z2)(ψˉγα3ψAα3)(z3)∣0⟩.G^{\mu,(3)} = \frac{\left(-ie\right)^3}{3!} \int d^4z_1\,d^4z_2\,d^4z_3\; \langle0|T\,\psi(x')A^\mu(y)\bar\psi(x)\, \left(\bar\psi\gamma^{\alpha_1}\psi A_{\alpha_1}\right)(z_1) \left(\bar\psi\gamma^{\alpha_2}\psi A_{\alpha_2}\right)(z_2) \left(\bar\psi\gamma^{\alpha_3}\psi A_{\alpha_3}\right)(z_3)|0\rangle.

There is the first Feynman rule already: the factor −ie-ie per vertex is nothing but ii from the Dyson exponential times the coupling −e-e from the Lagrangian. The γαi\gamma^{\alpha_i} that accompanies it is the Dirac structure of the interaction term.

4.3 Counting the contractions

The fields to be paired are, on the fermion side,

ψ(x′), ψ(z1), ψ(z2), ψ(z3)andψˉ(x), ψˉ(z1), ψˉ(z2), ψˉ(z3),\psi(x'),\ \psi(z_1),\ \psi(z_2),\ \psi(z_3) \qquad\text{and}\qquad \bar\psi(x),\ \bar\psi(z_1),\ \bar\psi(z_2),\ \bar\psi(z_3),

four of each, hence 4!=244! = 24 ways to pair them; and on the photon side

Aμ(y), Aα1(z1), Aα2(z2), Aα3(z3),A^\mu(y),\ A_{\alpha_1}(z_1),\ A_{\alpha_2}(z_2),\ A_{\alpha_3}(z_3),

four fields, hence 3 perfect matchings (4 objects pair up in 3!!=33!! = 3 ways). In total 24×3=7224\times3 = 72 complete contractions, which is exactly what code/wick_enum.py reports:

order e^3:  72 complete contractions (3 photon matchings x 4! fermion pairings)

Its classification of those 72 is

topology class                                                      count  /n! sign
  tadpole loop  tr[gamma S(0)] = 0                                       39    - +1/-1
  external-leg corrections only (tree vertex)                            12    2 +1
  III: VP on the external-potential line x tree vertex                    6    1 -1
  LO one-loop vertex correction                                           6    1 +1
  forward line x (rest): no scattering / disconnected                     6    1 -1
  disconnected (vacuum bubble or detached blob)                           3    - -1
  total                                                                  72   12

and we now take the fourth row apart.

4.4 The contraction we want

Choose the pairing in which the fermion line runs x→z1→z2→z3→x′x\to z_1\to z_2\to z_3\to x', the external photon at yy attaches to the middle vertex z2z_2, and the photons at z1z_1 and z3z_3 contract with each other:

ψ(x′)ψˉ(z3)‾,ψ(z3)ψˉ(z2)‾,ψ(z2)ψˉ(z1)‾,ψ(z1)ψˉ(x)‾,\overline{\psi(x')\bar\psi(z_3)},\quad \overline{\psi(z_3)\bar\psi(z_2)},\quad \overline{\psi(z_2)\bar\psi(z_1)},\quad \overline{\psi(z_1)\bar\psi(x)},
Aμ(y)Aα2(z2)‾,Aα1(z1)Aα3(z3)‾.\overline{A^\mu(y)A_{\alpha_2}(z_2)},\qquad \overline{A_{\alpha_1}(z_1)A_{\alpha_3}(z_3)}.

Because the internal photon connects z1z_1 and z3z_3 while the external photon sits at z2z_2 between them, this photon spans the external vertex: it is the one-loop vertex correction.

4.5 The Dirac indices chain into a matrix product

Write the vertex bilinears with explicit spinor indices, so that everything is a product of anticommuting numbers with cc-number γ\gamma’s in between:

(ψˉγαψ)(z)=ψˉi(z)(γα)ijψj(z).\left(\bar\psi\gamma^{\alpha}\psi\right)(z) = \bar\psi_i(z)\left(\gamma^{\alpha}\right)_{ij}\psi_j(z).

Each bilinear contains two fermion fields, so it is Grassmann-even and commutes with everything: we may reorder the three vertex factors at will, without any sign. Choose the order z3,z2,z1z_3,z_2,z_1 and write the whole fermion string as

ψa(x′)  [ψˉi3(z3)γi3j3α3ψj3(z3)][ψˉi2(z2)γi2j2α2ψj2(z2)][ψˉi1(z1)γi1j1α1ψj1(z1)]ψˉb(x).\psi_a(x')\; \left[\bar\psi_{i_3}(z_3)\gamma^{\alpha_3}_{i_3j_3}\psi_{j_3}(z_3)\right] \left[\bar\psi_{i_2}(z_2)\gamma^{\alpha_2}_{i_2j_2}\psi_{j_2}(z_2)\right] \left[\bar\psi_{i_1}(z_1)\gamma^{\alpha_1}_{i_1j_1}\psi_{j_1}(z_1)\right] \bar\psi_b(x).

Now read the fields left to right:

ψa(x′), ψˉi3(z3), ψj3(z3), ψˉi2(z2), ψj2(z2), ψˉi1(z1), ψj1(z1), ψˉb(x).\psi_a(x'),\ \bar\psi_{i_3}(z_3),\ \psi_{j_3}(z_3),\ \bar\psi_{i_2}(z_2),\ \psi_{j_2}(z_2),\ \bar\psi_{i_1}(z_1),\ \psi_{j_1}(z_1),\ \bar\psi_b(x).

Every contraction we want is between neighbours: the 1st with the 2nd, the 3rd with the 4th, the 5th with the 6th, the 7th with the 8th. No field has to be moved past any other, so

 the fermion sign of an open line is +1. \boxed{\ \text{the fermion sign of an open line is } +1.\ }

This is not an accident of this diagram. Any open fermion line can be brought to this form by reordering the (even) bilinears along the line, so every diagram without a closed loop has sign +1; the signs that matter are the relative ones between diagrams that exchange external legs, and the (−1)(-1) per closed loop derived in §4.10.

The spinor indices now chain automatically:

Sai3(x′−z3) γi3j3α3 Sj3i2(z3−z2) γi2j2α2 Sj2i1(z2−z1) γi1j1α1 Sj1b(z1−x),S_{a i_3}(x'-z_3)\,\gamma^{\alpha_3}_{i_3 j_3}\, S_{j_3 i_2}(z_3-z_2)\,\gamma^{\alpha_2}_{i_2 j_2}\, S_{j_2 i_1}(z_2-z_1)\,\gamma^{\alpha_1}_{i_1 j_1}\, S_{j_1 b}(z_1-x),

each repeated index summed with its neighbour. This is a matrix product, read from the outgoing end to the incoming end — which is why Feynman diagrams are written right-to-left along the fermion line. That convention is a consequence of the index bookkeeping, not a choice.

Including the photon contractions, the contribution of this one pairing to Gμ,(3)G^{\mu,(3)} is

(−ie)33!∫d4z1d4z2d4z3  [S(x′−z3)γα3S(z3−z2)γα2S(z2−z1)γα1S(z1−x)]\frac{\left(-ie\right)^3}{3!}\int d^4z_1d^4z_2d^4z_3\; \left[S(x'-z_3)\gamma^{\alpha_3}S(z_3-z_2)\gamma^{\alpha_2} S(z_2-z_1)\gamma^{\alpha_1}S(z_1-x)\right]
×  Dμα2(y−z2)  Dα1α3(z1−z3).\times\;D^{\mu}{}_{\alpha_2}(y-z_2)\; D_{\alpha_1\alpha_3}(z_1-z_3).

4.6 Why the 1/3!1/3! disappears

The pairing above is one of the 72. But five others give exactly the same expression: the three labels z1,z2,z3z_1,z_2,z_3 can be assigned to the three roles (first vertex on the line, external-photon vertex, last vertex) in 3!=63! = 6 ways, and since z1,z2,z3z_1,z_2,z_3 are integration variables, relabelling them turns any one of those six into any other. They are six distinct terms of Wick’s theorem with identical values.

That is the count wick_enum.py reports for this class, and it cancels the Dyson denominator exactly:

13!×6=1.\frac{1}{3!}\times 6 = 1 .

The same argument works at every order — the n!n! ways of relabelling nn vertices cancel the 1/n!1/n! — which is why the rules carry no factorials. (The classes whose count is not n!n! are the ones with a genuine symmetry factor; wick_enum.py’s “/n!” column is exactly this weight, and it is 1 here.) So

Gvertexμ,(3)=(−ie)3∫d4z1d4z2d4z3  [SγSγSγS] D DG^{\mu,(3)}_\mathrm{vertex} = \left(-ie\right)^3 \int d^4z_1d^4z_2d^4z_3\; \left[S\gamma S\gamma S\gamma S\right]\,D\,D

with the arguments as above.

4.7 To momentum space

Substitute the Fourier representation of every propagator. Give each one a momentum flowing in the direction of its first argument minus its second, i.e. write S(a−b)=∫ke−ik⋅(a−b)S~(k)S(a-b) = \int_k e^{-ik\cdot(a-b)}\tilde S(k) with ∫k≡∫d4k/(2π)4\int_k \equiv \int d^4k/(2\pi)^4, so that kk flows from bb to aa. Name the momenta

k0: x→z1,k: z1→z2,k′: z2→z3,k4: z3→x′,k_0:\ x\to z_1,\qquad k:\ z_1\to z_2,\qquad k':\ z_2\to z_3,\qquad k_4:\ z_3\to x',
ℓ: z1→z3 (internal photon),q: y→z2 (external photon),\ell:\ z_1\to z_3\ \text{(internal photon)},\qquad q:\ y\to z_2\ \text{(external photon)},

which means writing the two photon contractions as Dα3α1(z3−z1)D_{\alpha_3\alpha_1}(z_3-z_1) and Dα2μ(z2−y)D_{\alpha_2}{}^{\mu}(z_2-y) — both allowed, since Dαβ(a−b)=Dβα(b−a)D_{\alpha\beta}(a-b) = D_{\beta\alpha}(b-a) because the photon propagator is even in its momentum.

Now every ziz_i appears only in exponentials, and each zz integral is a delta function. Collect the phases at z1z_1: the propagator S(z1−x)S(z_1-x) contributes e−ik0z1e^{-ik_0z_1}, the propagator S(z2−z1)S(z_2-z_1) contributes e+ikz1e^{+ikz_1}, and D(z3−z1)D(z_3-z_1) contributes e+iℓz1e^{+i\ell z_1}, so

∫d4z1  ei(k+ℓ−k0)z1=(2π)4δ4(k+ℓ−k0)⟹k0=k+ℓ.\int d^4z_1\;e^{i\left(k+\ell-k_0\right)z_1} = \left(2\pi\right)^4\delta^4\left(k+\ell-k_0\right) \quad\Longrightarrow\quad k_0 = k+\ell .

Likewise at z2z_2 (phases e−ikz2e^{-ikz_2}, e+ik′z2e^{+ik'z_2}, e−iqz2e^{-iqz_2}) and at z3z_3 (phases e−ik′z3e^{-ik'z_3}, e+ik4z3e^{+ik_4z_3}, e−iℓz3e^{-i\ell z_3}):

∫d4z2  ⇒  k′=k+q,∫d4z3  ⇒  k4=k′+ℓ.\int d^4z_2 \;\Rightarrow\; k' = k+q, \qquad \int d^4z_3 \;\Rightarrow\; k_4 = k'+\ell .

This is the rule “momentum is conserved at every vertex”, and it comes from nothing but the zz integration of plane waves. Three delta functions against four propagator momenta plus the external ones leave exactly one momentum unfixed — the loop momentum — with its ∫d4k/(2π)4\int d^4k/(2\pi)^4 left over. That is the rule “one unconstrained integration per loop.”

4.8 Amputation, and the answer

The external legs carry k0k_0 and k4k_4 and the external photon carries qq. LSZ instructs us to Fourier transform in x,x′,yx,x',y, put the external momenta on shell, strip the three external propagators, and replace the external fermion legs by the spinors u(p)u(p) and uˉ(p′)\bar u(p'). So we set

k0=p,k4=p′,k_0 = p,\qquad k_4 = p',

and drop S~(p)\tilde S(p), S~(p′)\tilde S(p') and the external photon propagator, leaving its index μ\mu at the vertex z2z_2. From k0=k+ℓk_0 = k+\ell,

ℓ=p−k,\ell = p - k,

so the internal photon carries p−kp-k; since it enters only through ℓ2=(p−k)2=(k−p)2\ell^2 = (p-k)^2 = (k-p)^2, this is the kγ=k−pk_\gamma = k-p of §6.1. And from k′=k+qk' = k+q the second fermion propagator carries k+qk+q, as advertised. The one remaining integration is over kk.

Finally, Γμ\Gamma^\mu was defined in §2.1 with the external-vertex factor −ie-ie stripped off, so the vertex at z2z_2 contributes a bare γμ\gamma^\mu and only two factors of −ie-ie survive. Putting it together, and renaming α3→ν\alpha_3\to\nu, α1→ρ\alpha_1\to\rho:

  uˉ(p′) δΓLOμ u(p)=∫d4k(2π)4  uˉ(p′) (−ieγν) i(/k′+m)k′2−m2 γμ i(/k+m)k2−m2 (−ieγρ) u(p)  −igνρkγ2−λ2  \boxed{\;\bar u(p')\,\delta\Gamma^\mu_\mathrm{LO}\,u(p) = \int\frac{\mathrm{d}^4k}{(2\pi)^4}\; \bar u(p')\,(-ie\gamma^\nu)\, \frac{i(\slashed{k}'+m)}{k'^2-m^2}\,\gamma^\mu\, \frac{i(\slashed{k}+m)}{k^2-m^2}\,(-ie\gamma^\rho)\,u(p)\; \frac{-ig_{\nu\rho}}{k_\gamma^2-\lambda^2}\;}

which is precisely the expression §6.1 starts from — now derived rather than quoted.

4.9 Reading off the rules

Look at what the derivation produced, and where each piece came from:

in the answercame from
−ieγα-ie\gamma^\alpha per vertexii from the Dyson exponential ×\times −eγα-e\gamma^\alpha from Lint\mathcal{L}_\mathrm{int} (§4.2)
i(/k+m)/(k2−m2)i(\slashed k+m)/(k^2-m^2) per internal fermion linethe contraction S~(k)\tilde S(k), i.e. the Dirac Green function (§4.1)
−igαβ/(k2−λ2)-ig_{\alpha\beta}/(k^2-\lambda^2) per internal photon linethe contraction D~(k)\tilde D(k) (§4.1)
matrices multiplied against the fermion arrowthe chaining of spinor indices (§4.5)
no 1/n!1/n!cancelled by the n!n! vertex relabellings (§4.6)
momentum conserved at each vertexthe ∫d4z\int d^4z of plane waves (§4.7)
∫d4k/(2π)4\int d^4k/(2\pi)^4 per loopthe momentum left unfixed by those deltas (§4.7)
uˉ(p′)…u(p)\bar u(p')\ldots u(p), no external propagatorsLSZ amputation (§4.8)
overall sign +1open fermion line, all contractions adjacent (§4.5)

That table is §1.3. From here on we use it as a shortcut, having seen that it is a shortcut and not an axiom.

4.10 The rule that needs order e5e^5: closed fermion loops

One rule cannot be seen at order e3e^3 in a vertex diagram, and it is the one diagram IIe depends on. Consider a contraction in which two vertices zaz_a and zbz_b have their fermion fields paired with each other in both directions,

ψ(za)ψˉ(zb)‾andψ(zb)ψˉ(za)‾,\overline{\psi(z_a)\bar\psi(z_b)}\quad\text{and}\quad \overline{\psi(z_b)\bar\psi(z_a)},

so that the fermion line closes on itself. Write the two bilinears with indices, in the order they appear:

[ψˉi(za)Γij(a)ψj(za)][ψˉk(zb)Γkl(b)ψl(zb)],\left[\bar\psi_i(z_a)\Gamma^{(a)}_{ij}\psi_j(z_a)\right] \left[\bar\psi_k(z_b)\Gamma^{(b)}_{kl}\psi_l(z_b)\right],

so the fields in order are ψˉi(za), ψj(za), ψˉk(zb), ψl(zb)\bar\psi_i(z_a),\ \psi_j(z_a),\ \bar\psi_k(z_b),\ \psi_l(z_b).

The first contraction, ψj(za)\psi_j(z_a) with ψˉk(zb)\bar\psi_k(z_b), is between neighbours (positions 2 and 3): no sign, and it gives Sjk(za−zb)S_{jk}(z_a-z_b).

The second is the problem. What is left is ψˉi(za) ψl(zb)\bar\psi_i(z_a)\,\psi_l(z_b) — in that order — whereas the contraction is defined as ⟨0∣T ψl(zb)ψˉi(za)∣0⟩=Sli(zb−za)\langle0|T\,\psi_l(z_b)\bar\psi_i(z_a)|0\rangle = S_{li}(z_b-z_a), with ψ\psi to the left of ψˉ\bar\psi. Since these are anticommuting fields, exchanging them costs a minus sign:

ψˉi(za) ψl(zb)=− ψl(zb) ψˉi(za)⟹ψˉi(za) ψl(zb)‾=− Sli(zb−za).\bar\psi_i(z_a)\,\psi_l(z_b) = -\,\psi_l(z_b)\,\bar\psi_i(z_a) \quad\Longrightarrow\quad \overline{\bar\psi_i(z_a)\,\psi_l(z_b)} = -\,S_{li}(z_b-z_a).

One transposition, one minus sign. Collecting the two contractions with the γ\gamma’s:

− Γij(a) Sjk(za−zb) Γkl(b) Sli(zb−za),-\,\Gamma^{(a)}_{ij}\,S_{jk}(z_a-z_b)\,\Gamma^{(b)}_{kl}\, S_{li}(z_b-z_a),

and now note the index pattern: ii starts the chain and ii also ends it. The chain closes, and a matrix product whose first and last index are summed together is a trace:

  =− tr[Γ(a) S(za−zb) Γ(b) S(zb−za)].  \boxed{\;= -\,\mathrm{tr}\left[\Gamma^{(a)}\,S(z_a-z_b)\, \Gamma^{(b)}\,S(z_b-z_a)\right].\;}

Both special features of a closed fermion loop — the overall (−1)(-1) and the Dirac trace — come from this single reordering. The minus sign is the anticommutativity of the fields; the trace is the fact that a closed line has no free spinor index. The argument generalizes to a loop with any number nn of vertices: n−1n-1 of the contractions are between neighbours and the last one closes the cycle at the cost of one transposition, so the sign is (−1)(-1) per loop regardless of its size.

Applying this to two vertices joined to the rest of the diagram by photons of indices μ,ν\mu,\nu, going to momentum space exactly as in §4.7, and calling the loop momentum ll and the photon momentum kk:

iΠμν(k)=(−1)∫d4l(2π)4  tr[(−ieγμ)i(/l+m)l2−m2(−ieγν)i(/l−/k+m)(l−k)2−m2],i\Pi^{\mu\nu}(k) = \left(-1\right)\int\frac{\mathrm{d}^4l}{(2\pi)^4}\; \mathrm{tr}\left[\left(-ie\gamma^\mu\right) \frac{i\left(\slashed l+m\right)}{l^2-m^2} \left(-ie\gamma^\nu\right) \frac{i\left(\slashed l-\slashed k+m\right)} {\left(l-k\right)^2-m^2}\right],

which is the definition §6.1 uses. Its two internal fermion lines are the two contractions above; its (−1)(-1) and its trace are what we just derived; and its (−ieγ)(-ie\gamma)'s, its propagators and its single loop integration are the rules of §4.9.

Diagram IIe is then the contraction, at order e5e^5, in which the internal photon of §4.4 is cut and this loop inserted between the two halves — which in momentum space is exactly the replacement

−igνρkγ2−λ2  ⟶  −igναkγ2−λ2  [iΠαβ(kγ)]  −igβρkγ2−λ2\frac{-ig_{\nu\rho}}{k_\gamma^2-\lambda^2}\;\longrightarrow\; \frac{-ig_{\nu\alpha}}{k_\gamma^2-\lambda^2}\; \left[i\Pi^{\alpha\beta}(k_\gamma)\right]\; \frac{-ig_{\beta\rho}}{k_\gamma^2-\lambda^2}

that §6.1 performs. Nothing else about IIe requires a new rule.

4.11 The counterterm vertices

The counterterm terms of §1.2 are ordinary interaction terms, so they go through the identical derivation. From

Lct⊃ψˉ(iδ2/∂−δm)ψ,\mathcal{L}_\mathrm{ct} \supset \bar\psi\left(i\delta_2\slashed\partial - \delta_m\right)\psi,

the same ii from the Dyson exponential and the same Fourier transform i/∂→/ki\slashed\partial\to\slashed k give a two-point vertex

i(/k δ2−δm),i\left(\slashed k\,\delta_2 - \delta_m\right),

which is the rule quoted in §1.3 and the one that will be inserted on an electron line in §9.1. Its value is not fixed by this construction — it is fixed by the renormalization conditions of §8.2, which is the whole content of renormalization.

5. The loop-integration toolkit

Both diagrams below arrive in the same shape: a polynomial numerator divided by a product of propagator denominators,

∫d4k(2π)4  N(k)P1(k)n1 P2(k)n2⋯Pj(k)nj,Pi(k)=(k−ai)2−mi2+iϵ,\int\frac{\mathrm{d}^4k}{(2\pi)^4}\; \frac{N(k)}{P_1(k)^{n_1}\,P_2(k)^{n_2}\cdots P_j(k)^{n_j}}, \qquad P_i(k) = \left(k-a_i\right)^2 - m_i^2 + i\epsilon,

where NN is a polynomial in the components kμk^\mu (produced by the /k\slashed{k}'s of the fermion propagators and the γ\gamma’s of the vertices), each aia_i is a fixed combination of external momenta, and mim_i is mm for an electron line and λ\lambda for a photon line. Nothing in this section depends on which diagram produced the expression.

There are five mechanical steps: merge the denominators into a single quadratic in kk (§5.1), complete the square and shift (§5.2), rotate the contour to Euclidean space (§5.3), do the radial integral (§5.4, with the divergent case in §5.5), and use rotational invariance to strip the loop momentum out of the numerator (§5.6). They are exactly the contents of code/loops.py, and each formula below is quoted together with the function that implements it. §5.7 collects the γ\gamma-matrix contraction identities that make the numerator algebra short by hand, and §5.8 sets up just enough dimensional regularization to redo the one divergent case independently.

5.1 Feynman parameters

Two denominators. Let AA and BB be two nonzero complex numbers such that the straight segment joining them does not pass through the origin. (This is guaranteed by the iϵi\epsilon: every PiP_i carries the same sign of the infinitesimal imaginary part, so any convex combination uA+(1−u)BuA+(1-u)B has that sign too and cannot vanish.) Then the function

u  ⟼  −1(A−B)[B+u(A−B)]u \;\longmapsto\; \frac{-1}{(A-B)\left[B+u(A-B)\right]}

is well defined for u∈[0,1]u\in[0,1], and differentiating it gives

ddu[−1(A−B)[B+u(A−B)]]=−1(A−B)⋅−(A−B)[B+u(A−B)]2=1[B+u(A−B)]2.\frac{\mathrm{d}}{\mathrm{d}u} \left[\frac{-1}{(A-B)\left[B+u(A-B)\right]}\right] = \frac{-1}{(A-B)}\cdot\frac{-(A-B)}{\left[B+u(A-B)\right]^2} = \frac{1}{\left[B+u(A-B)\right]^2}.

Since B+u(A−B)=uA+(1−u)BB+u(A-B) = uA+(1-u)B, the fundamental theorem of calculus gives

∫01du[uA+(1−u)B]2=[−1(A−B)(B+u(A−B))]u=0u=1=−1A−B(1A−1B),\int_0^1\frac{\mathrm{d}u}{\left[uA+(1-u)B\right]^2} = \left[\frac{-1}{(A-B)\left(B+u(A-B)\right)}\right]_{u=0}^{u=1} = \frac{-1}{A-B}\left(\frac{1}{A}-\frac{1}{B}\right),

and, using 1A−1B=B−AAB\frac1A-\frac1B = \frac{B-A}{AB},

∫01du[uA+(1−u)B]2=−1A−B⋅B−AAB=1AB.\int_0^1\frac{\mathrm{d}u}{\left[uA+(1-u)B\right]^2} = \frac{-1}{A-B}\cdot\frac{B-A}{AB} = \frac{1}{AB}.

This is the base case. Note that it is already of the general form: with u1=uu_1 = u and u2=1−uu_2 = 1-u the integral reads

1AB=∫01du1 du2  δ ⁣(1−u1−u2)1[u1A+u2B]2.\frac{1}{AB} = \int_0^1\mathrm{d}u_1\,\mathrm{d}u_2\; \delta\!\left(1-u_1-u_2\right) \frac{1}{\left[u_1A+u_2B\right]^{2}} .

Repeated denominators. Both sides of the base case are functions of AA and BB, so we may differentiate. From ∂A pA−1=(−1)p p! A−1−p\partial_A^{\,p}A^{-1} = (-1)^p\,p!\,A^{-1-p},

∂A n1−1∂B n2−11AB=(−1)n1−1(n1−1)! (−1)n2−1(n2−1)!  1An1Bn2.\partial_A^{\,n_1-1}\partial_B^{\,n_2-1}\frac{1}{AB} = (-1)^{n_1-1}(n_1-1)!\,(-1)^{n_2-1}(n_2-1)!\; \frac{1}{A^{n_1}B^{n_2}}.

On the other side, differentiating under the integral sign and using ∂A[uA+(1−u)B]=u\partial_A\left[uA+(1-u)B\right] = u, ∂B[uA+(1−u)B]=1−u\partial_B\left[uA+(1-u)B\right] = 1-u,

∂A p 1[uA+(1−u)B]2=(−1)p 2⋅3⋯(p+1)  up[uA+(1−u)B]2+p=(−1)p(p+1)!  up[uA+(1−u)B]2+p,\partial_A^{\,p}\,\frac{1}{\left[uA+(1-u)B\right]^{2}} = (-1)^p\,2\cdot3\cdots(p+1)\; \frac{u^{p}}{\left[uA+(1-u)B\right]^{2+p}} = \frac{(-1)^p(p+1)!\;u^{p}}{\left[uA+(1-u)B\right]^{2+p}},

and applying ∂B q\partial_B^{\,q} to that result in the same way,

∂A p∂B q 1[uA+(1−u)B]2=(−1)p+q(p+q+1)!  up(1−u)q[uA+(1−u)B]2+p+q.\partial_A^{\,p}\partial_B^{\,q}\, \frac{1}{\left[uA+(1-u)B\right]^{2}} = \frac{(-1)^{p+q}(p+q+1)!\;u^{p}(1-u)^{q}} {\left[uA+(1-u)B\right]^{2+p+q}}.

Setting p=n1−1p = n_1-1, q=n2−1q = n_2-1 (so p+q+1=n1+n2−1p+q+1 = n_1+n_2-1 and 2+p+q=n1+n22+p+q = n_1+n_2), the common sign (−1)n1+n2−2(-1)^{n_1+n_2-2} cancels between the two sides and we are left with

1An1Bn2=(n1+n2−1)!(n1−1)! (n2−1)!∫01du  un1−1(1−u)n2−1[uA+(1−u)B]n1+n2=Γ(n1+n2)Γ(n1)Γ(n2)∫01du  un1−1(1−u)n2−1[uA+(1−u)B]n1+n2.\frac{1}{A^{n_1}B^{n_2}} = \frac{(n_1+n_2-1)!}{(n_1-1)!\,(n_2-1)!} \int_0^1\mathrm{d}u\; \frac{u^{n_1-1}(1-u)^{n_2-1}}{\left[uA+(1-u)B\right]^{n_1+n_2}} = \frac{\Gamma(n_1+n_2)}{\Gamma(n_1)\Gamma(n_2)} \int_0^1\mathrm{d}u\; \frac{u^{n_1-1}(1-u)^{n_2-1}}{\left[uA+(1-u)B\right]^{n_1+n_2}}.

Induction to kk denominators. Write N≡∑i=1kniN \equiv \sum_{i=1}^{k}n_i and N′≡∑i=1k−1niN' \equiv \sum_{i=1}^{k-1}n_i, and assume the claimed formula for k−1k-1 denominators,

1A1n1⋯Ak−1nk−1=Γ(N′)∏i<kΓ(ni)∫01∏i<kdui  δ ⁣(1−∑i<kui)∏i<kui ni−1[∑i<kuiAi]N′.\frac{1}{A_1^{n_1}\cdots A_{k-1}^{n_{k-1}}} = \frac{\Gamma(N')}{\prod_{i<k}\Gamma(n_i)} \int_0^1\prod_{i<k}\mathrm{d}u_i\; \delta\!\left(1-\sum_{i<k}u_i\right) \frac{\prod_{i<k}u_i^{\,n_i-1}} {\left[\sum_{i<k}u_iA_i\right]^{N'}} .

Multiply by Ak−nkA_k^{-n_k} and apply the two-denominator formula to the pair (∑i<kuiAi)N′\left(\sum_{i<k}u_iA_i\right)^{N'} and AknkA_k^{n_k}, calling the new parameter vv:

1∏i≤kAini=Γ(N)∏i≤kΓ(ni)∫01dv  vN′−1(1−v)nk−1∫01∏i<kdui  δ ⁣(1−∑i<kui)∏i<kui ni−1[v∑i<kuiAi+(1−v)Ak]N,\frac{1}{\prod_{i\le k}A_i^{n_i}} = \frac{\Gamma(N)}{\prod_{i\le k}\Gamma(n_i)} \int_0^1\mathrm{d}v\;v^{N'-1}(1-v)^{n_k-1} \int_0^1\prod_{i<k}\mathrm{d}u_i\; \delta\!\left(1-\sum_{i<k}u_i\right) \frac{\prod_{i<k}u_i^{\,n_i-1}} {\left[v\sum_{i<k}u_iA_i+(1-v)A_k\right]^{N}} ,

where the two Γ(N′)\Gamma(N') factors cancelled. It remains to show that this double integral is the symmetric kk-parameter expression. Change variables from (u1,…,uk−1,v)(u_1,\dots,u_{k-1},v) to (x1,…,xk)(x_1,\dots,x_k) by

xi=v ui(i<k),xk=1−v,x_i = v\,u_i\quad(i<k), \qquad x_k = 1-v ,

which is one-to-one from the region {ui≥0, ∑i<kui=1, 0≤v≤1}\{u_i\ge0,\ \sum_{i<k}u_i=1,\ 0\le v\le1\} onto {xi≥0, ∑i≤kxi=1}\{x_i\ge0,\ \sum_{i\le k}x_i=1\}, since

∑i≤kxi=v∑i<kui+(1−v)=v+1−v=1.\sum_{i\le k}x_i = v\sum_{i<k}u_i + (1-v) = v + 1 - v = 1 .

Every ingredient picks up a power of vv:

∏i<kdxi=v k−1∏i<kdui,dxk=dv  (orientation reversed, so ∫01dxk→∫01dv),\prod_{i<k}\mathrm{d}x_i = v^{\,k-1}\prod_{i<k}\mathrm{d}u_i , \qquad \mathrm{d}x_k = \mathrm{d}v \ \ (\text{orientation reversed, so } \textstyle\int_0^1\mathrm{d}x_k\to\int_0^1\mathrm{d}v),
δ ⁣(1−∑i≤kxi)=δ ⁣(v[1−∑i<kui])=1v δ ⁣(1−∑i<kui),\delta\!\left(1-\sum_{i\le k}x_i\right) = \delta\!\left(v\Big[1-\sum_{i<k}u_i\Big]\right) = \frac1v\,\delta\!\left(1-\sum_{i<k}u_i\right),
∏i<kxi ni−1=v N′−(k−1)∏i<kui ni−1,xk nk−1=(1−v)nk−1,\prod_{i<k}x_i^{\,n_i-1} = v^{\,N'-(k-1)}\prod_{i<k}u_i^{\,n_i-1}, \qquad x_k^{\,n_k-1} = (1-v)^{n_k-1},
∑i≤kxiAi=v∑i<kuiAi+(1−v)Ak.\sum_{i\le k}x_iA_i = v\sum_{i<k}u_iA_i + (1-v)A_k .

The powers of vv collect to v k−1⋅v−1⋅v N′−k+1=v N′−1v^{\,k-1}\cdot v^{-1}\cdot v^{\,N'-k+1} = v^{\,N'-1}, which is precisely the factor appearing above. Hence the double integral equals the symmetric form, and the induction closes:

1A1n1A2n2⋯Aknk=Γ ⁣(∑ini)∏iΓ(ni)∫01∏idui  δ ⁣(1−∑iui)∏iui ni−1[∑iuiAi]∑ini.\frac{1}{A_1^{n_1}A_2^{n_2}\cdots A_k^{n_k}} = \frac{\Gamma\!\left(\sum_i n_i\right)}{\prod_i\Gamma(n_i)} \int_0^1\prod_i\mathrm{d}u_i\; \delta\!\left(1-\sum_i u_i\right) \frac{\prod_i u_i^{\,n_i-1}} {\left[\sum_i u_iA_i\right]^{\sum_i n_i}} .

Using the δ\delta-function. The δ\delta makes one parameter redundant. Doing the u1u_1 integral first,

∫01du1  δ ⁣(1−∑iui)F(u1,…,uk)=F ⁣(1−∑i≥2ui, u2,…,uk) θ ⁣(1−∑i≥2ui),\int_0^1\mathrm{d}u_1\;\delta\!\left(1-\sum_{i}u_i\right)F(u_1,\dots,u_k) = F\!\left(1-\sum_{i\ge2}u_i,\,u_2,\dots,u_k\right)\, \theta\!\left(1-\sum_{i\ge2}u_i\right),

the θ\theta arising because the zero of the δ\delta’s argument lies inside the range [0,1][0,1] only when 1−∑i≥2ui≥01-\sum_{i\ge2}u_i\ge0. The θ\theta cuts the remaining unit hypercube down to the simplex, i.e. to nested limits:

∫01∏idui  δ ⁣(1−∑iui)F=∫01duk∫01−ukduk−1⋯∫01−uk−⋯−u3du2  F∣u1=1−∑i≥2ui.\int_0^1\prod_{i}\mathrm{d}u_i\;\delta\!\left(1-\sum_iu_i\right)F = \int_0^1\mathrm{d}u_k\int_0^{1-u_k}\mathrm{d}u_{k-1}\cdots \int_0^{1-u_k-\cdots-u_3}\mathrm{d}u_2\; F\Big|_{u_1 = 1-\sum_{i\ge2}u_i} .

This substitution u1→1−∑i≥2uiu_1 \to 1-\sum_{i\ge2}u_i, applied both to the combined denominator and to the weight ∏uini−1\prod u_i^{n_i-1}, is literally the pair of lines

Dcomb = Dcomb.subs(first, 1 - others)
wt    = wt.subs(first, 1 - others)

in the assemble routines of the diagram scripts (code/g2_iid.py, and assemble_iic/assemble_outer in code/g2_iic.py, code/g2_iia.py, code/g2_i.py), where first is the parameter of the first denominator in the list. The remaining k−1k-1 parameters are then integrated over the simplex at the very end, exactly as the LO section does with its θ\theta-functions.

Example (the case used by every diagram below). For three denominators with powers (1,1,2)(1,1,2), eliminating the first parameter,

1A B C2=Γ(4)Γ(1)Γ(1)Γ(2)∫01dz∫01−zdy  z[(1−y−z)A+yB+zC]4.\frac{1}{A\,B\,C^{2}} = \frac{\Gamma(4)}{\Gamma(1)\Gamma(1)\Gamma(2)} \int_0^1\mathrm{d}z\int_0^{1-z}\mathrm{d}y\; \frac{z}{\left[(1-y-z)A+yB+zC\right]^{4}} .

5.2 Completing the square

After §5.1 the whole kk-dependence of the denominator sits in a single quadratic. With Pi=(k−ai)2−mi2P_i = (k-a_i)^2-m_i^2 and weights uiu_i obeying ∑iui=1\sum_iu_i=1,

D(k)≡∑iui[(k−ai)2−mi2]=∑iui[k2−2 k⋅ai+ai2−mi2].D(k) \equiv \sum_i u_i\left[(k-a_i)^2-m_i^2\right] = \sum_i u_i\left[k^2 - 2\,k\cdot a_i + a_i^2 - m_i^2\right] .

The first term sums to k2k^2 because ∑iui=1\sum_iu_i=1, so, defining

s≡∑iui ai,s \equiv \sum_i u_i\,a_i ,
D(k)=k2−2 k⋅s+∑iui(ai2−mi2).D(k) = k^2 - 2\,k\cdot s + \sum_i u_i\left(a_i^2-m_i^2\right).

Now substitute k=ℓ+sk = \ell + s, a shift by a kk-independent vector, and expand:

D=(ℓ+s)2−2(ℓ+s)⋅s+∑iui(ai2−mi2)D = (\ell+s)^2 - 2(\ell+s)\cdot s + \sum_i u_i(a_i^2-m_i^2)
=ℓ2+2 ℓ⋅s+s2−2 ℓ⋅s−2s2+∑iui(ai2−mi2)= \ell^2 + 2\,\ell\cdot s + s^2 - 2\,\ell\cdot s - 2s^2 + \sum_i u_i(a_i^2-m_i^2)
=ℓ2−[s2−∑iuiai2+∑iuimi2].= \ell^2 - \left[s^2 - \sum_i u_i a_i^2 + \sum_i u_i m_i^2\right].

Hence D=ℓ2−ΔD = \ell^2-\Delta with

Δ=s2−∑iuiai2+∑iuimi2,s=∑iuiai.\Delta = s^2 - \sum_i u_i a_i^2 + \sum_i u_i m_i^2 , \qquad s = \sum_i u_i a_i .

The shift is a translation, so the measure is unchanged, d4k=d4ℓ\mathrm{d}^4k = \mathrm{d}^4\ell. (Translating the integration variable is unimpeachable for an absolutely convergent integral. The only divergent case we ever meet is logarithmic, and there the shift is performed on the Pauli–Villars-subtracted integrand of §5.5, which is absolutely convergent; a logarithmically divergent integral generates no surface term under a shift in any case.)

feynman_shift(D, k) in code/loops.py does not use the closed formulas above — it works for an arbitrary quadratic DD, including ones in which the aia_i are no longer visible because an inner loop has already been integrated out. It substitutes kμ=ℓμ+sμk^\mu = \ell^\mu+s^\mu with four unknown components sμs^\mu, collects the terms linear in each ℓμ\ell^\mu, solves the resulting 4×44\times4 linear system for sμs^\mu, reads off Δ=−D(k=s)\Delta = -D(k=s), and then verifies symbolically that D(ℓ+s)−(ℓ2−Δ)D(\ell+s) - (\ell^2-\Delta) is identically zero.

Non-unit k2k^2 coefficient. If the combined denominator comes out as

D(k)=A k2+⋯ ,A≠1,D(k) = A\,k^2 + \cdots , \qquad A\ne 1,

— which happens once a sub-loop has been integrated and its Δ\Delta-like denominator, itself carrying a Feynman-parameter-dependent coefficient, is merged with the outer propagators — divide by AA first. Then D/AD/A has unit k2k^2 coefficient, §5.2 applies to it, and

D(k)=A(ℓ2−Δ),1Dn=1An 1(ℓ2−Δ)n,D(k) = A\left(\ell^2-\Delta\right), \qquad \frac{1}{D^n} = \frac{1}{A^n}\,\frac{1}{\left(\ell^2-\Delta\right)^n},

so the entire master table of §5.4 applies with one extra factor A−nA^{-n}. This is feynman_shift_general(D, k), which returns the triple (s,Δ,A)(s,\Delta,A): it reads AA off as the coefficient of (k0)2(k^0)^2, divides, and delegates to feynman_shift. (Its callers in code/g2_i.py, code/g2_iia.py, code/g2_iic.py currently assert A=1A=1, i.e. they check that the chosen momentum routing has kept the coefficient unity.)

Positivity of Δ\Delta. The Wick rotation of §5.3 needs Δ>0\Delta>0. For the kinematics used here — space-like or vanishing q2q^2, all ui≥0u_i\ge0 on the simplex — this holds. For instance the LO vertex at q2=0q^2=0 gives, as printed by code/g2_lo_trace.py,

Δ=m2(y+z)2+λ2(1−y−z),\Delta = m^2(y+z)^2 + \lambda^2\left(1-y-z\right),

which is manifestly positive on the simplex y,z≥0y,z\ge0, y+z≤1y+z\le1 (and strictly positive as long as the photon mass λ\lambda is kept, which is exactly the role of the IR regulator).

Both §5.1 and §5.2 check out symbolically:

>>> import sys; sys.path.insert(0, 'code')
>>> from sympy import symbols, integrate, simplify, expand, gamma, S
>>> from loops import comps, dot, feynman_shift, feynman_shift_general
>>> A, B, C = symbols("A B C", positive=True)
>>> u, y, z = symbols("u y z", nonnegative=True)
>>> simplify(integrate(1/(u*A + (1-u)*B)**2, (u, 0, 1)))
1/(A*B)
>>> simplify(integrate(gamma(S(3))/(gamma(S(2))*gamma(S(1)))
...                    * (1-u)/((1-u)*A + u*B)**3, (u, 0, 1)))
1/(A**2*B)
>>> f = (gamma(S(4))/(gamma(S(1))*gamma(S(1))*gamma(S(2)))
...      * z/((1-y-z)*A + y*B + z*C)**4)
>>> simplify(integrate(integrate(f, (y, 0, 1-z)), (z, 0, 1)))
1/(A*B*C**2)
>>> k, a1, a2, a3 = comps("k"), comps("a1"), comps("a2"), comps("a3")
>>> m1, m2, m3 = symbols("m1 m2 m3")
>>> xs, av, ms = [y, z, 1-y-z], [a1, a2, a3], [m1, m2, m3]
>>> D = sum(x*(dot([k[i]-a[i] for i in range(4)],
...                [k[i]-a[i] for i in range(4)]) - mm**2)
...         for x, a, mm in zip(xs, av, ms))
>>> s, Delta = feynman_shift(expand(D), k)
>>> [simplify(s[i] - sum(x*a[i] for x, a in zip(xs, av))) for i in range(4)]
[0, 0, 0, 0]
>>> simplify(Delta - (dot(s, s) - sum(x*dot(a, a) for x, a in zip(xs, av))
...                   + sum(x*mm**2 for x, mm in zip(xs, ms))))
0
>>> Ac = symbols("A_c", positive=True)
>>> s2, Delta2, Afound = feynman_shift_general(expand(Ac*D), k)
>>> Afound, [simplify(s2[i]-s[i]) for i in range(4)], simplify(Delta2-Delta)
(A_c, [0, 0, 0, 0], 0)

5.3 Wick rotation

We must evaluate

∫d4ℓ(2π)4  (ℓ2)a(ℓ2−Δ+iϵ)n,Δ>0,\int\frac{\mathrm{d}^4\ell}{(2\pi)^4}\; \frac{\left(\ell^2\right)^a}{\left(\ell^2-\Delta+i\epsilon\right)^n}, \qquad \Delta>0,

whose integrand is a rational function of ℓ0\ell^0 with ℓ2=(ℓ0)2−ℓ 2\ell^2 = (\ell^0)^2-\boldsymbol\ell^{\,2}. The denominator vanishes when

(ℓ0)2=ℓ 2+Δ−iϵ,\left(\ell^0\right)^2 = \boldsymbol\ell^{\,2} + \Delta - i\epsilon,

that is, expanding the square root to first order in ϵ\epsilon (X−iϵ=X−iϵ/(2X)\sqrt{X-i\epsilon} = \sqrt{X} - i\epsilon/(2\sqrt X) for X>0X>0),

ℓ0=±(ℓ 2+Δ  −  iϵ′),ϵ′>0.\ell^0 = \pm\left(\sqrt{\boldsymbol\ell^{\,2}+\Delta} \;-\;i\epsilon'\right), \qquad \epsilon'>0 .

So the pole with positive real part has negative imaginary part (fourth quadrant) and the pole with negative real part has positive imaginary part (second quadrant). The first and third quadrants of the complex ℓ0\ell^0 plane are free of singularities — this is the whole content of the iϵi\epsilon prescription for our purposes.

Close a contour consisting of the real axis from −R-R to +R+R, the quarter-circle ∣ℓ0∣=R|\ell^0| = R through the first quadrant up to +iR+iR, the imaginary axis from +iR+iR down to −iR-iR, and the quarter-circle through the third quadrant back to −R-R. It encloses no pole, so by Cauchy’s theorem its total contribution vanishes. On the arcs ℓ0=Reiθ\ell^0 = Re^{i\theta} the integrand is O(R2a/R2n)O(R^{2a}/R^{2n}) and the measure is O(R)O(R), so each arc is O ⁣(R1+2a−2n)O\!\left(R^{1+2a-2n}\right) and vanishes as R→∞R\to\infty provided

2(n−a)>1,2(n-a) > 1 ,

which every case we use satisfies (n−a≥2n-a\ge2 throughout, including the log-divergent n−a=2n-a=2). What survives is

∫−∞+∞dℓ0=∫−i∞+i∞dℓ0,\int_{-\infty}^{+\infty}\mathrm{d}\ell^0 = \int_{-i\infty}^{+i\infty}\mathrm{d}\ell^0 ,

the rotation being counterclockwise (real axis →\to imaginary axis through the empty first and third quadrants). Parametrize the imaginary axis by a real variable ℓE0\ell_E^0,

ℓ0=i ℓE0,ℓj=ℓEj  (j=1,2,3),\ell^0 = i\,\ell_E^0 , \qquad \ell^j = \ell_E^j \ \ (j=1,2,3),

so that ℓE0\ell_E^0 runs from −∞-\infty to +∞+\infty as ℓ0\ell^0 runs up the imaginary axis. Then

dℓ0=i dℓE0⟹d4ℓ=i d4ℓE,\mathrm{d}\ell^0 = i\,\mathrm{d}\ell_E^0 \qquad\Longrightarrow\qquad \mathrm{d}^4\ell = i\,\mathrm{d}^4\ell_E ,
ℓ2=(ℓ0)2−ℓ 2=−(ℓE0)2−ℓ 2=− ℓE2,ℓE2≡∑μ=03(ℓEμ)2≥0.\ell^2 = \left(\ell^0\right)^2 - \boldsymbol\ell^{\,2} = -\left(\ell_E^0\right)^2 - \boldsymbol\ell^{\,2} = -\,\ell_E^2 , \qquad \ell_E^2 \equiv \sum_{\mu=0}^{3}\left(\ell_E^\mu\right)^2 \ge 0 .

The Euclidean square is positive definite, so ℓ2−Δ=−(ℓE2+Δ)\ell^2-\Delta = -\left(\ell_E^2+\Delta\right) never vanishes for Δ>0\Delta>0: after the rotation the iϵi\epsilon has done its job and can be dropped.

5.4 The master integral

Define

I(a,n,Δ)≡∫d4ℓ(2π)4  (ℓ2)a(ℓ2−Δ)n,a≥0, n≥1 integers.I(a,n,\Delta) \equiv \int\frac{\mathrm{d}^4\ell}{(2\pi)^4}\; \frac{\left(\ell^2\right)^a}{\left(\ell^2-\Delta\right)^n}, \qquad a\ge0,\ n\ge1 \ \text{integers}.

Rotating with §5.3, using (ℓ2)a=(−1)a(ℓE2)a\left(\ell^2\right)^a = (-1)^a \left(\ell_E^2\right)^a and (ℓ2−Δ)n=(−1)n(ℓE2+Δ)n\left(\ell^2-\Delta\right)^n = (-1)^n \left(\ell_E^2+\Delta\right)^n and d4ℓ=i d4ℓE\mathrm{d}^4\ell = i\,\mathrm{d}^4\ell_E,

I=i (−1)a−n∫d4ℓE(2π)4  (ℓE2)a(ℓE2+Δ)n=i (−1)a+n∫d4ℓE(2π)4  (ℓE2)a(ℓE2+Δ)n,I = i\,(-1)^{a-n}\int\frac{\mathrm{d}^4\ell_E}{(2\pi)^4}\; \frac{\left(\ell_E^2\right)^a}{\left(\ell_E^2+\Delta\right)^n} = i\,(-1)^{a+n}\int\frac{\mathrm{d}^4\ell_E}{(2\pi)^4}\; \frac{\left(\ell_E^2\right)^a}{\left(\ell_E^2+\Delta\right)^n},

since (−1)−n=(−1)n(-1)^{-n} = (-1)^{n}.

The Euclidean measure. The integrand depends only on r≡∣ℓE∣=ℓE2r \equiv |\ell_E| = \sqrt{\ell_E^2}, so d4ℓE=S3 r3 dr\mathrm{d}^4\ell_E = S_3\, r^3\,\mathrm{d}r with S3S_3 the surface area of the unit 3-sphere. Fix S3S_3 by evaluating one Gaussian two ways:

π2=(∫−∞∞dt e−t2)4=∫d4ℓE  e−ℓE2=S3∫0∞r3e−r2 dr=S3⋅12,\pi^2 = \left(\int_{-\infty}^{\infty}\mathrm{d}t\,e^{-t^2}\right)^4 = \int\mathrm{d}^4\ell_E\;e^{-\ell_E^2} = S_3\int_0^\infty r^3e^{-r^2}\,\mathrm{d}r = S_3\cdot\frac12 ,

the last radial integral being 12∫0∞t e−tdt=12\frac12\int_0^\infty t\,e^{-t}\mathrm{d}t = \frac12 under t=r2t=r^2. Hence S3=2π2S_3 = 2\pi^2. Substituting t=r2t=r^2, so that r3 dr=12t dtr^3\,\mathrm{d}r = \frac12 t\,\mathrm{d}t, and using (2π)4=16π4(2\pi)^4 = 16\pi^4,

∫d4ℓE(2π)4  (ℓE2)a(ℓE2+Δ)n=2π216π4⋅12∫0∞t a+1 dt(t+Δ)n=116π2∫0∞t a+1 dt(t+Δ)n.\int\frac{\mathrm{d}^4\ell_E}{(2\pi)^4}\; \frac{\left(\ell_E^2\right)^a}{\left(\ell_E^2+\Delta\right)^n} = \frac{2\pi^2}{16\pi^4}\cdot\frac12 \int_0^\infty\frac{t^{\,a+1}\,\mathrm{d}t}{(t+\Delta)^n} = \frac{1}{16\pi^2} \int_0^\infty\frac{t^{\,a+1}\,\mathrm{d}t}{(t+\Delta)^n} .

The radial integral. Substitute t=Δ v/(1−v)t = \Delta\,v/(1-v) with v∈[0,1)v\in[0,1), so that

t+Δ=Δ1−v,dt=Δ(1−v)2 dv,t+\Delta = \frac{\Delta}{1-v}, \qquad \mathrm{d}t = \frac{\Delta}{(1-v)^2}\,\mathrm{d}v ,
∫0∞t a+1dt(t+Δ)n=∫01Δa+1va+1(1−v)a+1⋅(1−v)nΔn⋅Δ(1−v)2 dv=Δ a+2−n∫01va+1(1−v) n−a−3 dv.\int_0^\infty\frac{t^{\,a+1}\mathrm{d}t}{(t+\Delta)^n} = \int_0^1 \Delta^{a+1}\frac{v^{a+1}}{(1-v)^{a+1}} \cdot\frac{(1-v)^n}{\Delta^n} \cdot\frac{\Delta}{(1-v)^2}\,\mathrm{d}v = \Delta^{\,a+2-n}\int_0^1 v^{a+1}(1-v)^{\,n-a-3}\,\mathrm{d}v .

The remaining integral is Euler’s Beta function,

B(p,q)=∫01v p−1(1−v) q−1dv=Γ(p)Γ(q)Γ(p+q),B(p,q) = \int_0^1v^{\,p-1}(1-v)^{\,q-1}\mathrm{d}v = \frac{\Gamma(p)\Gamma(q)}{\Gamma(p+q)},

with p=a+2p = a+2 and q=n−a−2q = n-a-2, so p+q=np+q = n:

∫01va+1(1−v) n−a−3 dv=Γ(a+2) Γ(n−a−2)Γ(n)=(a+1)! (n−a−3)!(n−1)!.\int_0^1 v^{a+1}(1-v)^{\,n-a-3}\,\mathrm{d}v = \frac{\Gamma(a+2)\,\Gamma(n-a-2)}{\Gamma(n)} = \frac{(a+1)!\,(n-a-3)!}{(n-1)!} .

Convergence at v=0v=0 is automatic (a≥0a\ge0); convergence at v=1v=1 requires q=n−a−2>0q = n-a-2>0, which is the statement that the original momentum integral converges in the ultraviolet (large tt is large ℓE2\ell_E^2). Assembling,

∫d4ℓ(2π)4  (ℓ2)a(ℓ2−Δ)n=i (−1)n+a16π2  (a+1)! (n−a−3)!(n−1)!  Δ a+2−n,n−a−2>0.\int\frac{\mathrm{d}^4\ell}{(2\pi)^4}\; \frac{\left(\ell^2\right)^a}{\left(\ell^2-\Delta\right)^n} = \frac{i\,(-1)^{n+a}}{16\pi^2}\; \frac{(a+1)!\,(n-a-3)!}{(n-1)!}\;\Delta^{\,a+2-n}, \qquad n-a-2>0 .

This single line is loop_integral(a, n, Delta) of code/loops.py (its first branch), sign, factorials and power of Δ\Delta included.

The two standard cases. For n=3n=3, a=0a=0:

∫d4ℓ(2π)41(ℓ2−Δ)3=i(−1)316π2⋅1!⋅0!2!⋅Δ−1=−i32π2 Δ,\int\frac{\mathrm{d}^4\ell}{(2\pi)^4}\frac{1}{\left(\ell^2-\Delta\right)^3} = \frac{i(-1)^3}{16\pi^2}\cdot\frac{1!\cdot0!}{2!}\cdot\Delta^{-1} = \frac{-i}{32\pi^2\,\Delta} ,

and for n=4n=4, a=1a=1:

∫d4ℓ(2π)4ℓ2(ℓ2−Δ)4=i(−1)516π2⋅2!⋅0!3!⋅Δ−1=−i48π2 Δ,\int\frac{\mathrm{d}^4\ell}{(2\pi)^4} \frac{\ell^2}{\left(\ell^2-\Delta\right)^4} = \frac{i(-1)^5}{16\pi^2}\cdot\frac{2!\cdot0!}{3!}\cdot\Delta^{-1} = \frac{-i}{48\pi^2\,\Delta} ,

both of which are the textbook values.

5.5 Pauli–Villars for the logarithmic case

When n−a−2=0n-a-2 = 0 the Beta integral of §5.4 becomes ∫01va+1(1−v)−1dv\int_0^1 v^{a+1}(1-v)^{-1}\mathrm{d}v, which diverges logarithmically at v=1v=1, i.e. at t→∞t\to\infty, i.e. at large loop momentum: this is a genuine ultraviolet divergence and needs a regulator.

Before regulating, note a simplification. At n=a+2n = a+2 the prefactor of §5.4 collapses:

(−1)n+a=(−1)2a+2=+1,(a+1)!(n−1)!=(a+1)!(a+1)!=1,(-1)^{n+a} = (-1)^{2a+2} = +1 , \qquad \frac{(a+1)!}{(n-1)!} = \frac{(a+1)!}{(a+1)!} = 1 ,

so every log-divergent case carries the same prefactor i/(16π2)i/(16\pi^2). This is why a single symbol can serve them all.

The subtraction. Pauli–Villars replaces the integrand by its difference with the same integrand at a large regulator mass. At the level of the master integral this means shifting Δ\Delta: write ΔΛ\Delta_\Lambda for Δ\Delta with the internal mass replaced by Λ→∞\Lambda\to\infty, and define

IPV=∫d4ℓ(2π)4[(ℓ2)a(ℓ2−Δ)n−(ℓ2)a(ℓ2−ΔΛ)n].I_{\rm PV} = \int\frac{\mathrm{d}^4\ell}{(2\pi)^4}\left[ \frac{\left(\ell^2\right)^a}{\left(\ell^2-\Delta\right)^n} - \frac{\left(\ell^2\right)^a}{\left(\ell^2-\Delta_\Lambda\right)^n} \right].

Each term separately behaves as ℓ2a−2n=ℓ−4\ell^{2a-2n} = \ell^{-4} at large ℓ\ell, but their difference is down by one further power of ℓ2\ell^2 (expanding in ΔΛ−Δ\Delta_\Lambda-\Delta), so the bracket falls as ℓ−6\ell^{-6} and the subtracted integral converges absolutely. Every manipulation of §5.2 and §5.3 is therefore legitimate on it, and the radial reduction of §5.4 gives

IPV=i16π2∫0∞t a+1[1(t+Δ)a+2−1(t+ΔΛ)a+2]dt.I_{\rm PV} = \frac{i}{16\pi^2}\int_0^\infty t^{\,a+1}\left[ \frac{1}{(t+\Delta)^{a+2}} - \frac{1}{(t+\Delta_\Lambda)^{a+2}} \right]\mathrm{d}t .

Doing the integral. Introduce a temporary cutoff RR and set

F(Δ)≡∫0Rt a+1 dt(t+Δ)a+2,∂F∂Δ=−(a+2)∫0Rt a+1 dt(t+Δ)a+3.F(\Delta) \equiv \int_0^R\frac{t^{\,a+1}\,\mathrm{d}t}{(t+\Delta)^{a+2}}, \qquad \frac{\partial F}{\partial\Delta} = -(a+2)\int_0^R\frac{t^{\,a+1}\,\mathrm{d}t}{(t+\Delta)^{a+3}} .

The differentiated integral has n=a+3n = a+3, hence n−a−2=1>0n-a-2 = 1>0: it is convergent and §5.4 evaluates it,

lim⁡R→∞∫0Rt a+1 dt(t+Δ)a+3=Δ−1 (a+1)!  0!(a+2)!=1(a+2) Δ,\lim_{R\to\infty}\int_0^R\frac{t^{\,a+1}\,\mathrm{d}t}{(t+\Delta)^{a+3}} = \Delta^{-1}\,\frac{(a+1)!\;0!}{(a+2)!} = \frac{1}{(a+2)\,\Delta} ,

so that

∂F∂Δ∣R→∞=−(a+2)⋅1(a+2)Δ=−1Δ.\frac{\partial F}{\partial\Delta}\bigg|_{R\to\infty} = -(a+2)\cdot\frac{1}{(a+2)\Delta} = -\frac{1}{\Delta} .

The RR-dependence cancels in the difference F(Δ)−F(ΔΛ)F(\Delta)-F(\Delta_\Lambda), so the limit may be taken inside, and integrating the derivative back from Δ\Delta to ΔΛ\Delta_\Lambda,

F(Δ)−F(ΔΛ)=−∫ΔΔΛ∂F∂Δ′ dΔ′=∫ΔΔΛdΔ′Δ′=log⁡ΔΛΔ.F(\Delta) - F(\Delta_\Lambda) = -\int_{\Delta}^{\Delta_\Lambda} \frac{\partial F}{\partial\Delta'}\,\mathrm{d}\Delta' = \int_{\Delta}^{\Delta_\Lambda}\frac{\mathrm{d}\Delta'}{\Delta'} = \log\frac{\Delta_\Lambda}{\Delta} .

Therefore

IPV=i16π2(log⁡ΔΛ−log⁡Δ).I_{\rm PV} = \frac{i}{16\pi^2}\left(\log\Delta_\Lambda - \log\Delta\right).

The symbol LUVL_{UV}. As Λ→∞\Lambda\to\infty we have ΔΛ→c Λ2\Delta_\Lambda \to c\,\Lambda^2, where cc is whatever combination of Feynman parameters multiplies the regulator mass inside Δ\Delta, so

log⁡ΔΛ=log⁡Λ2+log⁡c  ≡  LUV.\log\Delta_\Lambda = \log\Lambda^2 + \log c \;\equiv\; L_{UV} .

The code carries this whole thing as one symbol, LUV = Symbol("LUV"), documented as “log⁡(Λ2)\log(\Lambda^2) + scheme constant”. With it, the second branch of loop_integral reads

∫d4ℓ(2π)4  (ℓ2)a(ℓ2−Δ)n∣PV=i (−1)n+a16π2 (a+1)!(n−1)!(LUV−log⁡Δ),n−a−2=0,\int\frac{\mathrm{d}^4\ell}{(2\pi)^4}\; \frac{\left(\ell^2\right)^a}{\left(\ell^2-\Delta\right)^n} \bigg|_{\rm PV} = \frac{i\,(-1)^{n+a}}{16\pi^2}\,\frac{(a+1)!}{(n-1)!} \left(L_{UV}-\log\Delta\right), \qquad n-a-2 = 0,

which by the collapse noted above is just i16π2(LUV−log⁡Δ)\frac{i}{16\pi^2}\left(L_{UV}-\log\Delta\right) for every log-divergent (a,n)(a,n) — the prefactor is written in the general form only so that it matches the first branch line for line.

Why the sloppiness is harmless. LUVL_{UV} hides two things we did not track: the additive scheme constant (a propagator-level PV subtraction, as in the historical papers, differs from our integral-level one by a finite amount), and the parameter dependence in log⁡c\log c. Both are invisible in the final answer, for a reason stronger than “the divergences cancel at the end”. The scripts assert that the coefficient of LUVL_{UV} in the F2F_2 integrand vanishes identically as a function of the Feynman parameters — assert not F2.has(LUV) in code/g2_iid.py, and an exact zero test of F2.diff(LUV) at random rational points of all free symbols in code/g2_iic.py and code/g2_iia.py. A quantity multiplied by a coefficient that is pointwise zero contributes nothing, whatever constant or parameter-dependent function it stands for. Within a given diagram ΔΛ\Delta_\Lambda is one fixed object, so all log-divergent terms of that diagram share the same LUVL_{UV} and the pointwise cancellation removes the entire ambiguity at once.

Physical answers must be independent of LUVL_{UV}, and F2F_2 is: it is the divergences of F1F_1, of the self-energy and of the vacuum polarization that survive, and those are removed by the counterterms of §1.2, not by any choice of scheme constant.

Both branches of the master table, checked against direct integration:

>>> import sys; sys.path.insert(0, 'code')
>>> from sympy import symbols, integrate, oo, simplify, pi, I, S, log
>>> from loops import loop_integral
>>> D, r, t = symbols("Delta r t", positive=True)
>>> def direct(a, n):
...     return simplify(I*S(-1)**(a+n)/(2*pi)**4 * 2*pi**2 *
...                     integrate(r**(3+2*a)/(r**2+D)**n, (r, 0, oo)))
>>> [simplify(direct(a, n) - loop_integral(a, n, D)) == 0
...  for (a, n) in [(0,3), (0,4), (1,4), (1,5), (2,5), (3,7)]]
[True, True, True, True, True, True]
>>> loop_integral(0, 3, D), loop_integral(1, 4, D)
(-I/(32*pi**2*Delta), -I/(48*pi**2*Delta))
>>> DL = symbols("Delta_Lambda", positive=True)
>>> [simplify(integrate(t**(a+1)*(1/(t+D)**(a+2) - 1/(t+DL)**(a+2)),
...                     (t, 0, oo)) - log(DL/D)) == 0 for a in [0, 1, 2]]
[True, True, True]
>>> loop_integral(0, 2, D), loop_integral(2, 4, D)
(I*(LUV - log(Delta))/(16*pi**2), I*(LUV - log(Delta))/(16*pi**2))

5.6 Angular averages

The master table takes scalars. The numerator, however, is a polynomial in the components ℓμ\ell^\mu, so we must first reduce

Tμ1⋯μN=∫d4ℓ(2π)4 f ⁣(ℓ2) ℓμ1⋯ℓμNT^{\mu_1\cdots\mu_N} = \int\frac{\mathrm{d}^4\ell}{(2\pi)^4}\, f\!\left(\ell^2\right)\,\ell^{\mu_1}\cdots\ell^{\mu_N}

to scalar integrals. After the shift of §5.2 the denominator depends on ℓ\ell only through ℓ2\ell^2, which is what makes this possible.

Odd NN vanishes. Under ℓ→−ℓ\ell\to-\ell the measure and f(ℓ2)f(\ell^2) are unchanged while the monomial changes sign NN times. For odd NN this gives T=−TT = -T, hence T=0T=0. The same argument applied to a single component, ℓj→−ℓj\ell^j\to-\ell^j with the others fixed (which also leaves ℓ2\ell^2 invariant), kills any monomial in which some component appears an odd number of times.

Rank two. For a Lorentz transformation Λ\Lambda, the change of variables ℓ→Λℓ\ell \to \Lambda\ell leaves d4ℓ\mathrm{d}^4\ell and f(ℓ2)f(\ell^2) invariant, so

Tμν=ΛμαΛνβ Tαβ:T^{\mu\nu} = \Lambda^{\mu}{}_{\alpha}\Lambda^{\nu}{}_{\beta}\, T^{\alpha\beta} :

TμνT^{\mu\nu} is an invariant tensor of the Lorentz group. There is no external vector left in the problem (ℓ\ell is integrated over), so the only rank-2 invariant available is gμνg^{\mu\nu}, and

∫d4ℓ(2π)4f ⁣(ℓ2)ℓμℓν=c  gμν∫d4ℓ(2π)4f ⁣(ℓ2)ℓ2.\int\frac{\mathrm{d}^4\ell}{(2\pi)^4}f\!\left(\ell^2\right) \ell^\mu\ell^\nu = c\;g^{\mu\nu}\int\frac{\mathrm{d}^4\ell}{(2\pi)^4} f\!\left(\ell^2\right)\ell^2 .

Contract both sides with gμνg_{\mu\nu}. The left side becomes ∫f ℓ2\int f\,\ell^2 because gμνℓμℓν=ℓ2g_{\mu\nu}\ell^\mu\ell^\nu = \ell^2; the right side becomes c gμνgμν∫fℓ2=4c∫fℓ2c\,g_{\mu\nu}g^{\mu\nu}\int f\ell^2 = 4c\int f\ell^2, since gμνgμν=δμμ=4g_{\mu\nu}g^{\mu\nu} = \delta^\mu_\mu = 4. Hence c=1/4c = 1/4 and, writing ⟨⋅⟩\langle\cdot\rangle for the replacement valid under the integral,

⟨ℓaℓb⟩=gab4 ℓ2.\left\langle \ell^{a}\ell^{b}\right\rangle = \frac{g^{ab}}{4}\,\ell^2 .

General even rank. The same invariance argument makes Tμ1⋯μ2nT^{\mu_1\cdots\mu_{2n}} an invariant tensor, and it is totally symmetric in its indices because the monomial ℓμ1⋯ℓμ2n\ell^{\mu_1}\cdots\ell^{\mu_{2n}} is. An invariant tensor of even rank is a polynomial in gμνg^{\mu\nu} and ϵμνρσ\epsilon^{\mu\nu\rho\sigma}; the latter is totally antisymmetric and therefore cannot appear in a totally symmetric tensor. So TT is a combination of products of nn metrics, one product per pairing of the 2n2n indices, and total symmetry forces all (2n−1)!!(2n-1)!! pairings to enter with the same coefficient:

⟨ℓa1⋯ℓa2n⟩=Cn(ℓ2)n∑pairings P ∏(i,j)∈Pgaiaj.\left\langle \ell^{a_1}\cdots\ell^{a_{2n}}\right\rangle = C_n\left(\ell^2\right)^n \sum_{\text{pairings }P}\ \prod_{(i,j)\in P} g^{a_ia_j} .

To fix CnC_n, contract with the reference pairing ga1a2ga3a4⋯ga2n−1a2ng_{a_1a_2}g_{a_3a_4}\cdots g_{a_{2n-1}a_{2n}}. The left side becomes ⟨(ℓ2)n⟩=(ℓ2)n\left\langle(\ell^2)^n\right\rangle = (\ell^2)^n. On the right, each pairing PP contracted against the reference closes the 2n2n indices into a set of loops of the form gabgbcgcd⋯g^{ab}g_{bc}g^{cd}\cdots returning to aa; each such loop evaluates to gaa=4g^{a}{}_{a} = 4. Writing c(P)c(P) for the number of loops,

Tn≡∑pairings P4 c(P),Cn=1Tn.T_n \equiv \sum_{\text{pairings }P} 4^{\,c(P)} , \qquad C_n = \frac{1}{T_n} .

For n=1n=1 there is one pairing forming one loop, T1=4T_1 = 4 and C1=1/4C_1 = 1/4, reproducing the rank-2 result. For n=2n=2 there are three pairings: (12)(34)(12)(34) coincides with the reference and closes two loops, 42=164^2 = 16; each of (13)(24)(13)(24) and (14)(23)(14)(23) interleaves with the reference and closes one loop of length four, 41=44^1 = 4. Hence T2=16+4+4=24T_2 = 16+4+4 = 24 and

⟨ℓaℓbℓcℓd⟩=(ℓ2)224(gabgcd+gacgbd+gadgbc).\left\langle \ell^{a}\ell^{b}\ell^{c}\ell^{d}\right\rangle = \frac{\left(\ell^2\right)^2}{24} \left(g^{ab}g^{cd} + g^{ac}g^{bd} + g^{ad}g^{bc}\right).

Closed form for TnT_n. The sum ∑Pd c(P)\sum_P d^{\,c(P)} is a purely combinatorial object (the metric enters only through gaa=dg^a{}_a = d), so we may evaluate it in whatever signature is convenient. Take a dd-component real Gaussian variable xax^a with unit covariance. Wick’s theorem for Gaussian integrals gives exactly the same pairing sum,

⟨xa1⋯xa2n⟩=∑pairings P ∏(i,j)∈Pδaiaj,\left\langle x^{a_1}\cdots x^{a_{2n}}\right\rangle = \sum_{\text{pairings }P}\ \prod_{(i,j)\in P}\delta^{a_ia_j},

so contracting with the reference pairing δa1a2⋯δa2n−1a2n\delta_{a_1a_2}\cdots\delta_{a_{2n-1}a_{2n}} turns the left side into ⟨(x⋅x)n⟩\left\langle (x\cdot x)^{n}\right\rangle and the right side into ∑Pd c(P)\sum_P d^{\,c(P)}. The Gaussian moment obeys a one-line recursion. Integrating by parts,

∫ddx  e−x2/2 xa g(x)=∫ddx  e−x2/2 ∂ag(x)\int\mathrm{d}^dx\;e^{-x^2/2}\,x^a\,g(x) = \int\mathrm{d}^dx\;e^{-x^2/2}\,\partial_a g(x)

(the boundary term vanishes because of the Gaussian), applied with g(x)=xa(x2)n−1g(x) = x^a\left(x^2\right)^{n-1} and

∂a[xa(x2)n−1]=d(x2)n−1+2(n−1)(x2)n−1,\partial_a\left[x^a\left(x^2\right)^{n-1}\right] = d\left(x^2\right)^{n-1} + 2(n-1)\left(x^2\right)^{n-1} ,

gives

⟨(x2)n⟩=(d+2n−2)⟨(x2)n−1⟩,⟨(x2)0⟩=1,\left\langle\left(x^2\right)^n\right\rangle = (d+2n-2)\left\langle\left(x^2\right)^{n-1}\right\rangle , \qquad \left\langle\left(x^2\right)^0\right\rangle = 1 ,

hence ⟨(x2)n⟩=d (d+2)(d+4)⋯(d+2n−2)\left\langle\left(x^2\right)^n\right\rangle = d\,(d+2)(d+4)\cdots(d+2n-2). At d=4d=4,

Tn=4⋅6⋅8⋯(2n+2)=∏j=1n2(j+1)=2n (n+1)!,T_n = 4\cdot6\cdot8\cdots(2n+2) = \prod_{j=1}^{n}2(j+1) = 2^n\,(n+1)! ,

so that finally

⟨ℓa1⋯ℓa2n⟩=(ℓ2)n2n (n+1)!∑pairings ∏gab.\left\langle \ell^{a_1}\cdots\ell^{a_{2n}}\right\rangle = \frac{\left(\ell^2\right)^n}{2^n\,(n+1)!} \sum_{\text{pairings}}\ \prod g^{ab} .

The two checks: n=1n=1 gives 21⋅2!=42^1\cdot2! = 4 and n=2n=2 gives 22⋅3!=242^2\cdot3! = 24, agreeing with the explicit tracing above.

This formula is symmetrize(expr, k, l2) in code/loops.py. It works at the level of explicit components, not abstract indices: each monomial is turned into the list of component labels it contains (label μ\mu repeated as often as kμk^\mu occurs), all perfect matchings of that list are enumerated by _pairings, and each matching contributes ∏gab\prod g^{ab} — which for the diagonal metric is ∏METRIC[μ]\prod \mathrm{METRIC}[\mu] if every pair has equal labels and 0 otherwise. The total is multiplied by (ℓ2)n/(2n(n+1)!)(\ell^2)^n/\left(2^n(n+1)!\right) with ℓ2\ell^2 represented by the symbol passed as l2. Monomials of odd total degree are dropped outright; monomials in which a single component appears an odd number of times die automatically, because no matching can then pair all labels with equal partners.

>>> import sys; sys.path.insert(0, 'code')
>>> from sympy import symbols, simplify, expand, Rational
>>> from loops import symmetrize, dot, comps, METRIC
>>> l, l2 = comps("l"), symbols("l2")
>>> [simplify(symmetrize(expand(dot(l, l)**n), l, l2) - l2**n) == 0
...  for n in range(1, 5)]
[True, True, True, True]
>>> symmetrize(l[0]*l[0], l, l2), symmetrize(l[1]*l[1], l, l2)
(l2/4, -l2/4)
>>> symmetrize(l[0]*l[1], l, l2), symmetrize(l[0]*l[1]*l[2], l, l2)
(0, 0)
>>> g = lambda a, b: METRIC[a] if a == b else 0
>>> all(simplify(symmetrize(l[a]*l[b]*l[c]*l[d], l, l2)
...              - Rational(1, 24)*l2**2*(g(a,b)*g(c,d) + g(a,c)*g(b,d)
...                                       + g(a,d)*g(b,c))) == 0
...     for a in range(4) for b in range(4)
...     for c in range(4) for d in range(4))
True

The first line is the sharpest normalization test available: applying the rule to (ℓ⋅ℓ)n(\ell\cdot\ell)^n must give back (ℓ2)n(\ell^2)^n exactly, which pins 2n(n+1)!2^n(n+1)! with no freedom left.

Putting §5.1–§5.6 together. The recipe executed by every assemble routine is: combine denominators (§5.1), eliminate the first parameter with the δ\delta, shift k=ℓ+sk = \ell+s (§5.2), substitute the shift into the numerator, symmetrize it (§5.6) so that it becomes a polynomial in the single symbol ℓ2\ell^2, and finally replace each power (ℓ2)a\left(\ell^2\right)^a by loop_integral(a, n, Delta) (§5.3–§5.5). What is left is an ordinary integral over the Feynman simplex.

5.7 Dirac contraction identities

Everything here follows from the Clifford algebra

{γμ,γν}=2gμν1,i.e.γμγν=2gμν−γνγμ,\left\{\gamma^\mu,\gamma^\nu\right\} = 2g^{\mu\nu}\mathbb{1} , \qquad\text{i.e.}\qquad \gamma^\mu\gamma^\nu = 2g^{\mu\nu} - \gamma^\nu\gamma^\mu ,

which is the rule for moving one γ\gamma past another. Contracting it with gμνg_{\mu\nu} gives the zeroth identity,

γμγμ=gμνγμγν=12gμν{γμ,γν}=gμνgμν=δμμ=4.\gamma^\mu\gamma_\mu = g_{\mu\nu}\gamma^\mu\gamma^\nu = \tfrac12 g_{\mu\nu}\left\{\gamma^\mu,\gamma^\nu\right\} = g_{\mu\nu}g^{\mu\nu} = \delta^\mu_\mu = 4 .

One gamma in between. Move γν\gamma^\nu past γα\gamma^\alpha and use the previous line:

γνγαγν=(2gνα−γαγν)γν=2γα−γα(γνγν)=2γα−4γα=−2γα.\gamma^\nu\gamma^\alpha\gamma_\nu = \left(2g^{\nu\alpha}-\gamma^\alpha\gamma^\nu\right)\gamma_\nu = 2\gamma^\alpha - \gamma^\alpha\left(\gamma^\nu\gamma_\nu\right) = 2\gamma^\alpha - 4\gamma^\alpha = -2\gamma^\alpha .

Two gammas in between. Same first move, then the previous result:

γνγαγβγν=(2gνα−γαγν)γβγν=2γβγα−γα(γνγβγν)=2γβγα+2γαγβ,\gamma^\nu\gamma^\alpha\gamma^\beta\gamma_\nu = \left(2g^{\nu\alpha}-\gamma^\alpha\gamma^\nu\right) \gamma^\beta\gamma_\nu = 2\gamma^\beta\gamma^\alpha - \gamma^\alpha\left(\gamma^\nu\gamma^\beta\gamma_\nu\right) = 2\gamma^\beta\gamma^\alpha + 2\gamma^\alpha\gamma^\beta ,

and the right-hand side is 2{γα,γβ}2\{\gamma^\alpha,\gamma^\beta\}, so

γνγαγβγν=4gαβ.\gamma^\nu\gamma^\alpha\gamma^\beta\gamma_\nu = 4g^{\alpha\beta} .

Three gammas in between. Once more:

γνγαγβγγγν=(2gνα−γαγν)γβγγγν=2γβγγγα−γα(γνγβγγγν)\gamma^\nu\gamma^\alpha\gamma^\beta\gamma^\gamma\gamma_\nu = \left(2g^{\nu\alpha}-\gamma^\alpha\gamma^\nu\right) \gamma^\beta\gamma^\gamma\gamma_\nu = 2\gamma^\beta\gamma^\gamma\gamma^\alpha - \gamma^\alpha \left(\gamma^\nu\gamma^\beta\gamma^\gamma\gamma_\nu\right)
=2γβγγγα−4gβγγα.= 2\gamma^\beta\gamma^\gamma\gamma^\alpha - 4g^{\beta\gamma}\gamma^\alpha .

Now rewrite γβγγ=2gβγ−γγγβ\gamma^\beta\gamma^\gamma = 2g^{\beta\gamma}-\gamma^\gamma\gamma^\beta in the first term:

=4gβγγα−2γγγβγα−4gβγγα=−2γγγβγα.= 4g^{\beta\gamma}\gamma^\alpha - 2\gamma^\gamma\gamma^\beta\gamma^\alpha - 4g^{\beta\gamma}\gamma^\alpha = -2\gamma^\gamma\gamma^\beta\gamma^\alpha .

Slashed vectors. With /a≡aμγμ\slashed{a} \equiv a_\mu\gamma^\mu, the Clifford algebra contracted with aμbνa_\mu b_\nu reads

/a/b=aμbνγμγν=aμbν(2gμν−γνγμ)=2 a⋅b−/b/a,\slashed{a}\slashed{b} = a_\mu b_\nu\gamma^\mu\gamma^\nu = a_\mu b_\nu\left(2g^{\mu\nu}-\gamma^\nu\gamma^\mu\right) = 2\,a\cdot b - \slashed{b}\slashed{a} ,

and setting b=ab=a gives 2/a/a=2a22\slashed{a}\slashed{a} = 2a^2, i.e.

/a/a=a2.\slashed{a}\slashed{a} = a^2 .

The pipeline never uses any of these as rules — it multiplies the explicit 4×44\times4 matrices of code/dirac.py — but they are what make the hand-derivations of §8 and §11 short, and the explicit matrices do satisfy them:

>>> import sys; sys.path.insert(0, 'code')
>>> from sympy import symbols, simplify, zeros
>>> from dirac import GAMMA, ID4, METRIC, slash, dot
>>> Z = zeros(4, 4)
>>> g = lambda a, b: METRIC[a] if a == b else 0
>>> def C(*mid):
...     "gamma^nu (mid) gamma_nu, summed over nu with the metric"
...     out = Z
...     for n in range(4):
...         M = GAMMA[n]
...         for a in mid:
...             M = M*GAMMA[a]
...         out = out + METRIC[n]*M*GAMMA[n]
...     return simplify(out)
>>> C() - 4*ID4 == Z
True
>>> all(C(a) + 2*GAMMA[a] == Z for a in range(4))
True
>>> all(C(a, b) - 4*g(a, b)*ID4 == Z for a in range(4) for b in range(4))
True
>>> all(C(a, b, c) + 2*GAMMA[c]*GAMMA[b]*GAMMA[a] == Z
...     for a in range(4) for b in range(4) for c in range(4))
True
>>> A = list(symbols("a0 a1 a2 a3")); B = list(symbols("b0 b1 b2 b3"))
>>> simplify(slash(A)*slash(B) + slash(B)*slash(A)
...          - 2*dot(A, B)*ID4) == Z
True

5.8 Dimensional regularization as a cross-check

Pauli–Villars at the level of the master integral is a prescription, and a prescription deserves an independent check. We therefore record just enough dimensional regularization to redo a log-divergent one-loop integral in d=4−2ϵd = 4-2\epsilon dimensions. (This ϵ\epsilon has nothing to do with the iϵi\epsilon of §5.3, which has already done its work.)

Nothing in §5.1, §5.2 or §5.3 mentions the number of dimensions, so Feynman parametrization, the shift and the Wick rotation carry over verbatim. Only the Euclidean angular measure changes. Repeating the Gaussian argument of §5.4 in dd dimensions,

πd/2=∫ddx  e−x2=Sd−1∫0∞rd−1e−r2dr=Sd−1⋅12 Γ ⁣(d2),\pi^{d/2} = \int\mathrm{d}^dx\;e^{-x^2} = S_{d-1}\int_0^\infty r^{d-1}e^{-r^2}\mathrm{d}r = S_{d-1}\cdot\tfrac12\,\Gamma\!\left(\tfrac d2\right),

using t=r2t = r^2 in ∫0∞rd−1e−r2dr=12∫0∞td/2−1e−tdt\int_0^\infty r^{d-1}e^{-r^2}\mathrm{d}r = \frac12\int_0^\infty t^{d/2-1}e^{-t}\mathrm{d}t. Hence

Sd−1=2πd/2Γ ⁣(d2),S_{d-1} = \frac{2\pi^{d/2}}{\Gamma\!\left(\frac d2\right)} ,

which for d=4d=4 reproduces S3=2π2/Γ(2)=2π2S_3 = 2\pi^2/\Gamma(2) = 2\pi^2. The same Beta substitution t=Δv/(1−v)t = \Delta v/(1-v) as in §5.4, now with p=d/2p = d/2 and q=n−d/2q = n-d/2, gives

∫0∞t d/2−1 dt(t+Δ)n=Δ d/2−n Γ ⁣(d2)Γ ⁣(n−d2)Γ(n),\int_0^\infty\frac{t^{\,d/2-1}\,\mathrm{d}t}{(t+\Delta)^n} = \Delta^{\,d/2-n}\, \frac{\Gamma\!\left(\frac d2\right)\Gamma\!\left(n-\frac d2\right)} {\Gamma(n)} ,

so that, with πd/2/(2π)d=1/(2dπd/2)=(4π)−d/2\pi^{d/2}/(2\pi)^d = 1/\left(2^d\pi^{d/2}\right) = (4\pi)^{-d/2} and the Wick factor i(−1)ni(-1)^n,

∫ddℓ(2π)d1(ℓ2−Δ)n=i (−1)n(4π)d/2 Γ ⁣(n−d2)Γ(n)  Δ d/2−n.\int\frac{\mathrm{d}^d\ell}{(2\pi)^d} \frac{1}{\left(\ell^2-\Delta\right)^n} = \frac{i\,(-1)^n}{(4\pi)^{d/2}}\, \frac{\Gamma\!\left(n-\frac d2\right)}{\Gamma(n)}\; \Delta^{\,d/2-n} .

The ultraviolet divergence now shows up as a pole of Γ ⁣(n−d2)\Gamma\!\left(n-\frac d2\right) rather than as a divergent vv integral. The log-divergent case is n=2n=2, where n−d2=ϵn - \frac d2 = \epsilon. Using

Γ(ϵ)=Γ(1+ϵ)ϵ=1ϵ−γE+O(ϵ)(from Γ(1+ϵ)=1−γEϵ+O(ϵ2)),\Gamma(\epsilon) = \frac{\Gamma(1+\epsilon)}{\epsilon} = \frac{1}{\epsilon} - \gamma_E + O(\epsilon) \qquad\text{(from } \Gamma(1+\epsilon) = 1-\gamma_E\epsilon+O(\epsilon^2) \text{)},

together with Xϵ=1+ϵlog⁡X+O(ϵ2)X^{\epsilon} = 1+\epsilon\log X + O(\epsilon^2) applied to (4π)ϵ(4\pi)^{\epsilon} and Δ−ϵ\Delta^{-\epsilon},

∫ddℓ(2π)d1(ℓ2−Δ)2=i16π2 (4π)ϵ Γ(ϵ) Δ−ϵ=i16π2(1ϵ−γE+log⁡4π−log⁡Δ)+O(ϵ).\int\frac{\mathrm{d}^d\ell}{(2\pi)^d} \frac{1}{\left(\ell^2-\Delta\right)^2} = \frac{i}{16\pi^2}\,(4\pi)^{\epsilon}\,\Gamma(\epsilon)\, \Delta^{-\epsilon} = \frac{i}{16\pi^2}\left(\frac1\epsilon - \gamma_E + \log4\pi - \log\Delta\right) + O(\epsilon).

Comparing with the a=0a=0, n=2n=2 case of §5.5, i16π2(LUV−log⁡Δ)\frac{i}{16\pi^2}\left(L_{UV}-\log\Delta\right), gives the dictionary

LUV  ⟷  1ϵ−γE+log⁡4π.L_{UV} \;\longleftrightarrow\; \frac1\epsilon - \gamma_E + \log4\pi .

A caveat on the dictionary. It is exact for a=0a=0 only. For a≥1a\ge1 the numerator ℓ2\ell^2 is itself dd-dimensional, the angular average of §5.6 supplies dd where four dimensions supply 4, and the standard result

∫ddℓ(2π)dℓ2(ℓ2−Δ)n=i (−1)n−1(4π)d/2 d2 Γ ⁣(n−d2−1)Γ(n)  Δ d/2+1−n\int\frac{\mathrm{d}^d\ell}{(2\pi)^d} \frac{\ell^2}{\left(\ell^2-\Delta\right)^n} = \frac{i\,(-1)^{n-1}}{(4\pi)^{d/2}}\,\frac d2\, \frac{\Gamma\!\left(n-\frac d2-1\right)}{\Gamma(n)}\; \Delta^{\,d/2+1-n}

expands, at the log-divergent point a=1a=1, n=3n=3, to

i16π2(1ϵ−γE+log⁡4π−log⁡Δ−12)+O(ϵ),\frac{i}{16\pi^2}\left(\frac1\epsilon - \gamma_E + \log4\pi - \log\Delta - \frac12\right) + O(\epsilon),

half a unit away from the naive dictionary value. This is precisely the finite local constant by which two regulators are allowed to differ. It causes no trouble here: within one diagram the Pauli–Villars constant is the same for all (a,n)(a,n) (it is log⁡ΔΛ\log\Delta_\Lambda, one object per diagram), and the scripts verify that its coefficient vanishes pointwise in the Feynman parameters, so the ambiguity drops out entirely. It does mean that a dimensional-regularization cross-check must be run consistently on a whole integral, not by substituting the dictionary term by term.

Dirac algebra in dd dimensions. The two identities needed for such a cross-check follow exactly as in §5.7, with δμμ=d\delta^\mu_\mu = d in place of 4:

γμγμ=gμνgμν=δμμ=d,\gamma^\mu\gamma_\mu = g_{\mu\nu}g^{\mu\nu} = \delta^\mu_\mu = d ,
γνγαγν=2γα−γα(γνγν)=(2−d) γα=−(2−2ϵ)γα,\gamma^\nu\gamma^\alpha\gamma_\nu = 2\gamma^\alpha - \gamma^\alpha\left(\gamma^\nu\gamma_\nu\right) = (2-d)\,\gamma^\alpha = -\left(2-2\epsilon\right)\gamma^\alpha ,

the last step using 2−d=2−(4−2ϵ)=−(2−2ϵ)2-d = 2-(4-2\epsilon) = -(2-2\epsilon). (For completeness, the same manipulation gives γνγαγβγν=4gαβ+(d−4)γαγβ=4gαβ−2ϵ γαγβ\gamma^\nu\gamma^\alpha\gamma^\beta\gamma_\nu = 4g^{\alpha\beta} + (d-4)\gamma^\alpha\gamma^\beta = 4g^{\alpha\beta} - 2\epsilon\,\gamma^\alpha\gamma^\beta, whose second term matters only when it multiplies a 1/ϵ1/\epsilon pole.)

Both expansions above are checked symbolically:

>>> from sympy import (symbols, simplify, expand, series, gamma, log, pi,
...                    I, S, EulerGamma)
>>> eps = symbols("epsilon", positive=True)
>>> D = symbols("Delta", positive=True)
>>> d = 4 - 2*eps
>>> PV = I/(16*pi**2)*(1/eps - EulerGamma + log(4*pi) - log(D))
>>> M0 = I*S(-1)**2/(4*pi)**(d/2)*gamma(2 - d/2)/gamma(2)*D**(d/2 - 2)
>>> simplify(expand(series(M0, eps, 0, 1).removeO() - PV))
0
>>> M1 = (I*S(-1)**2/(4*pi)**(d/2)*(d/2)*gamma(3 - d/2 - 1)/gamma(3)
...       * D**(d/2 + 1 - 3))
>>> simplify(expand(series(M1, eps, 0, 1).removeO() - PV))
-I/(32*pi**2)

6. Warm-up: diagram IIe (vacuum polarization)

Of the five independent two-loop contributions to aea_e, diagram IIe is by far the friendliest, and the right place to learn the machinery. It is the only one of the five in which the second loop can be done first, in closed form, and then re-inserted into the first loop as a one-parameter family of tree-level-looking objects. The whole two-loop integral collapses to a single ordinary integral, which we will evaluate by hand down to the last rational number.

Along the way every ingredient of the general programme shows up at least once: the closed-fermion-loop sign, a divergence that is not removed by the projection onto F2F_2 but by a genuine counterterm, a regulator that must be chosen to respect a symmetry, an on-shell collapse argument that kills a whole tensor structure, and a dispersion relation. Only the last of these is special to IIe.

Throughout, ae=F2(0)a_e = F_2(0), and per-diagram values are quoted in units of (α/π)2(\alpha/\pi)^2,

F2X(0)=μX(απ)2,F_2^{X}(0) = \mu_X\left(\frac{\alpha}{\pi}\right)^2 ,

so that the target of this section is Petermann’s

μIIe=11936−π23=0.0156874…\mu_\mathrm{IIe} = \frac{119}{36} - \frac{\pi^2}{3} = 0.0156874\ldots

6.1 The diagram and its amplitude

Diagram IIe

The starting point is the LO vertex correction of the previous chapter. With the internal electron momenta kk and k′=k+qk' = k+q and the internal photon carrying

kγ≡k−p(so that k=p+kγ,k′=p′+kγ),k_\gamma \equiv k - p \qquad\text{(so that } k = p + k_\gamma,\quad k' = p' + k_\gamma\text{)},

the Feynman rules — vertex −ieγμ-ie\gamma^\mu, fermion propagator i(/k+m)/(k2−m2)i(\slashed{k}+m)/(k^2-m^2), photon propagator −igμν/(k2−λ2)-ig_{\mu\nu}/(k^2-\lambda^2) — give

uˉ(p′) δΓLOμ u(p)=∫d4k(2π)4  uˉ(p′) (−ieγν) i(/k′+m)k′2−m2 γμ i(/k+m)k2−m2 (−ieγρ) u(p)  −igνρkγ2−λ2.\bar u(p')\,\delta\Gamma^\mu_\mathrm{LO}\,u(p) = \int\frac{\mathrm{d}^4k}{(2\pi)^4}\; \bar u(p')\,(-ie\gamma^\nu)\, \frac{i(\slashed{k}'+m)}{k'^2-m^2}\,\gamma^\mu\, \frac{i(\slashed{k}+m)}{k^2-m^2}\,(-ie\gamma^\rho)\,u(p)\; \frac{-ig_{\nu\rho}}{k_\gamma^2-\lambda^2}.

Diagram IIe is obtained from this by replacing the single internal photon line by the chain propagator – one-loop electron bubble – propagator:

−igνρkγ2−λ2  ⟶  −igναkγ2−λ2  [iΠαβ(kγ)]  −igβρkγ2−λ2,\frac{-ig_{\nu\rho}}{k_\gamma^2-\lambda^2}\;\longrightarrow\; \frac{-ig_{\nu\alpha}}{k_\gamma^2-\lambda^2}\; \left[i\Pi^{\alpha\beta}(k_\gamma)\right]\; \frac{-ig_{\beta\rho}}{k_\gamma^2-\lambda^2},

so that

uˉ(p′) δΓIIeμ u(p)=e2∫d4k(2π)4  uˉ(p′) γν(/k′+m)γμ(/k+m)γρ u(p)[k′2−m2][k2−m2]  −igναkγ2−λ2  [iΠαβ(kγ)]  −igβρkγ2−λ2.\bar u(p')\,\delta\Gamma^\mu_\mathrm{IIe}\,u(p) = e^2\int\frac{\mathrm{d}^4k}{(2\pi)^4}\; \frac{\bar u(p')\,\gamma^\nu(\slashed{k}'+m)\gamma^\mu (\slashed{k}+m)\gamma^\rho\,u(p)} {\left[k'^2-m^2\right]\left[k^2-m^2\right]}\; \frac{-ig_{\nu\alpha}}{k_\gamma^2-\lambda^2}\; \left[i\Pi^{\alpha\beta}(k_\gamma)\right]\; \frac{-ig_{\beta\rho}}{k_\gamma^2-\lambda^2}.

The prefactor e2e^2 in front of the integral is worth spelling out once, because sign errors here are the classic way to get the wrong answer:

The two photon propagators and the blob are left displayed, since we are about to rearrange them.

The blob itself is a closed fermion loop, and therefore carries the two extra rules that distinguish it from everything else in the calculation: an overall (−1)(-1) (from the anticommuting reordering of the fermion fields needed to close the loop in Wick’s theorem) and a Dirac trace (because the loop closes on itself in spinor space). With loop momentum ll and photon momentum kk,

iΠμν(k)=(−1)∫d4l(2π)4  tr[(−ieγμ) i(/l+m)l2−m2 (−ieγν) i(/l−/k+m)(l−k)2−m2].i\Pi^{\mu\nu}(k) = (-1)\int\frac{\mathrm{d}^4l}{(2\pi)^4}\; \mathrm{tr}\left[(-ie\gamma^\mu)\, \frac{i(\slashed{l}+m)}{l^2-m^2}\,(-ie\gamma^\nu)\, \frac{i(\slashed{l}-\slashed{k}+m)}{(l-k)^2-m^2}\right].

Counting the constants: (−1)(-1) from the loop, (−ie)2=−e2(-ie)^2 = -e^2 from the two vertices, i2=−1i^2 = -1 from the two propagators, hence (−1)(−e2)(−1)=−e2(-1)(-e^2)(-1) = -e^2 and

iΠμν(k)=−e2∫d4l(2π)4  tr[γμ(/l+m)γν(/l−/k+m)][l2−m2][(l−k)2−m2],i\Pi^{\mu\nu}(k) = -e^2\int\frac{\mathrm{d}^4l}{(2\pi)^4}\; \frac{\mathrm{tr}\left[\gamma^\mu(\slashed{l}+m)\gamma^\nu (\slashed{l}-\slashed{k}+m)\right]} {\left[l^2-m^2\right]\left[(l-k)^2-m^2\right]},
Πμν(k)=ie2∫d4l(2π)4  tr[γμ(/l+m)γν(/l−/k+m)][l2−m2][(l−k)2−m2].\Pi^{\mu\nu}(k) = i e^2\int\frac{\mathrm{d}^4l}{(2\pi)^4}\; \frac{\mathrm{tr}\left[\gamma^\mu(\slashed{l}+m)\gamma^\nu (\slashed{l}-\slashed{k}+m)\right]} {\left[l^2-m^2\right]\left[(l-k)^2-m^2\right]}.

(In this subsection kk denotes the momentum flowing through the photon line; when we insert the result back into the vertex it will be kγk_\gamma.)

6.2 The one-loop photon self-energy

The trace. Expanding the two numerators gives one term with four gamma matrices, two with three, and one with two. Traces of an odd number of gamma matrices vanish, so only the first and the last survive:

tr[γμ(/l+m)γν(/l−/k+m)]=tr[γμ/lγν(/l−/k)]+m2 tr[γμγν].\mathrm{tr}\left[\gamma^\mu(\slashed{l}+m)\gamma^\nu (\slashed{l}-\slashed{k}+m)\right] = \mathrm{tr}\left[\gamma^\mu\slashed{l}\gamma^\nu (\slashed{l}-\slashed{k})\right] + m^2\,\mathrm{tr}\left[\gamma^\mu\gamma^\nu\right].

With $\mathrm{tr}[\gamma^\mu\gamma^\alpha\gamma^\nu\gamma^\beta] = 4(g^{\mu\alpha}g^{\nu\beta} - g^{\mu\nu}g^{\alpha\beta}

tr[⋯ ]=4[lμ(l−k)ν+lν(l−k)μ−gμν(l⋅(l−k)−m2)].\mathrm{tr}\left[\cdots\right] = 4\left[l^\mu(l-k)^\nu + l^\nu(l-k)^\mu - g^{\mu\nu}\left(l\cdot(l-k) - m^2\right)\right].

This identity is verified index by index with explicit 4×44\times4 Dirac matrices (code/dirac.py), so nothing here is being taken on faith.

Feynman parametrization and the shift. Combine the two denominators with

1AB=∫01dx[xA+(1−x)B]2,A=(l−k)2−m2,B=l2−m2.\frac{1}{AB} = \int_0^1\frac{\mathrm{d}x}{\left[xA+(1-x)B\right]^2}, \qquad A = (l-k)^2-m^2,\quad B = l^2-m^2 .

Expanding,

x[(l−k)2−m2]+(1−x)[l2−m2]=l2−2x l⋅k+xk2−m2=(l−xk)2−Δx,x\left[(l-k)^2-m^2\right] + (1-x)\left[l^2-m^2\right] = l^2 - 2x\,l\cdot k + x k^2 - m^2 = (l-xk)^2 - \Delta_x ,
Δx≡m2−x(1−x) k2.\Delta_x \equiv m^2 - x(1-x)\,k^2 .

The shift l=ℓ+xkl = \ell + xk has unit Jacobian and turns the numerator momenta into

lμ→ℓμ+xkμ,(l−k)μ→ℓμ−(1−x)kμ.l^\mu \to \ell^\mu + x k^\mu, \qquad (l-k)^\mu \to \ell^\mu - (1-x)k^\mu .

Terms odd in ℓ\ell integrate to zero, and even ones may be replaced by their rotational average ⟨ℓμℓν⟩=14gμνℓ2\langle\ell^\mu\ell^\nu\rangle = \tfrac14 g^{\mu\nu}\ell^2. Then

lμ(l−k)ν+lν(l−k)μ  ⟶  12gμνℓ2−2x(1−x) kμkν,l^\mu(l-k)^\nu + l^\nu(l-k)^\mu \;\longrightarrow\; \tfrac12 g^{\mu\nu}\ell^2 - 2x(1-x)\,k^\mu k^\nu ,
l⋅(l−k)−m2  ⟶  ℓ2−x(1−x)k2−m2,l\cdot(l-k) - m^2 \;\longrightarrow\; \ell^2 - x(1-x)k^2 - m^2 ,

so that the whole numerator becomes

Nμν=4[−12gμνℓ2−2x(1−x) kμkν+gμν(x(1−x)k2+m2)]N^{\mu\nu} = 4\left[-\tfrac12 g^{\mu\nu}\ell^2 - 2x(1-x)\,k^\mu k^\nu + g^{\mu\nu}\left(x(1-x)k^2 + m^2\right)\right]

and

Πμν(k)=ie2∫01dx∫d4ℓ(2π)4  Nμν(ℓ2−Δx)2.\Pi^{\mu\nu}(k) = ie^2\int_0^1\mathrm{d}x \int\frac{\mathrm{d}^4\ell}{(2\pi)^4}\; \frac{N^{\mu\nu}}{\left(\ell^2-\Delta_x\right)^2}.

(Both the shift and the averaged numerator are checked symbolically.)

Transversality is not automatic — it is a statement about the regulator. Write the result as

Πμν(k)=gμν A+kμkν B,\Pi^{\mu\nu}(k) = g^{\mu\nu}\,\mathcal{A} + k^\mu k^\nu\,\mathcal{B},
A=ie2∫01dx[−2 I2(Δx)+4(x(1−x)k2+m2)I1(Δx)],B=−8ie2∫01dx  x(1−x) I1(Δx),\mathcal{A} = ie^2\int_0^1\mathrm{d}x\left[-2\,I_2(\Delta_x) + 4\left(x(1-x)k^2+m^2\right)I_1(\Delta_x)\right],\qquad \mathcal{B} = -8ie^2\int_0^1\mathrm{d}x\;x(1-x)\,I_1(\Delta_x),

with the two loop integrals

I1(Δ)=∫d4ℓ(2π)41(ℓ2−Δ)2,I2(Δ)=∫d4ℓ(2π)4ℓ2(ℓ2−Δ)2.I_1(\Delta) = \int\frac{\mathrm{d}^4\ell}{(2\pi)^4} \frac{1}{\left(\ell^2-\Delta\right)^2},\qquad I_2(\Delta) = \int\frac{\mathrm{d}^4\ell}{(2\pi)^4} \frac{\ell^2}{\left(\ell^2-\Delta\right)^2}.

The claim Πμν=(k2gμν−kμkν)Π(k2)\Pi^{\mu\nu} = (k^2g^{\mu\nu}-k^\mu k^\nu)\Pi(k^2) is exactly the pair of statements A=k2Π\mathcal{A} = k^2\Pi and B=−Π\mathcal{B} = -\Pi, i.e. the single condition A+k2B=0\mathcal{A} + k^2\mathcal{B} = 0. Adding the two lines above, the x(1−x)k2x(1-x)k^2 pieces combine as 4x(1−x)k2−8x(1−x)k2=−4x(1−x)k24x(1-x)k^2 - 8x(1-x)k^2 = -4x(1-x)k^2, so

A+k2B=ie2∫01dx[−2I2(Δx)+4(m2−x(1−x)k2)I1(Δx)]=−2ie2∫01dx[I2(Δx)−2ΔxI1(Δx)],\mathcal{A} + k^2\mathcal{B} = ie^2\int_0^1\mathrm{d}x\left[-2I_2(\Delta_x) + 4\left(m^2 - x(1-x)k^2\right)I_1(\Delta_x)\right] = -2ie^2\int_0^1\mathrm{d}x\left[I_2(\Delta_x) - 2\Delta_x I_1(\Delta_x)\right],

where Δx=m2−x(1−x)k2\Delta_x = m^2-x(1-x)k^2 was used in the last step. So

  Πμν is transverse  ⟺  I2(Δ)=2Δ I1(Δ)  \boxed{\;\Pi^{\mu\nu}\ \text{is transverse} \iff I_2(\Delta) = 2\Delta\, I_1(\Delta)\;}

as an identity between the regularized integrals. Both are divergent, so whether it holds is entirely a question about the regulator.

Evaluate them. Wick rotation (ℓ0=iℓE4\ell^0 = i\ell_E^4, ℓ2=−ℓE2\ell^2 = -\ell_E^2, d4ℓ=i d4ℓE\mathrm{d}^4\ell = i\,\mathrm{d}^4\ell_E), the Euclidean radial measure ∫d4ℓEf(ℓE2)=π2∫0∞t f(t) dt\int\mathrm{d}^4\ell_E f(\ell_E^2) = \pi^2\int_0^\infty t\,f(t)\,\mathrm{d}t and π2/(2π)4=1/(16π2)\pi^2/(2\pi)^4 = 1/(16\pi^2) give, with a Euclidean cutoff t≤T=Λ2t \le T = \Lambda^2,

I1(Δ)=i16π2∫0Tt dt(t+Δ)2,I2(Δ)=−i16π2∫0Tt2 dt(t+Δ)2I_1(\Delta) = \frac{i}{16\pi^2}\int_0^{T} \frac{t\,\mathrm{d}t}{(t+\Delta)^2},\qquad I_2(\Delta) = -\frac{i}{16\pi^2}\int_0^{T} \frac{t^2\,\mathrm{d}t}{(t+\Delta)^2}

(the relative sign is ℓ2=−ℓE2\ell^2 = -\ell_E^2 in the numerator of I2I_2; the denominators are equal because (ℓ2−Δ)2=(ℓE2+Δ)2(\ell^2-\Delta)^2 = (\ell_E^2+\Delta)^2). Therefore

I2(Δ)−2ΔI1(Δ)=−i16π2∫0Tt2+2Δt(t+Δ)2 dt=−i16π2∫0T[1−Δ2(t+Δ)2]dtI_2(\Delta) - 2\Delta I_1(\Delta) = -\frac{i}{16\pi^2} \int_0^{T}\frac{t^2+2\Delta t}{(t+\Delta)^2}\,\mathrm{d}t = -\frac{i}{16\pi^2}\int_0^{T} \left[1 - \frac{\Delta^2}{(t+\Delta)^2}\right]\mathrm{d}t
=−i16π2[T−Δ+Δ2T+Δ],= -\frac{i}{16\pi^2}\left[T - \Delta + \frac{\Delta^2}{T+\Delta}\right],

using t2+2Δt=(t+Δ)2−Δ2t^2+2\Delta t = (t+\Delta)^2-\Delta^2. This is the crux. With a naive cutoff — keep only this expression and let T=Λ2→∞T = \Lambda^2\to\infty — the right-hand side is −i16π2(Λ2−Δ)≠0-\frac{i}{16\pi^2}(\Lambda^2-\Delta) \neq 0, and Πμν\Pi^{\mu\nu} comes out with a leftover gμνΛ2g^{\mu\nu}\Lambda^2 piece: a photon mass ∝αΛ2\propto\alpha\Lambda^2, which is precisely what gauge invariance forbids. A hard cutoff is not a gauge-invariant regulator, and the transverse structure is genuinely broken by it.

Pauli–Villars repairs this. The regularized self-energy is defined as

Πregμν(k)=∑i≥0ci Πμν(k;Mi),M0=m,c0=1,\Pi^{\mu\nu}_{\rm reg}(k) = \sum_{i\ge0} c_i\,\Pi^{\mu\nu}(k;M_i), \qquad M_0 = m,\quad c_0 = 1,

i.e. the same loop computed with a set of heavy fictitious fermions of mass Mi→∞M_i \to \infty and weights cic_i, subject to the two conditions

∑ici=0,∑iciMi2=0\sum_i c_i = 0, \qquad \sum_i c_i M_i^2 = 0

(two conditions, hence at least two regulator masses). Under the cic_i-sum, Δx(i)=Mi2−x(1−x)k2\Delta_x^{(i)} = M_i^2 - x(1-x)k^2 and, with the cutoff T→∞T\to\infty taken first at fixed MiM_i (legitimate, because the subtracted integrand is convergent),

∑ici[T−Δx(i)+(Δx(i))2T+Δx(i)]  →T→∞  T∑ici⏟= 0−(∑iciMi2−k2 x(1−x)∑ici)⏟= 0  =  0.\sum_i c_i\left[T - \Delta_x^{(i)} + \frac{(\Delta_x^{(i)})^2} {T+\Delta_x^{(i)}}\right] \;\xrightarrow[T\to\infty]{}\; \underbrace{T\sum_i c_i}_{=\,0} - \underbrace{\left(\sum_i c_i M_i^2 - k^2\,x(1-x)\sum_i c_i\right)}_{=\,0} \; = \; 0 .

Both conditions are used, and the transversality-violating remainder vanishes identically. This is the precise sense in which “the fermion loop needs a gauge-invariant regulator”: the two PV conditions are exactly the two conditions needed to kill the quadratically divergent non-transverse polynomial.

The unambiguous piece. With transversality established we may read Π(k2)\Pi(k^2) off the kμkνk^\mu k^\nu coefficient, which involves only the logarithmically divergent I1I_1 and is therefore free of the ambiguity that afflicted A\mathcal{A}. From the cutoff form,

∫0Tt dt(t+Δ)2=log⁡T+ΔΔ−1+ΔT+Δ,\int_0^{T}\frac{t\,\mathrm{d}t}{(t+\Delta)^2} = \log\frac{T+\Delta}{\Delta} - 1 + \frac{\Delta}{T+\Delta},

so that the PV sum gives (using ∑ici=0\sum_i c_i = 0 to cancel the log⁡T\log T, and Δx(i)≃Mi2\Delta^{(i)}_x \simeq M_i^2 with ∑i≥1ci=−1\sum_{i\ge1}c_i = -1 to convert the heavy logs into a single symbol)

∑ici∫0Tt dt(t+Δx(i))2=−∑icilog⁡Δx(i)=LUV−log⁡Δx,LUV≡log⁡Λ2+const,\sum_i c_i\int_0^{T}\frac{t\,\mathrm{d}t}{(t+\Delta_x^{(i)})^2} = -\sum_i c_i\log\Delta_x^{(i)} = L_{UV} - \log\Delta_x ,\qquad L_{UV} \equiv \log\Lambda^2 + \text{const},

i.e. exactly the single-symbol bookkeeping we use everywhere:

I1(Δ)=i16π2(LUV−log⁡Δ).I_1(\Delta) = \frac{i}{16\pi^2}\left(L_{UV}-\log\Delta\right).

Hence

B=−8ie2∫01dx  x(1−x) i16π2(LUV−log⁡Δx)=e22π2∫01dx  x(1−x)(LUV−log⁡Δx),\mathcal{B} = -8ie^2\int_0^1\mathrm{d}x\;x(1-x)\, \frac{i}{16\pi^2}\left(L_{UV}-\log\Delta_x\right) = \frac{e^2}{2\pi^2}\int_0^1\mathrm{d}x\;x(1-x) \left(L_{UV}-\log\Delta_x\right),

and with Π=−B\Pi = -\mathcal{B} and e2=4παe^2 = 4\pi\alpha,

  Π(k2)=−2απ∫01dx  x(1−x)(LUV−log⁡[m2−x(1−x)k2]).  \boxed{\;\Pi(k^2) = -\frac{2\alpha}{\pi}\int_0^1\mathrm{d}x\;x(1-x) \left(L_{UV} - \log\left[m^2 - x(1-x)k^2\right]\right).\;}

The whole ultraviolet divergence sits in the single constant Π∞=−2απLUV∫01x(1−x) dx=−α3πLUV\Pi_\infty = -\frac{2\alpha}{\pi}L_{UV}\int_0^1 x(1-x)\,\mathrm{d}x = -\frac{\alpha}{3\pi}L_{UV}, independent of k2k^2 — as it must be, since the divergence is a local (polynomial) term.

6.3 Charge renormalization: why subtract at k2=0k^2 = 0

Strung on free photon propagators, the 1PI blob resums geometrically,

−igμνk2+−igμαk2[iΠαβ]−igβνk2+⋯=−igμνk2(1−Π(k2))+(kμkν terms),\frac{-ig_{\mu\nu}}{k^2} + \frac{-ig_{\mu\alpha}}{k^2}\left[i\Pi^{\alpha\beta}\right] \frac{-ig_{\beta\nu}}{k^2} + \cdots = \frac{-ig_{\mu\nu}}{k^2\left(1-\Pi(k^2)\right)} + \left(k_\mu k_\nu\ \text{terms}\right),

which is where transversality earns its keep twice over: the pole stays at k2=0k^2 = 0 (the photon is not given a mass), and the longitudinal terms are pure gauge. Near the pole the transverse propagator is

−igμνk2⋅11−Π(0),\frac{-ig_{\mu\nu}}{k^2}\cdot\frac{1}{1-\Pi(0)},

so a long-wavelength (Thomson-limit) measurement of the electron’s charge does not see the Lagrangian coupling e0e_0 but

e2≡e021−Π(0)=4πα,α=1137.035999…e^2 \equiv \frac{e_0^2}{1-\Pi(0)} = 4\pi\alpha, \qquad \alpha = \frac{1}{137.035999\ldots}

This is the definition of the physical charge: the residue of the photon pole times the bare coupling. Everything else follows. Writing

Π^(k2)≡Π(k2)−Π(0),Π^(0)=0,\hat\Pi(k^2) \equiv \Pi(k^2)-\Pi(0), \qquad \hat\Pi(0) = 0,

we have, to the order we need,

e021−Π(k2)=e2(1−Π(0))1−Π(0)−Π^(k2)=e2[1+Π^(k2)+O(α2)].\frac{e_0^2}{1-\Pi(k^2)} = \frac{e^2\left(1-\Pi(0)\right)}{1-\Pi(0)-\hat\Pi(k^2)} = e^2\left[1 + \hat\Pi(k^2) + O(\alpha^2)\right].

So: the physically correct object is Π^\hat\Pi, not Π\Pi, and the coupling multiplying it is the measured α\alpha. Subtracting at k2=0k^2=0 is not a convention chosen for convenience; it is what the experiment that fixes α\alpha has already done for us.

Equivalently, in counterterm language, the subtraction is generated by the photon field-strength counterterm

L⊃−δ34FμνFμν,δ3=Π(0)=−2απ(LUV−log⁡m2)∫01x(1−x) dx=−α3π(LUV−log⁡m2),\mathcal{L} \supset -\frac{\delta_3}{4}F_{\mu\nu}F^{\mu\nu}, \qquad \delta_3 = \Pi(0) = -\frac{2\alpha}{\pi}\left(L_{UV}-\log m^2\right)\int_0^1 x(1-x)\,\mathrm{d}x = -\frac{\alpha}{3\pi}\left(L_{UV}-\log m^2\right),

whose Feynman rule −i(k2gμν−kμkν)δ3-i(k^2g^{\mu\nu}-k^\mu k^\nu)\delta_3 adds to iΠμνi\Pi^{\mu\nu} to give i(k2gμν−kμkν)Π^i(k^2g^{\mu\nu}-k^\mu k^\nu)\hat\Pi. It is also exactly the class III/IV bookkeeping of the Karplus–Kroll classification: the vacuum-polarization chains sitting on the external potential line are the factor 1/(1−Π(q2))1/(1-\Pi(q^2)) of the resummation above; after charge renormalization they contribute Fiblob(q2) Π^(q2)F_i^{\rm blob}(q^2)\,\hat\Pi(q^2), and since Π^(0)=0\hat\Pi(0)=0 while all FiblobF_i^{\rm blob} are finite at q2=0q^2=0, they contribute nothing to ae=F2(0)a_e = F_2(0). Those two whole classes of diagrams are pure charge renormalization. Diagram IIe is what is left over once that is taken out.

Subtracting cancels the LUVL_{UV} exactly, because it was k2k^2 independent:

  Π^(k2)=2απ∫01dx  x(1−x) log⁡m2−x(1−x)k2m2  \boxed{\;\hat\Pi(k^2) = \frac{2\alpha}{\pi}\int_0^1\mathrm{d}x\; x(1-x)\,\log\frac{m^2-x(1-x)k^2}{m^2}\;}

— finite, with no trace of the regulator left. (For spacelike k2<0k^2<0 the logarithm is positive, so Π^>0\hat\Pi>0 and the effective coupling e2[1+Π^]e^2[1+\hat\Pi] grows with ∣k2∣|k^2|: the familiar screening of the vacuum.)

Small k2k^2, and why IIe needs no infrared regulator. Expanding the logarithm,

log⁡(1−x(1−x)k2m2)=−x(1−x)k2m2+O(k4),\log\left(1-\frac{x(1-x)k^2}{m^2}\right) = -\frac{x(1-x)k^2}{m^2} + O(k^4),
Π^(k2)=−2απk2m2∫01x2(1−x)2 dx+O(k4)=−α15πk2m2+O(k4),\hat\Pi(k^2) = -\frac{2\alpha}{\pi}\frac{k^2}{m^2} \int_0^1 x^2(1-x)^2\,\mathrm{d}x + O(k^4) = -\frac{\alpha}{15\pi}\frac{k^2}{m^2} + O(k^4),

using ∫01x2(1−x)2dx=B(3,3)=2! 2!/5!=1/30\int_0^1 x^2(1-x)^2\mathrm{d}x = B(3,3) = 2!\,2!/5! = 1/30. So Π^\hat\Pi vanishes linearly at k2=0k^2 = 0.

That single fact makes diagram IIe infrared finite. The correction to the photon line in IIe is (see the next subsection) −igνρ Π^(kγ2)/kγ2-ig_{\nu\rho}\,\hat\Pi(k_\gamma^2)/k_\gamma^2, and

Π^(kγ2)kγ2  →kγ2→0  −α15πm2,\frac{\hat\Pi(k_\gamma^2)}{k_\gamma^2} \;\xrightarrow[k_\gamma^2\to0]{}\; -\frac{\alpha}{15\pi m^2},

a constant. The dressed line is therefore strictly less singular at small photon momentum than the bare 1/kγ21/k_\gamma^2 of the LO diagram, and the LO F2F_2 is already infrared finite. Hence λ\lambda may be set to zero in IIe from the start, and μIIe\mu_\mathrm{IIe} is a well-defined pure number all by itself — unlike μIIc\mu_\mathrm{IIc} and μIId\mu_\mathrm{IId}, whose log⁡λ2\log\lambda^2 only cancels between them.

6.4 The spectral (dispersion) representation

We now trade the Feynman parameter xx for a mass. The claim is

  Π^(k2)k2=∫4m2∞dt  ρ(t)k2−t,ρ(t)=α3πt(1+2m2t)1−4m2t  \boxed{\;\frac{\hat\Pi(k^2)}{k^2} = \int_{4m^2}^{\infty}\mathrm{d}t\;\frac{\rho(t)}{k^2-t}, \qquad \rho(t) = \frac{\alpha}{3\pi t}\left(1+\frac{2m^2}{t}\right) \sqrt{1-\frac{4m^2}{t}}\;}

and it can be proved by an explicit change of variables, with no contour integration at all.

Step 1: x→tx \to t. The integrand of Π^\hat\Pi is symmetric under x→1−xx\to 1-x, so

Π^(k2)=4απ∫01/2dx  x(1−x) log⁡(1−x(1−x)k2m2).\hat\Pi(k^2) = \frac{4\alpha}{\pi}\int_0^{1/2}\mathrm{d}x\;x(1-x)\, \log\left(1-\frac{x(1-x)k^2}{m^2}\right).

On 0<x<120<x<\tfrac12 the map

t≡m2x(1−x)⟺x=1−β2,β≡1−4m2tt \equiv \frac{m^2}{x(1-x)} \quad\Longleftrightarrow\quad x = \frac{1-\beta}{2},\qquad \beta \equiv \sqrt{1-\frac{4m^2}{t}}

is a bijection onto 4m2<t<∞4m^2 < t < \infty (it is x→0⇔t→∞x\to0 \Leftrightarrow t\to\infty and x→12⇔t→4m2x\to\tfrac12 \Leftrightarrow t\to 4m^2, the maximum of x(1−x)x(1-x) being 14\tfrac14). Differentiating β\beta,

dβdt=12(1−4m2t)−1/24m2t2=2m2t2β,dx=−12 dβ=−m2t2β dt.\frac{\mathrm{d}\beta}{\mathrm{d}t} = \frac12\left(1-\frac{4m^2}{t}\right)^{-1/2}\frac{4m^2}{t^2} = \frac{2m^2}{t^2\beta}, \qquad \mathrm{d}x = -\frac12\,\mathrm{d}\beta = -\frac{m^2}{t^2\beta}\,\mathrm{d}t .

With x(1−x)=m2/tx(1-x) = m^2/t the integral becomes

Π^(k2)=4απ∫4m2∞m4t3β log⁡(1−k2t)dt.\hat\Pi(k^2) = \frac{4\alpha}{\pi}\int_{4m^2}^{\infty} \frac{m^4}{t^3\beta}\,\log\left(1-\frac{k^2}{t}\right)\mathrm{d}t .

Note what this already says: Π^\hat\Pi is a superposition, over t≥4m2t\ge 4m^2, of logarithms log⁡(1−k2/t)\log(1-k^2/t), each of which is analytic except on the cut k2≥tk^2 \ge t. The threshold 4m24m^2 is the invariant mass squared at which the photon can turn into a real e+e−e^+e^- pair.

Step 2: integrate by parts in tt. Define

W(t)≡α3π(1+2m2t)β,β=1−4m2t.W(t) \equiv \frac{\alpha}{3\pi}\left(1+\frac{2m^2}{t}\right)\beta, \qquad \beta = \sqrt{1-\frac{4m^2}{t}} .

Then, using dβ/dt=2m2/(t2β)\mathrm{d}\beta/\mathrm{d}t = 2m^2/(t^2\beta) and 1−β2=4m2/t1-\beta^2 = 4m^2/t,

dWdt=α3π[−2m2t2β+(1+2m2t)2m2t2β]=2αm23πt2β[1+2m2t−β2]=2αm23πt2β⋅6m2t=4αm4πt3β,\frac{\mathrm{d}W}{\mathrm{d}t} = \frac{\alpha}{3\pi}\left[-\frac{2m^2}{t^2}\beta + \left(1+\frac{2m^2}{t}\right)\frac{2m^2}{t^2\beta}\right] = \frac{2\alpha m^2}{3\pi t^2\beta} \left[1+\frac{2m^2}{t}-\beta^2\right] = \frac{2\alpha m^2}{3\pi t^2\beta}\cdot\frac{6m^2}{t} = \frac{4\alpha m^4}{\pi t^3\beta},

i.e. WW is exactly the antiderivative appearing above, and it is the right one: W(4m2)=0W(4m^2) = 0 (because β=0\beta=0 there) and W(∞)=α/3πW(\infty) = \alpha/3\pi is finite. Integrating by parts with dlog⁡(1−k2/t)/dt=k2/[t(t−k2)]\mathrm{d}\log(1-k^2/t)/\mathrm{d}t = k^2/[t(t-k^2)],

Π^(k2)=[W(t)log⁡(1−k2t)]4m2∞−∫4m2∞W(t) k2t(t−k2) dt.\hat\Pi(k^2) = \Big[W(t)\log\left(1-\tfrac{k^2}{t}\right) \Big]_{4m^2}^{\infty} - \int_{4m^2}^{\infty}W(t)\,\frac{k^2}{t(t-k^2)}\,\mathrm{d}t .

Both boundary terms vanish: at t=4m2t=4m^2 because W=0W=0, at t=∞t=\infty because log⁡(1−k2/t)→−k2/t→0\log(1-k^2/t) \to -k^2/t \to 0 while WW stays bounded. Therefore

Π^(k2)=−k2∫4m2∞W(t)t dtt−k2=k2∫4m2∞dt  W(t)/tk2−t,\hat\Pi(k^2) = -k^2\int_{4m^2}^{\infty}\frac{W(t)}{t}\, \frac{\mathrm{d}t}{t-k^2} = k^2\int_{4m^2}^{\infty}\mathrm{d}t\; \frac{W(t)/t}{k^2-t},

which is the claim with

ρ(t)=W(t)t=α3πt(1+2m2t)1−4m2t.\rho(t) = \frac{W(t)}{t} = \frac{\alpha}{3\pi t}\left(1+\frac{2m^2}{t}\right) \sqrt{1-\frac{4m^2}{t}} .

The same ρ\rho from the discontinuity. The standard route gives the physical reading. Π^(k2)/k2\hat\Pi(k^2)/k^2 is analytic in the cut plane (the log argument m2−x(1−x)k2m^2-x(1-x)k^2 can only vanish for k2≥4m2k^2 \ge 4m^2, since x(1−x)≤14x(1-x)\le\frac14) and falls off like log⁡(−k2)/k2\log(-k^2)/k^2, so Cauchy’s formula on a contour hugging the cut plus a large circle gives the unsubtracted dispersion relation with

ρ(t)=−1πt Im Π^(t+iϵ).\rho(t) = -\frac{1}{\pi t}\,\mathrm{Im}\,\hat\Pi(t+i\epsilon).

For k2=t+iϵ>4m2k^2 = t+i\epsilon > 4m^2 the log argument m2−x(1−x)tm^2-x(1-x)t is negative for x−<x<x+x_-<x<x_+, x±=12(1±β)x_\pm = \frac12(1\pm\beta), where the logarithm picks up −iπ-i\pi:

Im Π^(t+iϵ)=2απ (−π)∫x−x+x(1−x) dx=−2α∫x−x+x(1−x) dx.\mathrm{Im}\,\hat\Pi(t+i\epsilon) = \frac{2\alpha}{\pi}\,(-\pi)\int_{x_-}^{x_+}x(1-x)\,\mathrm{d}x = -2\alpha\int_{x_-}^{x_+}x(1-x)\,\mathrm{d}x .

Substituting x=12(1+βv)x = \frac12(1+\beta v), so that dx=β2dv\mathrm{d}x = \frac{\beta}{2}\mathrm{d}v and x(1−x)=14(1−β2v2)x(1-x) = \frac14(1-\beta^2v^2),

∫x−x+x(1−x) dx=β8∫−11(1−β2v2)dv=β4(1−β23)=β(3−β2)12,\int_{x_-}^{x_+}x(1-x)\,\mathrm{d}x = \frac{\beta}{8}\int_{-1}^{1}\left(1-\beta^2v^2\right)\mathrm{d}v = \frac{\beta}{4}\left(1-\frac{\beta^2}{3}\right) = \frac{\beta\left(3-\beta^2\right)}{12},

and since 3−β2=2+4m2/t3-\beta^2 = 2+4m^2/t,

ρ(t)=−1πt(−2α β(3−β2)12)=αβ6πt(2+4m2t)=α3πt(1+2m2t)β,\rho(t) = -\frac{1}{\pi t}\left(-2\alpha\, \frac{\beta(3-\beta^2)}{12}\right) = \frac{\alpha\beta}{6\pi t}\left(2+\frac{4m^2}{t}\right) = \frac{\alpha}{3\pi t}\left(1+\frac{2m^2}{t}\right)\beta ,

the same function. Good — two independent derivations.

What it means. Insert ρ\rho back into the resummed propagator. To first order in α\alpha the transverse dressed photon line is

−igμνk2[1+Π^(k2)]=−igμνk2+∫4m2∞dt  ρ(t) −igμνk2−t,\frac{-ig_{\mu\nu}}{k^2}\left[1+\hat\Pi(k^2)\right] = \frac{-ig_{\mu\nu}}{k^2} + \int_{4m^2}^{\infty}\mathrm{d}t\;\rho(t)\, \frac{-ig_{\mu\nu}}{k^2-t},

that is,

1k2  ⟶  1k2+∫4m2∞dt  ρ(t)k2−t.\frac{1}{k^2}\;\longrightarrow\;\frac{1}{k^2} + \int_{4m^2}^{\infty}\mathrm{d}t\;\frac{\rho(t)}{k^2-t}.

The dressed photon is a massless photon plus a continuum of massive photons, of squared mass tt, distributed with the positive weight ρ(t)≥0\rho(t)\ge0, starting at the e+e−e^+e^- threshold t=4m2t=4m^2. That is the entire physical content of the vacuum polarization at this order, and it is what makes IIe collapse.

Numerically (m = 1, ρ\rho in units of α/π\alpha/\pi):

>>> from mpmath import mp, quad, mpf, inf, log, sqrt
>>> mp.dps = 30
>>> r     = lambda t:  (1 + 2/t)*sqrt(1 - 4/t)/(3*t)
>>> Pihat = lambda k2: 2*quad(lambda x: x*(1-x)*log(1 - x*(1-x)*k2), [0, 1])
>>> quad(lambda t: r(t)/t, [4, inf])          # = -Pihat'(0) = 1/15
mpf('0.0666666666666666666666666666666634')
>>> mpf(1)/15
mpf('0.0666666666666666666666666666666634')
>>> Pihat(-5)/-5 - quad(lambda t: r(t)/(-5 - t), [4, inf])
mpf('0.0')

6.5 The collapse

Put the transverse form back into the photon chain of IIe, with λ=0\lambda = 0 (justified above) and Π→Π^\Pi\to\hat\Pi (justified above):

−igναkγ2  i(kγ2gαβ−kγαkγβ)Π^(kγ2)  −igβρkγ2=(−i)2i  kγ2gνρ−kγνkγρkγ4 Π^(kγ2)\frac{-ig_{\nu\alpha}}{k_\gamma^2}\; i\left(k_\gamma^2 g^{\alpha\beta} - k_\gamma^\alpha k_\gamma^\beta\right)\hat\Pi(k_\gamma^2)\; \frac{-ig_{\beta\rho}}{k_\gamma^2} = (-i)^2 i\;\frac{k_\gamma^2 g_{\nu\rho} - k_{\gamma\nu}k_{\gamma\rho}}{k_\gamma^4}\,\hat\Pi(k_\gamma^2)
=−igνρ Π^(kγ2)kγ2  +  i kγνkγρkγ4 Π^(kγ2).= -ig_{\nu\rho}\,\frac{\hat\Pi(k_\gamma^2)}{k_\gamma^2} \;+\; i\,\frac{k_{\gamma\nu}k_{\gamma\rho}}{k_\gamma^4}\, \hat\Pi(k_\gamma^2).

The kγνkγρk_\gamma^\nu k_\gamma^\rho term contributes only to F1F_1. This is not hand-waving; the two electron propagators literally cancel. Contracting the two free indices of the electron string with kγνkγρk_{\gamma\nu}k_{\gamma\rho} turns both outer vertices into /kγ\slashed{k}_\gamma, and, writing the propagator numerators in the compact form /k+mk2−m2=1/k−m\frac{\slashed{k}+m}{k^2-m^2} = \frac{1}{\slashed{k}-m}, that piece of the amplitude carries the string

uˉ(p′) /kγ 1/k′−m γμ 1/k−m /kγ u(p).\bar u(p')\,\slashed{k}_\gamma\,\frac{1}{\slashed{k}'-m}\,\gamma^\mu\, \frac{1}{\slashed{k}-m}\,\slashed{k}_\gamma\,u(p) .

Because the photon momentum flows into the electron line, k=p+kγk = p+k_\gamma and k′=p′+kγk' = p'+k_\gamma, so /kγ\slashed{k}_\gamma is exactly the inverse propagator up to the on-shell operator:

/kγ=(/p+/kγ−m)−(/p−m)  ⟹  1/k−m /kγ u(p)=u(p)−1/k−m(/p−m)u(p)=u(p),\slashed{k}_\gamma = \left(\slashed{p}+\slashed{k}_\gamma-m\right) - \left(\slashed{p}-m\right) \;\Longrightarrow\; \frac{1}{\slashed{k}-m}\,\slashed{k}_\gamma\,u(p) = u(p) - \frac{1}{\slashed{k}-m} \left(\slashed{p}-m\right)u(p) = u(p),

since (/p−m)u(p)=0(\slashed{p}-m)u(p) = 0. The mirror manipulation at the other end, using uˉ(p′)(/p′−m)=0\bar u(p')(\slashed{p}'-m) = 0, gives

uˉ(p′) /kγ 1/k′−m=uˉ(p′).\bar u(p')\,\slashed{k}_\gamma\,\frac{1}{\slashed{k}'-m} = \bar u(p') .

Hence the whole electron string collapses:

uˉ(p′) /kγ 1/k′−m γμ 1/k−m /kγ u(p)=uˉ(p′) γμ u(p),\bar u(p')\,\slashed{k}_\gamma\,\frac{1}{\slashed{k}'-m}\,\gamma^\mu\, \frac{1}{\slashed{k}-m}\,\slashed{k}_\gamma\,u(p) = \bar u(p')\,\gamma^\mu\,u(p),

and the kγνkγρk_\gamma^\nu k_\gamma^\rho piece of IIe is a pure γμ\gamma^\mu structure times a scalar integral. In the decomposition Γμ=γμF1+iσμνqνF2/2m\Gamma^\mu = \gamma^\mu F_1 + i\sigma^{\mu\nu}q_\nu F_2/2m that is F1F_1 and nothing else. It may be dropped. (Both collapse identities are checked explicitly with numerical spinors.)

What is left. The surviving −igνρΠ^/kγ2-ig_{\nu\rho}\hat\Pi/k_\gamma^2 term is, by the spectral representation,

−igνρ Π^(kγ2)kγ2=∫4m2∞dt  ρ(t)  −igνρkγ2−t,-ig_{\nu\rho}\,\frac{\hat\Pi(k_\gamma^2)}{k_\gamma^2} = \int_{4m^2}^{\infty}\mathrm{d}t\;\rho(t)\; \frac{-ig_{\nu\rho}}{k_\gamma^2-t},

i.e. exactly the LO photon propagator with λ2\lambda^2 replaced by tt, integrated over tt with weight ρ(t)\rho(t). Since the LO amplitude depends on its photon propagator linearly, and since the tt integral is absolutely convergent (we check below that the integrand falls like t−2t^{-2}), we may exchange the tt and kk integrations:

  F2IIe(0)=∫4m2∞dt  ρ(t)  F2LO ⁣(0; λ2=t).  \boxed{\;F_2^{\mathrm{IIe}}(0) = \int_{4m^2}^{\infty}\mathrm{d}t\; \rho(t)\;F_2^{\mathrm{LO}}\!\left(0;\ \lambda^2 = t\right).\;}

The two-loop diagram has become a one-parameter family of one-loop diagrams. The entire second loop momentum integration has been reduced to the single variable tt.

6.6 The massive-photon LO kernel K(t)K(t)

It remains to compute the LO anomalous moment with a photon of mass λ\lambda, which we do from scratch. Write the LO vertex correction with the photon propagator −igνρ/[(k−p)2−λ2]-ig_{\nu\rho}/[(k-p)^2-\lambda^2]:

uˉ(p′) δΓLOμ u(p)=−ie2∫d4k(2π)4  uˉ(p′) γν(/k′+m)γμ(/k+m)γν u(p)[(k−p)2−λ2][k′2−m2][k2−m2],\bar u(p')\,\delta\Gamma^\mu_\mathrm{LO}\,u(p) = -ie^2\int\frac{\mathrm{d}^4k}{(2\pi)^4}\; \frac{\bar u(p')\,\gamma^\nu(\slashed{k}'+m)\gamma^\mu (\slashed{k}+m)\gamma_\nu\,u(p)} {\left[(k-p)^2-\lambda^2\right]\left[k'^2-m^2\right] \left[k^2-m^2\right]},

the prefactor being (−ie)2⋅i⋅i⋅(−i)=−ie2(-ie)^2\cdot i\cdot i\cdot(-i) = -ie^2 (two vertices, two fermion propagators, one photon propagator; the gνρg_{\nu\rho} contracts the two vertex indices into γν⋯γν\gamma^\nu\cdots\gamma_\nu).

Numerator. Using γνγαγν=−2γα\gamma_\nu\gamma^\alpha\gamma^\nu = -2\gamma^\alpha, γνγαγβγν=4gαβ\gamma_\nu\gamma^\alpha\gamma^\beta\gamma^\nu = 4g^{\alpha\beta} and γνγαγβγγγν=−2γγγβγα\gamma_\nu\gamma^\alpha\gamma^\beta\gamma^\gamma\gamma^\nu = -2\gamma^\gamma\gamma^\beta\gamma^\alpha term by term,

γν(/k′+m)γμ(/k+m)γν=−2 /kγμ/k′+4m (k+k′)μ−2m2γμ,\gamma^\nu(\slashed{k}'+m)\gamma^\mu(\slashed{k}+m)\gamma_\nu = -2\,\slashed{k}\gamma^\mu\slashed{k}' + 4m\,(k+k')^\mu - 2m^2\gamma^\mu ,

so that, pulling out the -2,

uˉ(p′) δΓLOμ u(p)=2ie2∫d4k(2π)4  uˉ(p′)[/kγμ/k′−2m(k+k′)μ+m2γμ]u(p)[(k−p)2−λ2][k′2−m2][k2−m2].\bar u(p')\,\delta\Gamma^\mu_\mathrm{LO}\,u(p) = 2ie^2\int\frac{\mathrm{d}^4k}{(2\pi)^4}\; \frac{\bar u(p')\left[\slashed{k}\gamma^\mu\slashed{k}' - 2m(k+k')^\mu + m^2\gamma^\mu\right]u(p)} {\left[(k-p)^2-\lambda^2\right]\left[k'^2-m^2\right] \left[k^2-m^2\right]} .

Feynman parameters and the shift. With xx on k′2−m2k'^2-m^2, yy on k2−m2k^2-m^2 and zz on the photon,

1ABC=2∫01dx dy dz  δ(x+y+z−1)[xA+yB+zC]3,\frac{1}{ABC} = 2\int_0^1\mathrm{d}x\,\mathrm{d}y\,\mathrm{d}z\; \frac{\delta(x+y+z-1)}{\left[xA+yB+zC\right]^3},

and, using k′=k+qk' = k+q, p2=m2p^2 = m^2 and p⋅q=−q2/2p\cdot q = -q^2/2,

x(k′2−m2)+y(k2−m2)+z((k−p)2−λ2)=ℓ2−Δ,x\left(k'^2-m^2\right)+y\left(k^2-m^2\right) +z\left((k-p)^2-\lambda^2\right) = \ell^2 - \Delta,
ℓ=k+xq−zp,Δ=−xy q2+(1−z)2m2+zλ2,\ell = k + xq - zp, \qquad \Delta = -xy\,q^2 + (1-z)^2 m^2 + z\lambda^2 ,

(verified symbolically). This is the LO section’s Δ\Delta with the photon-mass term zλ2z\lambda^2, exactly as expected: the photon propagator was the only one that changed.

Projection onto F2F_2. In terms of the shifted momentum,

k=ℓ−xq+zp,k′=ℓ+(1−x)q+zp.k = \ell - xq + zp, \qquad k' = \ell + (1-x)q + zp .

Terms odd in ℓ\ell drop, and the only term quadratic in ℓ\ell is

/ℓγμ/ℓ  ⟶  ℓ24 γνγμγν=−ℓ22 γμ,\slashed{\ell}\gamma^\mu\slashed{\ell} \;\longrightarrow\; \frac{\ell^2}{4}\,\gamma_\nu\gamma^\mu\gamma^\nu = -\frac{\ell^2}{2}\,\gamma^\mu ,

a pure γμ\gamma^\mu structure which contributes to F1F_1 only (it is also where the LUVL_{UV} of the LO vertex lives). So for F2F_2 we may set ℓ=0\ell = 0 in the numerator and work with

a≡−xq+zp=−x p′+(x+z) p,b≡(1−x)q+zp=(1−x) p′−y p,a \equiv -xq+zp = -x\,p' + (x+z)\,p, \qquad b \equiv (1-x)q+zp = (1-x)\,p' - y\,p ,

(using q=p′−pq = p'-p and x+z−1=−yx+z-1 = -y), i.e. with

N~μ=/aγμ/b−2m (a+b)μ+m2γμ.\tilde N^\mu = \slashed{a}\gamma^\mu\slashed{b} - 2m\,(a+b)^\mu + m^2\gamma^\mu .

Sandwiched between on-shell spinors, every string of /p\slashed{p}'s and /p′\slashed{p}''s reduces to the basis {γμ,  Pμ≡(p+p′)μ,  qμ}\{\gamma^\mu,\;P^\mu \equiv (p+p')^\mu,\;q^\mu\} times uˉ′u\bar u'u. The four reductions needed (each a two-line consequence of /a/b=2a⋅b−/b/a\slashed{a}\slashed{b} = 2a\cdot b - \slashed{b}\slashed{a}, /pu=mu\slashed{p}u = mu, uˉ′/p′=muˉ′\bar u'\slashed{p}' = m\bar u'; all four are verified numerically) are

uˉ′ /p′γμ/p′ u=m[2p′μ uˉ′u−m uˉ′γμu],\bar u'\,\slashed{p}'\gamma^\mu\slashed{p}'\,u = m\left[2p'^\mu\,\bar u'u - m\,\bar u'\gamma^\mu u\right],
uˉ′ /p′γμ/p u=m2 uˉ′γμu,\bar u'\,\slashed{p}'\gamma^\mu\slashed{p}\,u = m^2\,\bar u'\gamma^\mu u,
uˉ′ /pγμ/p′ u=2m Pμ uˉ′u−(2p⋅p′+m2)uˉ′γμu,\bar u'\,\slashed{p}\gamma^\mu\slashed{p}'\,u = 2m\,P^\mu\,\bar u'u - \left(2p\cdot p'+m^2\right)\bar u'\gamma^\mu u,
uˉ′ /pγμ/p u=2m pμ uˉ′u−m2 uˉ′γμu.\bar u'\,\slashed{p}\gamma^\mu\slashed{p}\,u = 2m\,p^\mu\,\bar u'u - m^2\,\bar u'\gamma^\mu u .

The magnetic form factor comes only from the PμP^\mu structure. Indeed the Gordon identity

uˉ′ iσμνqν u=uˉ′[2mγμ−Pμ]u⟺Pμ  =^  2mγμ−iσμνqν\bar u'\,i\sigma^{\mu\nu}q_\nu\,u = \bar u'\left[2m\gamma^\mu - P^\mu\right]u \quad\Longleftrightarrow\quad P^\mu \;\widehat{=}\; 2m\gamma^\mu - i\sigma^{\mu\nu}q_\nu

says that a term P Pμ uˉ′u\mathcal{P}\,P^\mu\,\bar u'u in the numerator contributes

P Pμ=2mP γμ+iσμνqν2m(−2mP),i.e.F2-numerator=−2m P,\mathcal{P}\,P^\mu = 2m\mathcal{P}\,\gamma^\mu + \frac{i\sigma^{\mu\nu}q_\nu}{2m}\left(-2m\mathcal{P}\right), \qquad\text{i.e.}\qquad F_2\text{-numerator} = -2m\,\mathcal{P},

while qμq^\mu terms (which must cancel by the Ward identity anyway) and γμ\gamma^\mu terms give none. Since pμp^\mu and p′μp'^\mu each contain 12Pμ\frac12 P^\mu, expanding /aγμ/b\slashed{a}\gamma^\mu\slashed{b} with /a=−x/p′+(x+z)/p\slashed{a} = -x\slashed{p}'+(x+z)\slashed{p}, /b=(1−x)/p′−y/p\slashed{b} = (1-x)\slashed{p}'-y\slashed{p} and reading off the Pμuˉ′uP^\mu\bar u'u coefficient of each of the four products gives

P[/aγμ/b]=m[−x(1−x)⏟/p′γμ/p′+0⏟/p′γμ/p+2(x+z)(1−x)⏟/pγμ/p′+−(x+z)y⏟/pγμ/p],\mathcal{P}\Big[\slashed{a}\gamma^\mu\slashed{b}\Big] = m\Big[\underbrace{-x(1-x)}_{\slashed p'\gamma^\mu\slashed p'} + \underbrace{0}_{\slashed p'\gamma^\mu\slashed p} + \underbrace{2(x+z)(1-x)}_{\slashed p\gamma^\mu\slashed p'} + \underbrace{-(x+z)y}_{\slashed p\gamma^\mu\slashed p}\Big],

while −2m(a+b)μ=−2m[2zpμ+(1−2x)qμ]-2m(a+b)^\mu = -2m\left[2zp^\mu + (1-2x)q^\mu\right] contributes −2mz-2mz and m2γμm^2\gamma^\mu contributes nothing. Hence

F2-numerator=−2m P=−2m2[−x(1−x)+2(x+z)(1−x)−(x+z)y−2z].F_2\text{-numerator} = -2m\,\mathcal{P} = -2m^2\Big[-x(1-x)+2(x+z)(1-x)-(x+z)y-2z\Big].

Eliminating x=1−y−zx = 1-y-z (so x+z=1−yx+z = 1-y, 1−x=y+z1-x = y+z) the bracket is

(y+z)(1−y+z)−y+y2−2z=(y−y2+z+z2)−y+y2−2z=z2−z,(y+z)(1-y+z) - y + y^2 - 2z = \left(y-y^2+z+z^2\right) - y + y^2 - 2z = z^2 - z,

(the yzyz cross terms cancel), so

F2-numerator=2m2z(1−z),F_2\text{-numerator} = 2m^2 z(1-z),

which is the LO section’s result, now derived with the photon mass carried along. The full projection has also been performed independently by the explicit-matrix pipeline and agrees.

The kernel. The ℓ\ell integration is now the convergent master integral

∫d4ℓ(2π)4 1(ℓ2−Δ)3=−i32π2Δ,\int\frac{\mathrm{d}^4\ell}{(2\pi)^4}\, \frac{1}{\left(\ell^2-\Delta\right)^3} = \frac{-i}{32\pi^2\Delta},

so the constants in front of the F2F_2 numerator are 2ie2⋅2⋅−i32π2Δ=e28π2Δ=α2π1Δ2ie^2\cdot 2\cdot\frac{-i}{32\pi^2\Delta} = \frac{e^2}{8\pi^2\Delta} = \frac{\alpha}{2\pi}\frac{1}{\Delta} (the 2 is the one from the three-denominator Feynman formula, and e2=4παe^2 = 4\pi\alpha). Hence, exactly as in the LO section,

F2(q2)=α2π∫01dx dy dz  δ(x+y+z−1)  2m2z(1−z)Δ,F_2(q^2) = \frac{\alpha}{2\pi}\int_0^1\mathrm{d}x\,\mathrm{d}y\, \mathrm{d}z\;\delta(x+y+z-1)\;\frac{2m^2z(1-z)}{\Delta},

and at q2=0q^2 = 0 the integrand depends on zz alone, so the x,yx,y integration is trivial:

∫01dx dy  δ(x+y+z−1)=∫01−zdy=1−z,\int_0^1\mathrm{d}x\,\mathrm{d}y\;\delta(x+y+z-1) = \int_0^{1-z}\mathrm{d}y = 1-z,
F2(0;λ)=α2π∫01dz  (1−z) 2m2z(1−z)(1−z)2m2+zλ2=απ∫01z(1−z)2(1−z)2+z t dz,t≡λ2m2,F_2(0;\lambda) = \frac{\alpha}{2\pi}\int_0^1\mathrm{d}z\;(1-z)\, \frac{2m^2z(1-z)}{(1-z)^2m^2+z\lambda^2} = \frac{\alpha}{\pi}\int_0^1 \frac{z(1-z)^2}{(1-z)^2+z\,t}\,\mathrm{d}z , \qquad t \equiv \frac{\lambda^2}{m^2},
  F2LO ⁣(0; photon mass2=t m2)=απ K(t),K(t)=∫01z(1−z)2(1−z)2+z t dz.  \boxed{\;F_2^{\mathrm{LO}}\!\left(0;\ \text{photon mass}^2 = t\,m^2\right) = \frac{\alpha}{\pi}\,K(t), \qquad K(t) = \int_0^1\frac{z(1-z)^2}{(1-z)^2+z\,t}\,\mathrm{d}z .\;}

Two sanity checks. At t=0t=0 the (1−z)2(1-z)^2 in the denominator cancels the one in the numerator and

K(0)=∫01z dz=12⟹ae=α2π,K(0) = \int_0^1 z\,\mathrm{d}z = \frac12 \qquad\Longrightarrow\qquad a_e = \frac{\alpha}{2\pi},

Schwinger’s result, as it must be. At large tt the denominator is dominated by ztzt except near z=1z=1, so K(t)≃1t∫01(1−z)2dz=13tK(t)\simeq \frac1t\int_0^1(1-z)^2\mathrm{d}z = \frac{1}{3t}; numerically t K(t)=0.30623…t\,K(t) = 0.30623\ldots at t=102t=10^2 and 0.33262…0.33262\ldots at t=104t=10^4, converging to 1/31/3. Combined with ρ(t)∼α/(3πt)\rho(t)\sim\alpha/(3\pi t) this confirms that the tt integral of the previous subsection converges like ∫dt/t2\int\mathrm{d}t/t^2.

6.7 Assembling and evaluating μIIe\mu_\mathrm{IIe}

Putting the last two subsections together,

F2IIe(0)=∫4m2∞dt  α3πt(1+2m2t)1−4m2t  απ K ⁣(tm2),F_2^{\mathrm{IIe}}(0) = \int_{4m^2}^{\infty}\mathrm{d}t\; \frac{\alpha}{3\pi t}\left(1+\frac{2m^2}{t}\right) \sqrt{1-\frac{4m^2}{t}}\;\frac{\alpha}{\pi}\,K\!\left(\frac{t}{m^2}\right),

and setting m=1m = 1 from here on (so that tt is simultaneously the spectral mass2^2 and the dimensionless argument of KK),

F2IIe(0)=(απ)2∫4∞dt  13t(1+2t)1−4t  K(t),F_2^{\mathrm{IIe}}(0) = \left(\frac{\alpha}{\pi}\right)^2\int_4^\infty\mathrm{d}t\; \frac{1}{3t}\left(1+\frac2t\right)\sqrt{1-\frac4t}\;K(t),
  μIIe=∫4∞dt  13t(1+2t)1−4t  K(t)=∫4∞dt  13t(1+2t)1−4t∫01z(1−z)2 dz(1−z)2+zt  \boxed{\;\mu_\mathrm{IIe} = \int_4^\infty\mathrm{d}t\; \frac{1}{3t}\left(1+\frac2t\right)\sqrt{1-\frac4t}\;K(t) = \int_4^\infty\mathrm{d}t\; \frac{1}{3t}\left(1+\frac2t\right)\sqrt{1-\frac4t} \int_0^1\frac{z(1-z)^2\,\mathrm{d}z}{(1-z)^2+zt}\;}

— a two-dimensional integral for a two-loop diagram. We now do it.

The rationalizing substitution. The square root and the quadratic denominator both become rational under

t=(1+y)2y,0<y≤1,t = \frac{(1+y)^2}{y}, \qquad 0 < y \le 1,

which maps y=1↦t=4y=1 \mapsto t=4 and y→0+↦t→∞y\to0^+ \mapsto t\to\infty monotonically. Every identity used below follows from one line of algebra:

t−4=(1+y)2−4yy=(1−y)2y⟹t(t−4)=(1+y)2(1−y)2y2,t - 4 = \frac{(1+y)^2-4y}{y} = \frac{(1-y)^2}{y} \quad\Longrightarrow\quad t(t-4) = \frac{(1+y)^2(1-y)^2}{y^2},
1−4t=t(t−4)t=(1+y)(1−y)y⋅y(1+y)2=1−y1+y(0<y≤1, all factors positive),\sqrt{1-\frac4t} = \frac{\sqrt{t(t-4)}}{t} = \frac{(1+y)(1-y)}{y}\cdot\frac{y}{(1+y)^2} = \frac{1-y}{1+y} \qquad (0<y\le1,\ \text{all factors positive}),
dtdy=2(1+y)y−(1+y)2y2=(1+y)(y−1)y2=−1−y2y2⟹∣dtdy∣=1−y2y2,\frac{\mathrm{d}t}{\mathrm{d}y} = \frac{2(1+y)y-(1+y)^2}{y^2} = \frac{(1+y)(y-1)}{y^2} = -\frac{1-y^2}{y^2} \quad\Longrightarrow\quad \left|\frac{\mathrm{d}t}{\mathrm{d}y}\right| = \frac{1-y^2}{y^2},
1+2t=(1+y)2+2y(1+y)2=y2+4y+1(1+y)2,13t=y3(1+y)2,1+\frac2t = \frac{(1+y)^2+2y}{(1+y)^2} = \frac{y^2+4y+1}{(1+y)^2}, \qquad \frac{1}{3t} = \frac{y}{3(1+y)^2},
(1−z)2+z t=y(1−z)2+z(1+y)2y=y+yz2+z+y2zy=(z+y)(zy+1)y.(1-z)^2 + z\,t = \frac{y(1-z)^2+z(1+y)^2}{y} = \frac{y+yz^2+z+y^2z}{y} = \frac{(z+y)(zy+1)}{y}.

The spectral weight therefore becomes

13t(1+2t)1−4t ∣dtdy∣=y3(1+y)2⋅y2+4y+1(1+y)2⋅1−y1+y⋅(1−y)(1+y)y2=(y2+4y+1)(1−y)23 y (1+y)4,\frac{1}{3t}\left(1+\frac2t\right)\sqrt{1-\frac4t}\, \left|\frac{\mathrm{d}t}{\mathrm{d}y}\right| = \frac{y}{3(1+y)^2}\cdot\frac{y^2+4y+1}{(1+y)^2}\cdot \frac{1-y}{1+y}\cdot\frac{(1-y)(1+y)}{y^2} = \frac{\left(y^2+4y+1\right)(1-y)^2}{3\,y\,(1+y)^4},

and

μIIe=∫01dy∫01dz  (y2+4y+1)(1−y)23 y (1+y)4  z(1−z)2 y(z+y)(zy+1).\mu_\mathrm{IIe} = \int_0^1\mathrm{d}y\int_0^1\mathrm{d}z\; \frac{\left(y^2+4y+1\right)(1-y)^2}{3\,y\,(1+y)^4}\; \frac{z(1-z)^2\,y}{(z+y)(zy+1)} .

The yy integration. The 1/y1/y of the weight cancels against the yy of the kernel, leaving a rational function of yy with poles at y=−1y=-1 (fourth order), y=−zy=-z and y=−1/zy=-1/z — all outside [0,1][0,1]. Partial fractions give

(y2+4y+1)(1−y)2 z(1−z)23(1+y)4(z+y)(zy+1)=z2(z+1)(z2−4z+1)3(z−1)3 1yz+1−z(z+1)(z2−4z+1)3(z−1)3 1y+z\frac{\left(y^2+4y+1\right)(1-y)^2\,z(1-z)^2}{3(1+y)^4(z+y)(zy+1)} = \frac{z^2(z+1)\left(z^2-4z+1\right)}{3(z-1)^3}\,\frac{1}{yz+1} - \frac{z(z+1)\left(z^2-4z+1\right)}{3(z-1)^3}\,\frac{1}{y+z}
−2z(z2−6z+1)3(z−1)2 1(y+1)2−8z3 1(y+1)3+8z3 1(y+1)4,\qquad - \frac{2z\left(z^2-6z+1\right)}{3(z-1)^2}\,\frac{1}{(y+1)^2} - \frac{8z}{3}\,\frac{1}{(y+1)^3} + \frac{8z}{3}\,\frac{1}{(y+1)^4},

and the five elementary integrals are

∫01dyyz+1=log⁡(1+z)z,∫01dyy+z=log⁡1+zz,\int_0^1\frac{\mathrm{d}y}{yz+1} = \frac{\log(1+z)}{z},\qquad \int_0^1\frac{\mathrm{d}y}{y+z} = \log\frac{1+z}{z},
∫01dy(1+y)2=12,∫01dy(1+y)3=38,∫01dy(1+y)4=724.\int_0^1\frac{\mathrm{d}y}{(1+y)^2} = \frac12,\qquad \int_0^1\frac{\mathrm{d}y}{(1+y)^3} = \frac38,\qquad \int_0^1\frac{\mathrm{d}y}{(1+y)^4} = \frac{7}{24}.

The 1/z1/z produced by the first integral turns the first term’s prefactor into exactly (minus) the second’s, so the two combine into a single term in which log⁡(1+z)\log(1+z) cancels and only log⁡z\log z survives:

z2(z+1)(z2−4z+1)3(z−1)3⋅log⁡(1+z)z−z(z+1)(z2−4z+1)3(z−1)3⋅[log⁡(1+z)−log⁡z]\frac{z^2(z+1)\left(z^2-4z+1\right)}{3(z-1)^3}\cdot \frac{\log(1+z)}{z} - \frac{z(z+1)\left(z^2-4z+1\right)}{3(z-1)^3}\cdot \Big[\log(1+z)-\log z\Big]
=z(z+1)(z2−4z+1)3(z−1)3[log⁡(1+z)−log⁡(1+z)+log⁡z]=z(z+1)(z2−4z+1)3(z−1)3 log⁡z.= \frac{z(z+1)\left(z^2-4z+1\right)}{3(z-1)^3} \Big[\log(1+z) - \log(1+z) + \log z\Big] = \frac{z(z+1)\left(z^2-4z+1\right)}{3(z-1)^3}\,\log z .

The last three terms give the rational remainder −z(z2−6z+1)3(z−1)2−z+7z9=−z(z2−6z+1)3(z−1)2−2z9-\frac{z(z^2-6z+1)}{3(z-1)^2} - z + \frac{7z}{9} = -\frac{z(z^2-6z+1)}{3(z-1)^2} - \frac{2z}{9}. So

μIIe=∫01I(z) dz,I(z)=A(z)log⁡z+B(z),\mu_\mathrm{IIe} = \int_0^1 I(z)\,\mathrm{d}z, \qquad I(z) = A(z)\log z + B(z),
A(z)=z(z+1)(z2−4z+1)3(z−1)3,B(z)=−z(z2−6z+1)3(z−1)2−2z9=z(−5z2+22z−5)9(z−1)2.A(z) = \frac{z(z+1)\left(z^2-4z+1\right)}{3(z-1)^3}, \qquad B(z) = -\frac{z\left(z^2-6z+1\right)}{3(z-1)^2} - \frac{2z}{9} = \frac{z\left(-5z^2+22z-5\right)}{9(z-1)^2}.

This is precisely the output of pixi run iie-sympy (code/g2_iie.py), which prints I(z)I(z) in the equivalent packed form

after y-integration:
  I(z) = z*(-5*z**3 + 27*z**2 - 27*z + log(z**(3*z**3 - 9*z**2 - 9*z + 3)) + 5)
         /(9*(z**3 - 3*z**2 + 3*z - 1))

(use −5z3+27z2−27z+5=(z−1)(−5z2+22z−5)-5z^3+27z^2-27z+5 = (z-1)(-5z^2+22z-5) and z3−3z2−3z+1=(z+1)(z2−4z+1)z^3-3z^2-3z+1 = (z+1)(z^2-4z+1) and z3−3z2+3z−1=(z−1)3z^3-3z^2+3z-1 = (z-1)^3 to see that these agree).

The zz integration. Both AA and BB blow up at z=1z=1; only the combination is finite. Expanding in u=z−1u = z-1 (with log⁡z=u−u22+u33−⋯\log z = u - \frac{u^2}{2} + \frac{u^3}{3} - \cdots),

A(z)=13[z−6z−1−10(z−1)2−4(z−1)3]  ⟹  Alog⁡z=−43u2−83u−79+O(u),A(z) = \frac13\left[z - \frac{6}{z-1} - \frac{10}{(z-1)^2} - \frac{4}{(z-1)^3}\right] \;\Longrightarrow\; A\log z = -\frac{4}{3u^2} - \frac{8}{3u} - \frac79 + O(u),
B(z)=43u2+83u+79−5u9+O(u2),B(z) = \frac{4}{3u^2} + \frac{8}{3u} + \frac79 - \frac{5u}{9} + O(u^2),

so I(1)=0I(1) = 0 and, in fact, I(z)=O ⁣((z−1)2)I(z) = O\!\left((z-1)^2\right). To integrate we split off the shared singular part

S(z)≡−43(z−1)2−83(z−1),S(z) \equiv -\frac{4}{3(z-1)^2} - \frac{8}{3(z-1)},
μIIe=∫01[A(z)log⁡z−S(z)]dz+∫01[B(z)+S(z)]dz,\mu_\mathrm{IIe} = \int_0^1\Big[A(z)\log z - S(z)\Big]\mathrm{d}z + \int_0^1\Big[B(z)+S(z)\Big]\mathrm{d}z,

each bracket now being integrable on (0,1)(0,1).

The second bracket is trivial: subtracting the Laurent tail from BB leaves the polynomial part,

B(z)+S(z)=79−5(z−1)9=12−5z9,∫0112−5z9 dz=19(12−52)=1918.B(z)+S(z) = \frac79 - \frac{5(z-1)}{9} = \frac{12-5z}{9}, \qquad \int_0^1\frac{12-5z}{9}\,\mathrm{d}z = \frac19\left(12-\frac52\right) = \frac{19}{18}.

For the first bracket, insert the Laurent form of AA:

A(z)log⁡z−S(z)=zlog⁡z3−2log⁡zz−1+T(z),A(z)\log z - S(z) = \frac{z\log z}{3} - \frac{2\log z}{z-1} + T(z),
T(z)≡−10log⁡z3(z−1)2−4log⁡z3(z−1)3+43(z−1)2+83(z−1).T(z) \equiv -\frac{10\log z}{3(z-1)^2} - \frac{4\log z}{3(z-1)^3} + \frac{4}{3(z-1)^2} + \frac{8}{3(z-1)} .

The first two pieces are the only source of a transcendental constant in the whole calculation:

∫01zlog⁡z dz=[z22log⁡z−z24]01=−14,\int_0^1 z\log z\,\mathrm{d}z = \left[\frac{z^2}{2}\log z - \frac{z^2}{4}\right]_0^1 = -\frac14 ,
∫01log⁡zz−1 dz=∫01−log⁡z1−z dz=∑n≥0∫01(−log⁡z) zn dz=∑n≥01(n+1)2=π26,\int_0^1\frac{\log z}{z-1}\,\mathrm{d}z = \int_0^1\frac{-\log z}{1-z}\,\mathrm{d}z = \sum_{n\ge0}\int_0^1 (-\log z)\,z^n\,\mathrm{d}z = \sum_{n\ge0}\frac{1}{(n+1)^2} = \frac{\pi^2}{6},

so they contribute 13(−14)=−112\frac13\left(-\frac14\right) = -\frac{1}{12} and −2⋅π26=−π23-2\cdot\frac{\pi^2}{6} = -\frac{\pi^2}{3} respectively. This is where the π2\pi^2 of the answer comes from, and it is the only place.

TT is elementary. Integrating by parts,

∫log⁡z(z−1)2 dz=−log⁡zz−1+∫dzz(z−1)=−log⁡zz−1+log⁡(1−z)−log⁡z,\int\frac{\log z}{(z-1)^2}\,\mathrm{d}z = -\frac{\log z}{z-1} + \int\frac{\mathrm{d}z}{z(z-1)} = -\frac{\log z}{z-1} + \log(1-z) - \log z ,
∫log⁡z(z−1)3 dz=−log⁡z2(z−1)2+12∫dzz(z−1)2=−log⁡z2(z−1)2+12[log⁡z−log⁡(1−z)−1z−1],\int\frac{\log z}{(z-1)^3}\,\mathrm{d}z = -\frac{\log z}{2(z-1)^2} + \frac12\int \frac{\mathrm{d}z}{z(z-1)^2} = -\frac{\log z}{2(z-1)^2} + \frac12\left[\log z - \log(1-z) - \frac{1}{z-1}\right],

using 1z(z−1)=1z−1−1z\frac{1}{z(z-1)} = \frac{1}{z-1}-\frac1z and 1z(z−1)2=1z−1z−1+1(z−1)2\frac{1}{z(z-1)^2} = \frac1z - \frac{1}{z-1} + \frac{1}{(z-1)^2}. Assembling the four pieces of TT, all the log⁡(1−z)\log(1-z) terms cancel (−103+23+83=0-\frac{10}{3}+\frac23+\frac83 = 0) and the antiderivative is

T(z)=83log⁡z−23(z−1)+10log⁡z3(z−1)+2log⁡z3(z−1)2,T′=T.\mathcal{T}(z) = \frac83\log z - \frac{2}{3(z-1)} + \frac{10\log z}{3(z-1)} + \frac{2\log z}{3(z-1)^2}, \qquad \mathcal{T}' = T .

Both endpoints are finite limits of cancelling singular terms. At z→1−z\to1^-, with u=z−1u = z-1,

T=83u+⋯⏟→ 0  −23u⏟  +103u(u−u22+⋯ )⏟= 103+O(u)  +23u2(u−u22+⋯ )⏟= 23u−13+O(u)  ⟶  103−13=3,\mathcal{T} = \underbrace{\frac83 u + \cdots}_{\to\,0} \;\underbrace{-\frac{2}{3u}}_{} \;\underbrace{+\frac{10}{3u}\left(u-\frac{u^2}{2}+\cdots\right)}_{ =\,\frac{10}{3}+O(u)} \;\underbrace{+\frac{2}{3u^2}\left(u-\frac{u^2}{2}+\cdots\right)}_{ =\,\frac{2}{3u}-\frac13+O(u)} \;\longrightarrow\; \frac{10}{3}-\frac13 = 3,

the 1/u1/u poles cancelling (−23+23=0-\frac23+\frac23 = 0). At z→0+z\to0^+ the three log⁡z\log z terms have coefficients 83\frac83, −103-\frac{10}{3}, 23\frac23, which sum to zero, so the logarithm drops out and only −23(z−1)→23-\frac{2}{3(z-1)}\to\frac23 survives:

∫01T(z) dz=T(1−)−T(0+)=3−23=73.\int_0^1 T(z)\,\mathrm{d}z = \mathcal{T}(1^-) - \mathcal{T}(0^+) = 3 - \frac23 = \frac73 .

The answer. Collecting the four contributions,

μIIe=−112⏟13∫zlog⁡z  −π23⏟−2∫log⁡zz−1  +  73⏟∫T  +  1918⏟∫(B+S)=−3+84+3836−π23,\mu_\mathrm{IIe} = \underbrace{-\frac{1}{12}}_{\frac13\int z\log z} \;\underbrace{-\frac{\pi^2}{3}}_{-2\int\frac{\log z}{z-1}} \;+\;\underbrace{\frac73}_{\int T} \;+\;\underbrace{\frac{19}{18}}_{\int (B+S)} = \frac{-3+84+38}{36} - \frac{\pi^2}{3},
  μIIe=11936−π23=0.0156874218591…  \boxed{\;\mu_\mathrm{IIe} = \frac{119}{36} - \frac{\pi^2}{3} = 0.0156874218591\ldots\;}

in agreement with Petermann (Helv. Phys. Acta 30 (1957) 407, eq. (5)).

Every step above is machine-checked. The yy integration and the four zz integrals, in SymPy:

>>> from sympy import symbols, integrate, log, pi, Rational, simplify, apart, together
>>> y, z = symbols("y z", positive=True)
>>> w  = (y**2 + 4*y + 1)*(1 - y)**2/(3*y*(y + 1)**4)
>>> Kz = z*(1 - z)**2*y/((z + y)*(z*y + 1))
>>> apart(together(w*Kz), y)   # doctest: +NORMALIZE_WHITESPACE
z**2*(z + 1)*(z**2 - 4*z + 1)/(3*(z - 1)**3*(y*z + 1))
- z*(z + 1)*(z**2 - 4*z + 1)/(3*(y + z)*(z - 1)**3)
- 2*z*(z**2 - 6*z + 1)/(3*(y + 1)**2*(z - 1)**2)
- 8*z/(3*(y + 1)**3) + 8*z/(3*(y + 1)**4)
>>> A = z*(z + 1)*(z**2 - 4*z + 1)/(3*(z - 1)**3)
>>> B = z*(-5*z**2 + 22*z - 5)/(9*(z - 1)**2)
>>> S = -Rational(4,3)/(z - 1)**2 - Rational(8,3)/(z - 1)
>>> T = A*log(z) - S - z*log(z)/3 + 2*log(z)/(z - 1)
>>> simplify(B + S), integrate(B + S, (z, 0, 1))
(4/3 - 5*z/9, 19/18)
>>> integrate(z*log(z)/3, (z, 0, 1)), integrate(-2*log(z)/(z - 1), (z, 0, 1))
(-1/12, -pi**2/3)
>>> integrate(T, (z, 0, 1))
7/3

and the whole thing end to end, pixi run iie-sympy:

mu_IIe = 119/36 - pi**2/3
       = 0.015687421859102682611
OK: mu_IIe = 119/36 - pi^2/3  (Petermann 1957, eq. (5))

As an independent check, the original (y,z)(y,z) double integral by adaptive quadrature at 25 digits gives

double (y,z) quadrature  = 0.01568742185910268261073
119/36 - pi^2/3          = 0.01568742185910268261073

and pixi run iie-fortran reproduces the same number from a 128-point Gauss–Legendre quadrature in the original tt variable.

6.8 What was general, and what was luck

Three features of this calculation recur in every one of the remaining diagrams, and are worth naming.

Subtract at zero momentum. The divergent subgraph was not made finite by any trick internal to the loop integral; it was made finite by subtracting its value at a kinematic point where an experiment defines a physical parameter — here Π(0)\Pi(0), fixed by the measured charge in the Thomson limit. The same logic reappears as the on-shell mass subtraction δm=Σ(/p=m)\delta m = \Sigma(\slashed{p}=m) in diagram IId, and as the vertex subtraction F1(0)=1F_1(0)=1 in IIa and IIc. In all three cases the subtraction constant carries the LUVL_{UV} and the difference does not.

The subtraction is a counterterm. Π^=Π−Π(0)\hat\Pi = \Pi - \Pi(0) is not “dropping a divergence”: it is the sum of the loop diagram and a genuine vertex from the Lagrangian, −δ34F2-\frac{\delta_3}{4}F^2 with δ3=Π(0)\delta_3 = \Pi(0). That is why the bookkeeping is consistent diagram by diagram, and why whole classes of Karplus–Kroll diagrams (III and IV here) can be shown to contribute nothing at all rather than having to be computed.

Project, then integrate. The kγμkγνk_\gamma^\mu k_\gamma^\nu tensor structure was killed not by evaluating it but by observing that it can only produce γμ\gamma^\mu, hence only F1F_1. Identifying such structures before doing any integral is the single largest labour saving in the whole two-loop calculation; the same collapse lemma disposes of gauge-dependent and regulator-dependent longitudinal pieces throughout.

And one feature was luck. The reason the entire second loop collapsed to a one-dimensional spectral integral is that the vacuum-polarization insertion is a correction to a propagator, and a corrected propagator — provided it is transverse, so that only the scalar Π^(k2)/k2\hat\Pi(k^2)/k^2 survives — is a weighted superposition of free propagators of different masses. The amplitude depends on that propagator linearly, so the superposition passes through the remaining loop integration and lands on the already-known kernel K(t)K(t). Nothing of the sort happens for diagrams I, IIa, IIc or IId: there the inserted subgraph carries open Dirac indices and its own momentum dependence, the two loop momenta do not factorize, and one is left with genuine multi-dimensional parametric integrals. Diagram IIe is the one place where the two-loop problem is really a one-loop problem in disguise — which is exactly why it makes the right warm-up.

7. Diagram IId: the amplitude

Diagram IId

7.1 Writing it down

We now assemble the contraction identified in §3.3 into an integral, using the rules of §1.3. Route the momenta as code/g2_iid.py does: the electron entering the external vertex carries kk, the one leaving carries k′=k+qk' = k+q, and the outer photon carries k−pk-p. The self-energy blob sits on the kk line.

Reading the fermion line from the incoming electron, we meet: the outer photon vertex, a propagator carrying kk, the self-energy blob, another propagator carrying kk, the external vertex, a propagator carrying k′k', and the outer photon vertex again. So the string is

δΓIId,rawμ=∫d4k(2π)4  (−ieγν)i(/k′+m)k′2−m2γμi(/k+m)k2−m2[−iΣloop(k)]i(/k+m)k2−m2(−ieγν)−i(k−p)2−λ2,\delta\Gamma^\mu_\mathrm{IId,raw} = \int\frac{d^4k}{(2\pi)^4}\; \left(-ie\gamma^\nu\right) \frac{i\left(\slashed k'+m\right)}{k'^2-m^2} \gamma^\mu \frac{i\left(\slashed k+m\right)}{k^2-m^2} \left[-i\Sigma_\mathrm{loop}(k)\right] \frac{i\left(\slashed k+m\right)}{k^2-m^2} \left(-ie\gamma_\nu\right) \frac{-i}{\left(k-p\right)^2-\lambda^2},

where the γμ\gamma^\mu in the middle is the external vertex with its −ie-ie stripped off (that factor is part of the definition of Γμ\Gamma^\mu), and −iΣloop-i\Sigma_\mathrm{loop} is the self-energy blob, computed in §7.

Collect the prefactors. Two outer vertices give (−ie)2=−e2(-ie)^2 = -e^2; three electron propagators give i3=−ii^3 = -i; one photon propagator gives −i-i; the blob contributes −iΣ-i\Sigma. Multiplying,

(−e2)⋅(−i)⋅(−i)⋅(−iΣ)=(−e2)(−1)(−iΣ)=−ie2 Σ,(-e^2)\cdot(-i)\cdot(-i)\cdot(-i\Sigma) = (-e^2)(-1)(-i\Sigma) = -ie^2\,\Sigma,

so

  δΓIId,rawμ=−ie2∫d4k(2π)4  γν(/k′+m)γμ(/k+m)Σloop(k)(/k+m)γν[(k−p)2−λ2][k′2−m2][k2−m2]2  \boxed{\;\delta\Gamma^\mu_\mathrm{IId,raw} = -ie^2 \int\frac{d^4k}{(2\pi)^4}\; \frac{\gamma^\nu\left(\slashed k'+m\right)\gamma^\mu \left(\slashed k+m\right)\Sigma_\mathrm{loop}(k) \left(\slashed k+m\right)\gamma_\nu} {\left[\left(k-p\right)^2-\lambda^2\right] \left[k'^2-m^2\right]\left[k^2-m^2\right]^2}\;}

Two features deserve attention before we compute anything.

First, the doubled propagator [k2−m2]2[k^2-m^2]^2. It appears because the blob sits on a line, splitting it into two propagators of the same momentum. Taken at face value this is a double pole on the mass shell, which would be a disaster. It is not one, and the reason is exactly the mass counterterm: Σloop(k)\Sigma_\mathrm{loop}(k) does not vanish at /k=m\slashed k = m, but Σloop−δm\Sigma_\mathrm{loop} - \delta m does, and a factor that vanishes on shell cancels one power of the pole. We will see this happen algebraically in §11.1.

Second, this expression is not yet the diagram we want: it uses the unrenormalized Σloop\Sigma_\mathrm{loop}, which is ultraviolet divergent. The counterterm diagrams are added in §8.

8. The self-energy subgraph and its counterterms

Everything in this section is computed by pixi run iid-selfenergy (code/g2_iid_selfenergy.py); the outputs quoted are its actual output.

8.1 The one-loop self-energy

The blob is the order-e2e^2 1PI two-point function. By the same prefactor bookkeeping as above — two vertices (−ie)2=−e2(-ie)^2 = -e^2, one electron propagator ii, one photon propagator −i-i — it is

−iΣloop(k)=(−ie)2i(−i)∫d4l(2π)4γν(/l+m)γν[l2−m2][(k−l)2−λ2]=−e2∫d4l(2π)4γν(/l+m)γν[l2−m2][(k−l)2−λ2],-i\Sigma_\mathrm{loop}(k) = \left(-ie\right)^2 i\left(-i\right) \int\frac{d^4l}{(2\pi)^4} \frac{\gamma^\nu\left(\slashed l+m\right)\gamma_\nu} {\left[l^2-m^2\right]\left[\left(k-l\right)^2-\lambda^2\right]} = -e^2\int\frac{d^4l}{(2\pi)^4} \frac{\gamma^\nu\left(\slashed l+m\right)\gamma_\nu} {\left[l^2-m^2\right]\left[\left(k-l\right)^2-\lambda^2\right]},

hence

Σloop(k)=−ie2∫d4l(2π)4γν(/l+m)γν[l2−m2][(k−l)2−λ2].\Sigma_\mathrm{loop}(k) = -ie^2\int\frac{d^4l}{(2\pi)^4} \frac{\gamma^\nu\left(\slashed l+m\right)\gamma_\nu} {\left[l^2-m^2\right]\left[\left(k-l\right)^2-\lambda^2\right]}.

The numerator collapses immediately with the contraction identities of §5.7:

γν(/l+m)γν=γν/lγν+mγνγν=−2/l+4m.\gamma^\nu\left(\slashed l+m\right)\gamma_\nu = \gamma^\nu\slashed l\gamma_\nu + m\gamma^\nu\gamma_\nu = -2\slashed l + 4m.

Now combine the denominators with one Feynman parameter uu (§5.1), putting uu on the photon:

1[l2−m2][(k−l)2−λ2]=∫01du[u((k−l)2−λ2)+(1−u)(l2−m2)]2.\frac{1}{\left[l^2-m^2\right]\left[\left(k-l\right)^2-\lambda^2\right]} = \int_0^1\frac{du}{\left[u\left(\left(k-l\right)^2-\lambda^2\right) + \left(1-u\right)\left(l^2-m^2\right)\right]^2}.

Expand the bracket:

u(k2−2k⋅l+l2−λ2)+(1−u)(l2−m2)=l2−2u k⋅l+uk2−uλ2−(1−u)m2.u\left(k^2-2k\cdot l+l^2-\lambda^2\right)+\left(1-u\right) \left(l^2-m^2\right) = l^2 - 2u\,k\cdot l + uk^2 - u\lambda^2 - \left(1-u\right)m^2.

Complete the square (§5.2) with the shift l=ℓ+ukl = \ell + uk:

l2−2u k⋅l=(ℓ+uk)2−2uk⋅(ℓ+uk)=ℓ2−u2k2,l^2-2u\,k\cdot l = \left(\ell+uk\right)^2 - 2uk\cdot\left(\ell+uk\right) = \ell^2 - u^2k^2,

so the denominator becomes ℓ2−Δin\ell^2 - \Delta_\mathrm{in} with

Δin=u2k2−uk2+uλ2+(1−u)m2=a−b k2,\Delta_\mathrm{in} = u^2k^2 - uk^2 + u\lambda^2 + \left(1-u\right)m^2 = a - b\,k^2,
  a=(1−u)m2+uλ2,b=u(1−u)  \boxed{\;a = \left(1-u\right)m^2 + u\lambda^2,\qquad b = u\left(1-u\right)\;}

The shifted numerator is −2(/ℓ+u/k)+4m-2(\slashed\ell + u\slashed k) + 4m, and the term linear in ℓ\ell integrates to zero by symmetric integration (§5.6), leaving 4m−2u/k4m - 2u\slashed k. The remaining integral is the logarithmically divergent master integral of §5.5,

∫d4ℓ(2π)41(ℓ2−Δ)2=i16π2(LUV−log⁡Δ),\int\frac{d^4\ell}{(2\pi)^4}\frac{1}{\left(\ell^2-\Delta\right)^2} = \frac{i}{16\pi^2}\left(L_{UV}-\log\Delta\right),

so, with c=e2/16π2c = e^2/16\pi^2,

Σloop(k)=−ie2⋅i16π2∫01du (4m−2u/k)(LUV−log⁡Δin)\Sigma_\mathrm{loop}(k) = -ie^2\cdot\frac{i}{16\pi^2}\int_0^1du\, \left(4m-2u\slashed k\right) \left(L_{UV}-\log\Delta_\mathrm{in}\right)
  Σloop(k)=c∫01du (4m−2u/k)(LUV−log⁡(a−b k2))  \boxed{\;\Sigma_\mathrm{loop}(k) = c\int_0^1du\, \left(4m - 2u\slashed k\right) \left(L_{UV} - \log\left(a - b\,k^2\right)\right)\;}

We keep uu un-integrated all the way to the end: it will simply ride along as one more parameter.

It is convenient to write Σ\Sigma in terms of two scalar functions,

Σloop(k)=A(k2)+B(k2) /k,\Sigma_\mathrm{loop}(k) = A(k^2) + B(k^2)\,\slashed k,
A(k2)=4mc(LUV−log⁡D),B(k2)=−2uc(LUV−log⁡D),D=a−bk2A(k^2) = 4mc\left(L_{UV}-\log D\right),\qquad B(k^2) = -2uc\left(L_{UV}-\log D\right),\qquad D = a-bk^2

(both still under ∫01du\int_0^1du). This is the form the on-shell conditions act on.

8.2 The on-shell renormalization conditions

Now we fix δm\delta_m and δ2\delta_2. Including the counterterm vertex i(/kδ2−δm)i(\slashed k\delta_2-\delta_m) of §1.3, the full 1PI two-point function is

−iΣ(k)=−iΣloop(k)+i(/k δ2−δm)⟹Σ(k)=Σloop(k)−/k δ2+δm,-i\Sigma(k) = -i\Sigma_\mathrm{loop}(k) + i\left(\slashed k\,\delta_2 - \delta_m\right) \quad\Longrightarrow\quad \Sigma(k) = \Sigma_\mathrm{loop}(k) - \slashed k\,\delta_2 + \delta_m,

and the full electron propagator is the geometric series

i/k−m−Σ(k).\frac{i}{\slashed k - m - \Sigma(k)}.

The two renormalization conditions are the statements that mm is the measured mass and that the field is normalized so that the residue is one:

Σ∣/k=m=0,∂Σ∂/k∣/k=m=0.\Sigma\big|_{\slashed k = m} = 0,\qquad \frac{\partial\Sigma}{\partial\slashed k}\bigg|_{\slashed k=m} = 0.

Solving the first for δm\delta_m and the second for δ2\delta_2,

δ2=∂Σloop∂/k∣/k=m,δm=m δ2−Σloop∣/k=m,\delta_2 = \frac{\partial\Sigma_\mathrm{loop}} {\partial\slashed k}\bigg|_{\slashed k=m}, \qquad \delta_m = m\,\delta_2 - \Sigma_\mathrm{loop}\big|_{\slashed k=m},

and substituting back gives the compact statement that we will use everywhere:

  Σ(k)=Σloop(k)−δm−(/k−m)δZ2≡ΣR(k),  \boxed{\;\Sigma(k) = \Sigma_\mathrm{loop}(k) - \delta m - \left(\slashed k - m\right)\delta Z_2 \equiv \Sigma_R(k),\;}
δm≡Σloop∣/k=m,δZ2≡∂Σloop∂/k∣/k=m=δ2.\delta m \equiv \Sigma_\mathrm{loop}\big|_{\slashed k=m},\qquad \delta Z_2 \equiv \frac{\partial\Sigma_\mathrm{loop}} {\partial\slashed k}\bigg|_{\slashed k=m} = \delta_2 .

In words: ΣR\Sigma_R is Σloop\Sigma_\mathrm{loop} with the first two terms of its Taylor expansion about the mass shell removed, and therefore has a double zero at /k=m\slashed k = m. That double zero is what tames the doubled propagator.

To evaluate the two constants we need derivatives with respect to /k\slashed k, where k2=/k2k^2 = \slashed k^2, so that ∂k2/∂/k=2/k\partial k^2/\partial\slashed k = 2\slashed k. With Σloop=A(k2)+B(k2)/k\Sigma_\mathrm{loop} = A(k^2)+B(k^2)\slashed k,

∂Σloop∂/k=2/k A′+B+2/k2B′→ /k→m 2mA′+B+2m2B′,\frac{\partial\Sigma_\mathrm{loop}}{\partial\slashed k} = 2\slashed k\,A' + B + 2\slashed k^2 B' \quad\xrightarrow{\ \slashed k\to m\ }\quad 2mA' + B + 2m^2B',

so, writing D0≡D∣k2=m2D_0 \equiv D\big|_{k^2=m^2},

D0=a−bm2=(1−u)m2+uλ2−u(1−u)m2=m2(1−u)2+uλ2,D_0 = a - bm^2 = \left(1-u\right)m^2 + u\lambda^2 - u\left(1-u\right)m^2 = m^2\left(1-u\right)^2 + u\lambda^2,
δm=[A+mB]k2=m2=mc(4−2u)(LUV−log⁡D0),\delta m = \left[A+mB\right]_{k^2=m^2} = mc\left(4-2u\right)\left(L_{UV}-\log D_0\right),
δZ2=[2mA′+B+2m2B′]k2=m2=c[4m2b(2−u)D0−2u(LUV−log⁡D0)],\delta Z_2 = \left[2mA'+B+2m^2B'\right]_{k^2=m^2} = c\left[\frac{4m^2b\left(2-u\right)}{D_0} - 2u\left(L_{UV}-\log D_0\right)\right],

where we used ∂(−log⁡D)/∂k2=b/D\partial(-\log D)/\partial k^2 = b/D.

8.3 The counterterms in closed form, and the infrared logarithm

Now integrate over uu. Set m=1m=1. Both constants need ∫01P(u)log⁡D0 du\int_0^1 P(u)\log D_0\,du for a polynomial PP, and here is the first place where SymPy must not be trusted. Asked directly for ∫012ulog⁡((1−u)2+uλ2)du\int_0^1 2u\log((1-u)^2+u\lambda^2)du it returns

λ2+2log⁡λ−3,\lambda^2 + 2\log\lambda - 3,

which is wrong: at λ=0.1\lambda = 0.1 it evaluates to -7.595 while the true value is -2.477. Worse, it diverges as λ→0\lambda\to0 whereas the true integral tends to the finite -3. The safe route is integration by parts, which leaves a rational integral that the deterministic integrator code/ratint.py handles with a verified antiderivative. With Q′=PQ'=P, Q(0)=0Q(0)=0, and D0(0)=1D_0(0)=1, D0(1)=λ2D_0(1)=\lambda^2:

∫01Plog⁡D0 du=Q(1)log⁡λ2−∫01Q(u) D0′(u)D0(u) du,D0′(u)=λ2−2(1−u).\int_0^1 P\log D_0\,du = Q(1)\log\lambda^2 - \int_0^1 Q(u)\,\frac{D_0'(u)}{D_0(u)}\,du, \qquad D_0'(u) = \lambda^2 - 2\left(1-u\right).

Both pieces are then elementary, and the script verifies the result numerically at λ=0.1\lambda = 0.1 and 0.01 before using it. The outcome:

(all log-integrals below verified numerically at lam = 0.1, 0.01)
  limit lam->0 of int_0^1 (4-2u) log D0 du : -5
delta_m / c at lam -> 0 = 3*LUV + 5

I1 = int 4u(1-u)(2-u)/D0 du,  lim (I1 + 4 log lam) = -2
I2 = int 2u log D0 du,        lim I2 = -3
delta_Z2 / c = I1 - LUV + I2
  at lam -> 0:  -LUV - 4 log(lam) - 5

That is,

  δmc=3LUV+5+O(λ2log⁡λ),δZ2c=−LUV−2log⁡λ2−5+O(λ).  \boxed{\;\frac{\delta m}{c} = 3L_{UV} + 5 + O(\lambda^2\log\lambda), \qquad \frac{\delta Z_2}{c} = -L_{UV} - 2\log\lambda^2 - 5 + O(\lambda).\;}

Read off the two lessons. Both counterterms are ultraviolet divergent, as they must be, since their job is to absorb divergences. But only δZ2\delta Z_2 is infrared divergent, and it is divergent because of the rational integral

I1=∫014u(1−u)(2−u)(1−u)2+uλ2 du=−4log⁡λ−2+O(λ),I_1 = \int_0^1\frac{4u\left(1-u\right)\left(2-u\right)} {\left(1-u\right)^2+u\lambda^2}\,du = -4\log\lambda - 2 + O(\lambda),

whose integrand behaves near u→1u\to1 like 4(1−u)/[(1−u)2+λ2]4(1-u)/[(1-u)^2+\lambda^2] — logarithmically divergent, cut off at 1−u∼λ1-u\sim\lambda. Physically, that is the soft region of the photon in the self-energy loop. δm\delta m has no such term: the mass shift is infrared safe.

We can already predict the infrared behaviour of the whole diagram. Anticipating §9.2, the δZ2\delta Z_2 part of the subtraction collapses to δZ2\delta Z_2 times the leading-order diagram, so it contributes to μIId\mu_\mathrm{IId} (recall c=14(α/π)c = \frac14(\alpha/\pi) and F2LO=12(α/π)F_2^\mathrm{LO} = \frac12(\alpha/\pi), and IId carries the mirror factor 2)

−2 δZ2 F2LO=−2⋅απδZ2/c4⋅απ12=−(απ)2δZ2/c4,-2\,\delta Z_2\,F_2^\mathrm{LO} = -2\cdot\frac{\alpha}{\pi}\frac{\delta Z_2/c}{4} \cdot\frac{\alpha}{\pi}\frac12 = -\left(\frac{\alpha}{\pi}\right)^2\frac{\delta Z_2/c}{4},

i.e. in μ\mu units

contribution to mu_IId from the delta_Z2 subtraction: LUV/4 + log(lam) + 5/4
  coefficient of log(lam) = 1   i.e. +(1/2) log(lam^2/m^2)

The entire infrared logarithm of μIId\mu_\mathrm{IId} is the δZ2\delta Z_2 subtraction. The LUV/4L_{UV}/4 that comes with it is spurious — it must cancel against the rest of the diagram, because ΣR\Sigma_R as a whole is LUVL_{UV}-free, as we check next.

8.4 The ultraviolet cancellation, in one line

Assemble ΣR\Sigma_R and look only at the LUVL_{UV} terms. There are three sources: Σloop\Sigma_\mathrm{loop} contributes (4m−2u/k)LUV(4m-2u\slashed k)L_{UV}, the −δm-\delta m term contributes −(4m−2um)LUV-(4m-2um)L_{UV}, and the −(/k−m)δZ2-(\slashed k-m)\delta Z_2 term contributes +2u(/k−m)LUV+2u(\slashed k-m)L_{UV}. Their sum is

(4m−2u/k)−(4m−2um)+2u(/k−m)=−2u/k+2um+2u/k−2um=0,\left(4m-2u\slashed k\right) - \left(4m-2um\right) + 2u\left(\slashed k-m\right) = -2u\slashed k + 2um + 2u\slashed k - 2um = 0,

and note where this vanishes: pointwise in uu, before any parameter integration. This is much stronger than the divergences cancelling in the final number, and it is what makes the parametric integrand finite term by term. The script asserts it:

LUV cancels in Sigma_R pointwise in u                     OK

Doing the same bookkeeping for the finite parts gives a closed form we will use constantly. Grouping the log⁡D0\log D_0 terms (+c(4m−2um)log⁡D0+c(4m-2um)\log D_0 from −δm-\delta m and −2uc(/k−m)log⁡D0-2uc(\slashed k-m)\log D_0 from −(/k−m)δZ2-(\slashed k-m)\delta Z_2, which combine into c(4m−2u/k)log⁡D0c(4m-2u\slashed k)\log D_0) against the −c(4m−2u/k)log⁡D-c(4m-2u\slashed k)\log D from Σloop\Sigma_\mathrm{loop}:

  ΣR(k)=−4m2c b(2−u)D0(/k−m)−c(4m−2u/k)log⁡D(k2)D0  \boxed{\;\Sigma_R(k) = -\frac{4m^2c\,b\left(2-u\right)}{D_0}\left(\slashed k - m\right) - c\left(4m-2u\slashed k\right) \log\frac{D\left(k^2\right)}{D_0}\;}

verified by the script:

Sigma_R = -4 m^2 c b(2-u)(kslash-m)/D_0 - c(4m-2u kslash) log(D/D_0)   OK

The two terms will be treated separately from here on and are called the rational piece and the log piece. Note the structure of the rational piece: it is a constant (in kk) times (/k−m)(\slashed k - m). That innocuous-looking fact does most of the work in §9.

8.5 Sidebar: the same thing in dimensional regularization

Is any of this an artifact of Pauli–Villars? Redo the loop in d=4−2ϵd = 4-2\epsilon dimensions. Two things change. The contraction identity becomes γνγαγν=−(2−2ϵ)γα\gamma^\nu\gamma^\alpha\gamma_\nu = -(2-2\epsilon) \gamma^\alpha and γνγν=d\gamma^\nu\gamma_\nu = d, so the numerator is

γν(/l+m)γν=(2−d)/l+d m=(−2+2ϵ)/l+(4−2ϵ)m,\gamma^\nu\left(\slashed l+m\right)\gamma_\nu = \left(2-d\right)\slashed l + d\,m = \left(-2+2\epsilon\right)\slashed l + \left(4-2\epsilon\right)m,

and the master integral becomes (§5.8)

∫ddℓ(2π)d1(ℓ2−Δ)2=i16π2(1ϵ^−log⁡Δ+O(ϵ)),1ϵ^≡1ϵ−γE+log⁡4π.\int\frac{d^d\ell}{(2\pi)^d}\frac{1}{\left(\ell^2-\Delta\right)^2} = \frac{i}{16\pi^2}\left(\frac{1}{\hat\epsilon} - \log\Delta + O(\epsilon)\right),\qquad \frac{1}{\hat\epsilon} \equiv \frac1\epsilon - \gamma_E + \log4\pi.

Multiplying and keeping the finite part — note that the O(ϵ)O(\epsilon) piece of the numerator hits the 1/ϵ1/\epsilon pole and leaves a finite remainder — gives

d-dim numerator after the shift: 2*epsilon*ks*u - 2*epsilon*m - 2*ks*u + 4*m
Sigma_dimreg - Sigma_PV (with LUV <-> ehat) = 2*c*ks*u - 2*c*m

so the two schemes differ by

E(u)=c(2u/k−2m),E(u) = c\left(2u\slashed k - 2m\right),

a term linear in /k\slashed k with kk-independent coefficients. Such a term is annihilated identically by the on-shell subtraction:

E−E∣/k=m−(/k−m)∂E∂/k=(2u/k−2m)−(2um−2m)−2u(/k−m)=0,E - E\big|_{\slashed k=m} - \left(\slashed k-m\right)\frac{\partial E}{\partial\slashed k} = \left(2u\slashed k-2m\right) - \left(2um-2m\right) - 2u\left(\slashed k-m\right) = 0,
E - E(m) - (kslash - m) E'(m) = 0  => Sigma_R identical

This is the honest statement of what regularization does and does not affect. The counterterms δm\delta m and δZ2\delta Z_2 are scheme dependent — they differ between Pauli–Villars and dimensional regularization by finite amounts, and their numerical values are meaningless in isolation. ΣR\Sigma_R is scheme independent, and so is every physical quantity built from it. The renormalization conditions, not the regulator, are what carry the physics.

One caveat, found while verifying §5.8: the dictionary LUV↔1/ϵ^L_{UV}\leftrightarrow1/\hat\epsilon is exact for the log-divergent integral with a=0,n=2a=0,n=2 used here, but not universally — for a=1,n=3a=1,n=3 dimensional regularization produces an extra −12-\frac12, because the dd-dimensional angular average supplies d/2d/2 where four dimensions supply 2. A dimreg cross-check must therefore be run on a complete integral, not by substituting for LUVL_{UV} term by term. It is legitimate here precisely because the LUVL_{UV} coefficient vanishes pointwise.

9. The counterterm diagrams

Section 8 derived the subtraction Σloop→ΣR\Sigma_\mathrm{loop}\to\Sigma_R algebraically. It is worth seeing that this is the addition of counterterm diagrams, since that is the form in which renormalization is usually stated.

9.1 The δm\delta m insertion is a diagram

The counterterm vertex of §1.3 is i(/kδ2−δm)i(\slashed k\delta_2 - \delta_m). Its −iδm-i\delta_m part, inserted on an internal electron line of the leading-order vertex, gives a diagram of exactly the same shape as IId:

mass counterterm insertion
δΓδmμ=−ie2∫d4k(2π)4  γν(/k′+m)γμ(/k+m)(−δm)(/k+m)γν[(k−p)2−λ2][k′2−m2][k2−m2]2,\delta\Gamma^\mu_{\delta m} = -ie^2 \int\frac{d^4k}{(2\pi)^4}\; \frac{\gamma^\nu\left(\slashed k'+m\right)\gamma^\mu \left(\slashed k+m\right)\left(-\delta m\right) \left(\slashed k+m\right)\gamma_\nu} {\left[\left(k-p\right)^2-\lambda^2\right] \left[k'^2-m^2\right]\left[k^2-m^2\right]^2},

which is the raw diagram of §7.1 with Σloop→−δm\Sigma_\mathrm{loop}\to-\delta m. Adding the two is the same as the replacement Σloop→Σloop−δm\Sigma_\mathrm{loop}\to\Sigma_\mathrm{loop}-\delta m. Likewise the /k δ2\slashed k\,\delta_2 part of the counterterm vertex supplies the −(/k−m)δZ2-(\slashed k-m)\delta Z_2 term. So

IId with ΣR⏟what we compute=IId raw⏟divergent+δm insertion⏟counterterm diagram+δZ2 insertion⏟counterterm diagram,\underbrace{\text{IId with }\Sigma_R}_{\text{what we compute}} = \underbrace{\text{IId raw}}_{\text{divergent}} + \underbrace{\delta m\text{ insertion}}_{\text{counterterm diagram}} + \underbrace{\delta Z_2\text{ insertion}}_{\text{counterterm diagram}},

three Feynman diagrams whose sum is finite, none of which is finite by itself.

9.2 The δZ2\delta Z_2 insertion collapses

The δZ2\delta Z_2 counterterm diagram can be evaluated in closed form without doing any integral, because of the identity

S~(k)[−i(/k−m)δZ2]S~(k)=δZ2 S~(k),\tilde S(k)\left[-i\left(\slashed k-m\right)\delta Z_2\right] \tilde S(k) = \delta Z_2\,\tilde S(k),

which follows from S~(k)=i(/k+m)/(k2−m2)\tilde S(k) = i(\slashed k+m)/(k^2-m^2) and (/k+m)(/k−m)=k2−m2(\slashed k+m)(\slashed k-m) = k^2-m^2: explicitly,

i(/k+m)k2−m2(−i)(/k−m)δZ2i(/k+m)k2−m2=δZ2 i(/k+m)(k2−m2)(k2−m2)2=δZ2 S~(k).\frac{i\left(\slashed k+m\right)}{k^2-m^2} \left(-i\right)\left(\slashed k-m\right)\delta Z_2 \frac{i\left(\slashed k+m\right)}{k^2-m^2} = \delta Z_2\,\frac{i\left(\slashed k+m\right) \left(k^2-m^2\right)}{\left(k^2-m^2\right)^2} = \delta Z_2\,\tilde S(k).

The insertion has simply removed itself, leaving the leading-order diagram multiplied by a constant. Hence

F2[IId; ΣR]=F2[IId; Σloop−δm]−δZ2 F2LO,F_2\left[\text{IId};\ \Sigma_R\right] = F_2\left[\text{IId};\ \Sigma_\mathrm{loop}-\delta m\right] - \delta Z_2\,F_2^\mathrm{LO},

which is the identity used in §8.3 to predict the infrared logarithm.

9.3 Two schemes, and why the total does not care

There is a choice here, and it is worth being explicit about it because it is the reason per-diagram numbers must be compared carefully with the literature.

The KK scheme (what Karplus–Kroll, Petermann and the NLO section use) subtracts the full on-shell self-energy inside the diagram, i.e. uses ΣR\Sigma_R as above, including the δZ2\delta Z_2 term. This is what produces Petermann’s

μIId=1124−π218+12log⁡λ2m2.\mu_\mathrm{IId} = \frac{11}{24}-\frac{\pi^2}{18} +\frac12\log\frac{\lambda^2}{m^2}.

The LSZ scheme subtracts only δm\delta m inside the diagram and leaves δ2\delta_2 where it belongs, in the external-leg wave-function renormalization: LSZ multiplies the amputated vertex by Z2Z_2 per external leg, generating a cross term δZ2F2LO\delta Z_2 F_2^\mathrm{LO} that sits outside any particular diagram. Then

μIIdLSZ=μIIdKK+2 δZ2F2LO(α/π)2=μIIdKK−(LUV4+log⁡λ+54),\mu_\mathrm{IId}^\mathrm{LSZ} = \mu_\mathrm{IId}^\mathrm{KK} + 2\, \frac{\delta Z_2 F_2^\mathrm{LO}}{(\alpha/\pi)^2} = \mu_\mathrm{IId}^\mathrm{KK} - \left(\frac{L_{UV}}{4} + \log\lambda + \frac54\right),

using §8.3. The two differ by an infrared-divergent — and indeed ultraviolet-divergent — amount, so the individual numbers are entirely convention. What is not convention is the sum over all diagrams, and the mechanism is the Ward identity: there are three vertex subtractions (one each in IIa and the two mirror images of IIc) contributing −3δF1(0)F2LO-3\delta F_1(0)F_2^\mathrm{LO}, and the δZ2\delta Z_2 bookkeeping contributes −3δZ2F2LO-3\delta Z_2 F_2^\mathrm{LO} once the LSZ cross term is included, and

δF1(0)=−δZ2(the Ward identity Z1=Z2)\delta F_1(0) = -\delta Z_2 \qquad\text{(the Ward identity }Z_1=Z_2)

makes the two cancel exactly. The derivation section proves this as its assembly theorem; here we simply note that IId’s share of the bookkeeping is the δZ2\delta Z_2 term we have just isolated, and that choosing a different share changes μIId\mu_\mathrm{IId} by a computable constant and changes some other diagram by the negative of it.

We compute in the KK scheme, so as to compare with Petermann.

10. What the counterterms are, and how much of this is forced

We have now built two counterterms explicitly and watched them do their job. This is the right moment to stand back and answer four questions that the mechanics tend to bury: whether the counterterms are finite numbers or infinite ones, which half of the Lagrangian is the divergent one, which diagrams need counterterms at all, and how much of the procedure is forced on us as opposed to chosen.

10.1 The counterterms are finite; the limit is what diverges

At any finite value of the regulator the counterterms are perfectly ordinary numbers. Section 8.3 computed

δmc=3LUV+5,LUV=log⁡Λ2+scheme constant,\frac{\delta m}{c} = 3L_{UV} + 5,\qquad L_{UV} = \log\Lambda^2 + \text{scheme constant},

and for a finite Pauli–Villars mass Λ\Lambda that is a definite real number. It grows without bound as Λ→∞\Lambda\to\infty, and that is what the phrase “infinite counterterm” abbreviates. No step of the calculation ever manipulates an actual infinity: the regulator is removed only at the end, from expressions in which LUVL_{UV} has already cancelled.

It is worth appreciating how mild the divergence is. Restoring mm, the mass counterterm is proportional to mm — it must be, because m→0m\to0 is a chiral symmetry of the Lagrangian, and a symmetry not broken by the regulator cannot be broken by loop corrections. Hence δm∝mlog⁡Λ2\delta m\propto m\log\Lambda^2 rather than Λ\Lambda or Λ2\Lambda^2, and even a cutoff at the Planck mass gives only

log(Lambda^2/m^2) = 103.1
delta_m/m         = 0.182

>>> from math import log, pi
>>> alpha = 1/137.035999084
>>> m, Lam = 0.51099895e-3, 1.220890e19     # GeV
>>> LUV = 2*log(Lam/m)
>>> round(LUV, 1)
103.1
>>> round(alpha/(4*pi)*(3*LUV + 5), 3)
0.182

An 18% correction, with the cutoff at the highest scale anyone proposes. “Infinite” is a statement about a limit, not about a magnitude.

Be careful about what that number is. It is δm/m\delta m/m: the fraction of the electron’s measured mass that is electromagnetic self-energy, if the theory is cut off at the Planck scale. It is emphatically not an uncertainty in any prediction, and not a residual 20%20\% ambiguity in the answer. No observable carries it — aea_e least of all, for the reason §10.5 gives. It is a statement about the relation between a parameter in the Lagrangian and a number you measure, and nothing else.

Two remarks make it worth quoting anyway.

The first is the reason it is so small, which is the chiral symmetry already invoked: δm∝m\delta m \propto m, so the correction is proportional to the very quantity it corrects, and a small mass stays small. Run the same argument for a scalar and there is no such protection. Nothing becomes symmetric as a scalar mass goes to zero, so its counterterm is free to grow as δm2∝Λ2\delta m^2 \propto \Lambda^2, and at the Planck scale that exceeds the physical mass squared by some thirty orders of magnitude. The difference between log⁡Λ\log\Lambda and Λ2\Lambda^2 is the whole of the hierarchy problem; the electron sits on the comfortable side of it, and it does so because of a symmetry, not by luck.

The second is that the Planck scale here is rhetorical. QED on its own stops being the right description far below it: above roughly 100 GeV the photon mixes with the ZZ and one needs the full electroweak theory, so QED is a low-energy limb of the Standard Model, not a theory valid to 1019 GeV. It also has an internal ceiling of its own — the Landau pole where the coupling formally diverges, at some 10277 GeV for pure electron QED, absurdly far above the Planck mass and therefore never the binding constraint. The number 103 is thus not a calculation of anything. It is an illustration of how weak a logarithm is: even stretching a theory we know fails at 100 GeV all the way to where gravity must take over buys only a factor of one hundred.

The finite parts are equally unphysical, and for a sharper reason. In §8.5 we found that dimensional regularization and Pauli–Villars give self-energies differing by c(2u/k−2m)c(2u\slashed k - 2m) — a perfectly finite amount — so δm\delta m and δZ2\delta Z_2 differ between the two schemes even after the divergence is stripped. And δZ2\delta Z_2 is not purely a short-distance object at all: from §8.3,

δZ2c=−LUV−2log⁡λ2−5,\frac{\delta Z_2}{c} = -L_{UV} - 2\log\lambda^2 - 5,

which diverges at both ends, ultraviolet through LUVL_{UV} and infrared through log⁡λ2\log\lambda^2.

The moral is that no counterterm has a meaning on its own. What has meaning is ΣR\Sigma_R, which §8.5 showed is identical in the two schemes, and the physical quantities built from it.

10.2 Which half of the Lagrangian is divergent?

It is tempting to read the split of §1.2 as two infinite pieces whose sum is finite. It is not symmetric like that:

What is divergent when written honestly is the original bare Lagrangian: expressed in terms of m0=m+δm′m_0 = m + \delta m' and e0e_0, its coefficients are the ones without a finite limit. The renormalized split is a reorganization of that same object, chosen so that the divergent part is isolated in terms that can be treated as vertices.

The cancellation, moreover, is not between the two halves of the Lagrangian directly. It is between loop integrals generated by the first half and tree-level insertions of the second, order by order in α\alpha. Diagram IId shows this as concretely as one could wish: §9.1 exhibits the renormalized diagram as a sum of three Feynman diagrams,

IId raw⏟one loop, divergent  +  δm insertion⏟tree, divergent  +  δZ2 insertion⏟tree, divergent  =  IId with ΣR⏟finite,\underbrace{\text{IId raw}}_{\text{one loop, divergent}} \;+\;\underbrace{\delta m\ \text{insertion}}_{\text{tree, divergent}} \;+\;\underbrace{\delta Z_2\ \text{insertion}}_{\text{tree, divergent}} \;=\;\underbrace{\text{IId with }\Sigma_R}_{\text{finite}},

none of which is finite by itself. The counterterms count as order α\alpha even though they are tree-level, because their coefficients are themselves one-loop quantities; that is what makes the reorganized series an expansion in the renormalized coupling.

Is either half physical, then? Neither, separately. The counterterms are not fake or added by hand — §4.11 derived their Feynman rule from the Lagrangian exactly as it derived every other rule — but their values depend on the regulator and on the scheme, and §8.5 exhibits two different δm\delta m’s obtained from the same physics by two different regularizations. A quantity that changes when you change a convention cannot be measured. The categories are therefore:

What the theory predicts is neither half but the relations among observables it implies — aea_e as a function of α\alpha, which is precisely what A2A_2 is.

10.3 Which diagrams need counterterms: power counting

Not every diagram needs one. The ones that do are those containing a superficially divergent one-particle-irreducible subgraph, and the list of such subgraphs is short and — crucially — does not grow with the loop order.

Count powers of loop momentum in a diagram with LL loops, IeI_e internal fermion lines, IγI_\gamma internal photon lines, VV vertices, and Ne,NγN_e, N_\gamma external fermion and photon lines. Each loop integration supplies d4kd^4k, each internal fermion propagator falls off like 1/k1/k, each internal photon propagator like 1/k21/k^2, so the superficial degree of divergence — the power of Λ\Lambda obtained by scaling all loop momenta up together — is

D=4L−Ie−2Iγ.D = 4L - I_e - 2I_\gamma .

Three identities relate these counts. Every vertex has two fermion ends and one photon end, and every internal line uses two ends while every external line uses one:

2Ie+Ne=2V,2Iγ+Nγ=V,2I_e + N_e = 2V,\qquad 2I_\gamma + N_\gamma = V,

and the number of independent loops is the number of internal lines minus the number of momentum conservation constraints, one per vertex, less the overall one:

L=Ie+Iγ−V+1.L = I_e + I_\gamma - V + 1 .

Solve the first two for Ie=V−12NeI_e = V - \tfrac12 N_e and Iγ=12(V−Nγ)I_\gamma = \tfrac12\left(V - N_\gamma\right), substitute into the third to get L=12V−12Ne−12Nγ+1L = \tfrac12 V - \tfrac12 N_e - \tfrac12 N_\gamma + 1, and then into DD:

D=4(V2−Ne2−Nγ2+1)−(V−Ne2)−2⋅V−Nγ2D = 4\left(\frac{V}{2}-\frac{N_e}{2}-\frac{N_\gamma}{2}+1\right) - \left(V-\frac{N_e}{2}\right) - 2\cdot\frac{V-N_\gamma}{2}
=(2V−V−V)+(−2Ne+Ne2)+(−2Nγ+Nγ)+4,= \left(2V - V - V\right) + \left(-2N_e+\frac{N_e}{2}\right) + \left(-2N_\gamma+N_\gamma\right) + 4,
  D=4−32Ne−Nγ  \boxed{\;D = 4 - \frac32 N_e - N_\gamma\;}

The number of vertices has cancelled. Whether a given amplitude diverges depends only on how many external lines it has, not on how many loops were used to compute it. That single fact is what “QED is renormalizable” means, and it is why a fixed, finite set of counterterms suffices to all orders. (Contrast a theory whose coupling has negative mass dimension, such as the four-fermion Fermi interaction: there D=4−32Ne+2VD = 4 - \tfrac32 N_e + 2V grows with every vertex, so new counterterms are needed at every order and the programme never closes.)

Now enumerate. D≥0D\ge0 requires

NeN_eNγN_\gammaDDamplitudewhat happens
013photon tadpolevanishes by Furry’s theorem
022photon self-energytransversality ⇒\Rightarrow only logarithmic; needs δ3\delta_3
031three photonsvanishes by Furry’s theorem
040light-by-lightgauge invariance ⇒\Rightarrow finite
201electron self-energychiral symmetry ⇒\Rightarrow only logarithmic; needs δm,δ2\delta_m,\delta_2
210vertexlogarithmic; needs δ1\delta_1

Everything else has D<0D<0: four external fermions gives D=−2D=-2, Compton scattering (Ne=2,Nγ=2N_e=2,N_\gamma=2) gives D=−1D=-1, and so on. Two of the surviving entries are further reduced by symmetries — this is the recurring theme that a symmetry can make an amplitude less divergent than power counting suggests, and it is why the regulator must not break the symmetry (§10.4).

So there are exactly four counterterms, δ3\delta_3, δ2\delta_2, δm\delta_m, δ1\delta_1, and the Ward identity Z1=Z2Z_1 = Z_2 makes one of them dependent, leaving three independent constants — which is what one expects, since there are three things to fix: the pole of the electron propagator (mass), its residue (field normalization, a convention), and the residue of the photon pole (charge). The Ward identity also gives

e0=e Z1Z2Z3=eZ3,e_0 = \frac{e\,Z_1}{Z_2\sqrt{Z_3}} = \frac{e}{\sqrt{Z_3}},

so charge renormalization comes entirely from the photon field. That is why every charged particle, whatever its mass or spin, is renormalized by the same factor and the observed charges stay in exact integer ratios.

For the five diagrams of this calculation:

diagramdivergent subgraphcounterterm needed
I (crossed ladder)nonenone
IIa (ladder)vertexδ1\delta_1
IIc (corner)vertexδ1\delta_1
IId (self-energy)electron self-energyδm\delta_m and δ2\delta_2
IIe (vacuum polarization)photon self-energyδ3\delta_3

There is one more thing to say, and it is a gift specific to the quantity we are computing. Every one of the five does have an overall logarithmic divergence, since the whole diagram is a vertex function with D=0D=0; that overall divergence is removed by δ1\delta_1. But the vertex counterterm is −ie δ1γμ-ie\,\delta_1\gamma^\mu — pure γμ\gamma^\mu structure — so it contributes only to F1F_1 and cannot touch F2F_2. This is the same statement §11.6 reaches by counting powers of ℓ2\ell^2 in the numerator: F1F_1 diverges diagram by diagram and F2F_2 does not. The anomalous moment needs no overall ultraviolet renormalization of its own; only the subgraph subtractions matter, which is why diagram I can be computed with no counterterm at all.

10.4 What is forced, and what is chosen

It is natural to ask why any of this needs judgment — why one cannot simply generate all contractions, as in §4, and let the algebra sort itself out. Most of it can be automated, and it is worth being precise about which part cannot.

The structure is algorithmic. Which subgraphs must be subtracted follows from the power counting above, with no choices. For nested divergences (a divergent subgraph inside a divergent graph, which is exactly IId’s situation) and for overlapping ones, Zimmermann’s forest formula prescribes mechanically which subtractions to make and in which combinations, and the BPHZ theorem guarantees the result is finite to all orders. This part is implemented in automated multi-loop programs and requires no human input.

The finite part is a genuine choice. Power counting says the vertex subgraph needs a subtraction; it does not say which one. On-shell, minimal subtraction, modified minimal subtraction and momentum subtraction at a scale μ\mu are all legitimate, give different counterterms, and give different values for individual diagrams. Section 9.3 showed this concretely for IId: moving δZ2\delta Z_2 between the diagram and the external legs shifts μIId\mu_\mathrm{IId} by LUV/4+log⁡λ+5/4L_{UV}/4 + \log\lambda + 5/4 while leaving A2A_2 untouched. No amount of algebra selects among these; you must choose, and then be consistent.

The regulator must respect the symmetries, and checking that is not automatic. This is the sharpest point, and our own warm-up demonstrates it. Section 6.2 computed the photon self-energy with a naive momentum cutoff and found a non-transverse remainder — a photon mass proportional to αΛ2\alpha\Lambda^2, which is gauge-violating nonsense that no subsequent subtraction can repair, since a photon mass term is not available as a counterterm in a gauge theory. Pauli–Villars removes it precisely because the conditions ∑ici=0\sum_i c_i = 0 and ∑iciMi2=0\sum_i c_i M_i^2 = 0 are engineered to. An algorithm that blindly subtracted every divergence it found, without knowing that transversality had to survive, would produce a wrong theory and no error message. The same issue recurs elsewhere: dimensional regularization is superb for gauge symmetry and awkward for chiral symmetry, because γ5\gamma_5 has no clean dd-dimensional definition.

Matching someone else’s convention is archaeology, not physics. Our per-diagram numbers agree with Petermann’s only because we reproduced the Karplus–Kroll prescription, in which the vertex subgraph is subtracted pointwise in the subgraph’s Feynman parameters rather than after integration. Nothing forces that choice; it is simply what they did, and comparing diagram by diagram requires doing the same. Had we only wanted A2A_2, any consistent scheme would have served.

Where to implement the subtraction is an engineering choice. One may subtract at the level of the integrated amplitude, or — as our scripts do — pointwise in the parametric integrand, so that every intermediate expression is finite term by term and LUVL_{UV} cancels before any integration. Both give the same answer; the second is enormously more convenient numerically, and it is what makes the assertion “LUVL_{UV} cancels pointwise in uu” (§8.4) available as a check.

So the honest summary is that the structure of renormalization is forced and mechanizable, while the scheme is a convention, and the choice of regulator is constrained by which symmetries you cannot afford to break.

10.5 Does the answer depend on the cutoff?

No. The number this whole calculation is aimed at,

A2=197144+π212+34ζ(3)−12π2log⁡2=−0.328478965579…,A_2 = \frac{197}{144} + \frac{\pi^2}{12} + \frac34\zeta(3) - \frac12\pi^2\log2 = -0.328478965579\ldots,

contains no Λ\Lambda and no λ\lambda. It is a pure number, and this is not an assertion but something the calculation checks twice. The ultraviolet regulator cancels pointwise in the Feynman parameter inside ΣR\Sigma_R, before any integration is done (§8.4). The infrared regulator survives in the individual diagrams and cancels only in the sum, where the assembly script confirms that the coefficient of log⁡(λ2/m2)\log(\lambda^2/m^2) is exactly zero:

IR log cancellation: coeff of L in sum = 0

So where did Λ\Lambda go? Into the definitions of mm and α\alpha. The cutoff dependence has not been destroyed; it has been moved into the relation between the parameters of the Lagrangian and the two numbers we take from experiment. Once those two are fixed by measurement, everything else — including A2A_2 — is a prediction with no residual freedom.

The effective-field-theory reading makes this sharper, and is worth stating because it is the modern way to think about it. Suppose we do not take Λ→∞\Lambda\to\infty at all, but regard it as a real scale at which new physics appears. Then the low-energy theory is an effective one, and the unknown short-distance physics can influence aea_e in only two ways: by shifting the parameters we measure anyway, and through higher-dimension operators suppressed by powers of 1/Λ1/\Lambda. The leading such contribution to a magnetic moment is chirality-flipping and of higher dimension, so it scales as

Δae  ∼  me2Λ2\Delta a_e \;\sim\; \frac{m_e^2}{\Lambda^2}

with order-one couplings — a power, not a logarithm. Numerically:

>>> m_e, MPl = 0.51099895e-3, 1.220890e19        # GeV
>>> '%.1e' % (m_e/MPl)**2
'1.8e-45'
>>> round(m_e/2.8e-13**0.5)                      # GeV
966

New physics at the Planck scale would shift aea_e by about 10-45, which is beyond hopeless: the measurement quoted in the LO section is uncertain by 2.8×10−132.8\times10^{-13}. Turned around, that same sensitivity probes new physics up to roughly a TeV.

The moral is worth stating plainly, because it is the reason the whole enterprise works. The anomalous moment is exquisitely sensitive to physics at the weak scale and completely blind to physics at the Planck scale. That insensitivity of low-energy observables to unknown short-distance details is not a peculiarity of QED; it is what renormalizability buys, and it is why one can do physics at all without first knowing everything.

10.6 Ultraviolet and infrared: two divergences, two different cures

Both kinds of divergence were regulated in this chapter — Λ\Lambda for one, λ\lambda for the other — and both are absent from the final answer, which makes it easy to assume they are the same phenomenon handled the same way. They are not. Regularization is only bookkeeping; it makes intermediate expressions well defined and settles nothing. The cures are entirely different, and the difference is worth being precise about.

The ultraviolet divergence is absorbed. It does not cancel between diagrams — no amount of summing removes it. It is disposed of by admitting that the parameters in the Lagrangian are not the ones we measure, and reparametrizing. The cost is real: two numbers, mm and α\alpha, must be handed to the theory from experiment rather than predicted. In exchange, everything else becomes predictable.

The infrared divergence cancels. Nothing is reparametrized, no constant is measured, no predictive power is lost. For F2(0)F_2(0) the cancellation happens among the virtual diagrams themselves: IId carries +12log⁡(λ2/m2)+\frac12\log(\lambda^2/m^2), IIc carries −12log⁡(λ2/m2)-\frac12\log(\lambda^2/m^2), and the sum is finite. We needed λ\lambda only because we chose to compute diagram by diagram, and the individual diagrams are not observables.

That last point deserves an important qualification. F2(0)F_2(0) is special: it is infrared finite all by itself. F1F_1 is not, and neither is any scattering cross section. There the log⁡λ\log\lambda does not cancel among virtual diagrams; it cancels only when one adds the processes with extra soft photons in the final state (Bloch–Nordsieck), and the answer then depends on the detector’s energy resolution ΔE\Delta E — a dependence which is physical and measurable. In that case the divergence was telling us the question was badly posed: the probability of scattering with exactly zero photons emitted really is zero, because emitting arbitrarily soft photons is arbitrarily likely.

The analogy with Schwarzschild. The comparison is a good one, and mostly right, but it needs splitting in two.

The infrared divergence in F2F_2 is very much like the coordinate singularity at r=2Mr = 2M. In Schwarzschild coordinates the metric components blow up at the horizon although nothing physical happens there; the curvature invariants stay finite, an infalling observer notices nothing, and changing to Kruskal–Szekeres coordinates removes the singularity entirely. In our case the photon mass λ\lambda plays the role of the chart: individual diagrams blow up as λ→0\lambda\to0 although F2(0)F_2(0) is perfectly finite, and summing the diagrams removes the divergence entirely. In both cases the singularity lives in the description — the coordinate chart there, the diagram-by-diagram split here — and not in the thing being described.

But the infrared divergence of a cross section is not of that kind. It is not removable by any reorganization, because the quantity being asked for genuinely does not exist. That is less like a bad chart and more like asking for the proper time elapsed along a photon’s worldline: not an artifact to be transformed away, but a question with no answer. The cure is to ask a better question, and the improved question retains a real log⁡ΔE\log\Delta E.

The ultraviolet divergence is the closer analogue of the curvature singularity at r=0r=0: irremovable within the theory, and a signal that the theory is being pushed past its domain of validity. But the parallel should not be pushed into thinking of it as a pathology that we conceal. Saying “we hide the infinity in the counterterms” is the old framing, and it is the least useful way to see it. In the effective-field-theory picture nothing is hidden and nothing is infinite: Λ\Lambda is finite, the counterterms are finite, and they encode the boundary condition handed down by whatever completes the theory at short distance. The statement is not “QED is sick” but “QED does not predict its own short-distance behaviour, so that behaviour must be supplied as input” — in relativistic language, closer to needing boundary conditions to solve the field equations than to a curvature singularity.

There is, however, a place where the r=0r=0 analogy does bite. If one insists that QED is complete at all scales, the Landau pole of §10.1 is a genuine breakdown rather than a bad chart, and signals a real incompleteness of the theory. It simply lies so far beyond the scale at which QED is superseded that it never matters in practice.

To summarize:

infrared, in F2(0)F_2(0)infrared, in a cross sectionultraviolet
cured bysumming diagramssumming over final statesredefining parameters
what it costsnothingnothing; answer depends on ΔE\Delta Etwo measured inputs
what it wasartifact of splitting into diagramsan ill-posed questionshort-distance physics not predicted by the theory
Schwarzschild analoguecoordinate singularity at the horizonasking for a photon’s proper timeneeding boundary conditions (and, at the Landau pole, r=0r=0)

10.7 The infrared story in full: soft photons and the detector

Section 10.6 asserted that the infrared divergence of a cross section is cured by summing over final states, and that the answer then depends on the detector’s energy resolution ΔE\Delta E. That deserves to be shown rather than asserted, both because it is the one place where a divergence turns into something an experimentalist has to measure, and because it explains by contrast why aea_e needs none of it.

Infinitely many photons, of finite total energy. Start from the fact underneath everything else. The mean number of photons radiated with energy between ω\omega and ω+dω\omega+d\omega in a scattering event behaves, as we will derive below, like

d⟨N⟩  ≃  απ F dωω,d\langle N\rangle \;\simeq\; \frac{\alpha}{\pi}\,\mathcal{F}\,\frac{d\omega}{\omega},

with F\mathcal{F} a kinematic factor independent of ω\omega. Integrate this two ways:

⟨N⟩∼∫0dωω  =  logarithmically divergent,⟨E⟩∼∫0ω dωω=∫0dω  =  finite.\langle N\rangle \sim \int_0 \frac{d\omega}{\omega} \;=\; \text{logarithmically divergent}, \qquad \langle E\rangle \sim \int_0 \omega\,\frac{d\omega}{\omega} = \int_0 d\omega \;=\; \text{finite}.

The number of photons diverges while their total energy does not, because they accumulate at arbitrarily low energy. Every real scattering event emits infinitely many photons, all but finitely many of them below any threshold one cares to name. The probability of scattering and emitting none is therefore not small but exactly zero, and a perturbative calculation that asks for it is entitled to return −∞-\infty. The photon mass λ\lambda works as a regulator precisely because it truncates the spectrum at ω∼λ\omega\sim\lambda and makes the photon number finite — but λ\lambda is fictitious, and the honest resolution is to ask a better question.

The eikonal factorization. To get F\mathcal{F}, attach one soft photon of momentum kk and polarization ε\varepsilon to the elastic process, in all possible ways. Since k→0k\to0, only attachments to the external legs matter: an internal line carries momentum of order the hard scale, so adding kk to it changes nothing, whereas an external line is on shell and adding kk to it produces a nearly singular propagator.

Attach to the outgoing line. The extra propagator carries p′+kp'+k, and

(p′+k)2−m2=p′2+2p′⋅k+k2−m2=2 p′⋅k\left(p'+k\right)^2 - m^2 = p'^2 + 2p'\cdot k + k^2 - m^2 = 2\,p'\cdot k

using p′2=m2p'^2 = m^2 and k2=0k^2=0. The numerator, in the soft limit where /k\slashed k is dropped, is uˉ(p′) /ε∗(/p′+m)\bar u(p')\,\slashed\varepsilon^* \left(\slashed p'+m\right), and this collapses by the Dirac equation: anticommuting, /ε∗/p′=2(ε∗⋅p′)−/p′/ε∗\slashed\varepsilon^*\slashed p' = 2(\varepsilon^*\cdot p') - \slashed p'\slashed\varepsilon^*, so

uˉ(p′)/ε∗(/p′+m)=2(ε∗ ⁣⋅p′)uˉ(p′)−uˉ(p′)/p′/ε∗+m uˉ(p′)/ε∗=2(ε∗ ⁣⋅p′)uˉ(p′),\bar u(p')\slashed\varepsilon^*\left(\slashed p'+m\right) = 2\left(\varepsilon^*\!\cdot p'\right)\bar u(p') - \bar u(p')\slashed p'\slashed\varepsilon^* + m\,\bar u(p')\slashed\varepsilon^* = 2\left(\varepsilon^*\!\cdot p'\right)\bar u(p'),

the last two terms cancelling because uˉ(p′)/p′=muˉ(p′)\bar u(p')\slashed p' = m\bar u(p'). Collecting the vertex −ie-ie and the propagator’s ii,

uˉ(p′)(−ie/ε∗)i(/p′+m)2p′⋅k=e p′⋅ε∗p′⋅k  uˉ(p′).\bar u(p')\left(-ie\slashed\varepsilon^*\right) \frac{i\left(\slashed p'+m\right)}{2p'\cdot k} = e\,\frac{p'\cdot\varepsilon^*}{p'\cdot k}\;\bar u(p').

Attach to the incoming line instead. Now the propagator carries p−kp-k, so its denominator is −2p⋅k-2p\cdot k, and the same manipulation with /p u(p)=m u(p)\slashed p\,u(p) = m\,u(p) gives (/p+m)/ε∗u(p)=2(p⋅ε∗)u(p)\left(\slashed p+m\right)\slashed\varepsilon^*u(p) = 2\left(p\cdot\varepsilon^*\right)u(p), whence

i(/p+m)−2p⋅k(−ie/ε∗)u(p)=− e p⋅ε∗p⋅k  u(p).\frac{i\left(\slashed p+m\right)}{-2p\cdot k} \left(-ie\slashed\varepsilon^*\right)u(p) = -\,e\,\frac{p\cdot\varepsilon^*}{p\cdot k}\;u(p).

The relative minus sign is derived, not assumed: it comes from the propagator denominator changing sign when the photon is emitted from the incoming rather than the outgoing leg. Adding the two,

  M(p→p′+γ)  ≃  M0⋅e[p′⋅ε∗p′⋅k−p⋅ε∗p⋅k]  =  M0⋅εμ∗Jμ,  \boxed{\;\mathcal{M}\left(p\to p'+\gamma\right) \;\simeq\;\mathcal{M}_0\cdot e \left[\frac{p'\cdot\varepsilon^*}{p'\cdot k} - \frac{p\cdot\varepsilon^*}{p\cdot k}\right] \;=\;\mathcal{M}_0\cdot\varepsilon^*_\mu J^\mu,\;}
Jμ=e[p′μp′⋅k−pμp⋅k].J^\mu = e\left[\frac{p'^\mu}{p'\cdot k} - \frac{p^\mu}{p\cdot k}\right].

The soft emission has factorized completely: the hard physics sits in M0\mathcal{M}_0 and knows nothing about the photon. Note also that the eikonal current is conserved,

kμJμ=e[p′⋅kp′⋅k−p⋅kp⋅k]=e[1−1]=0,k_\mu J^\mu = e\left[\frac{p'\cdot k}{p'\cdot k} - \frac{p\cdot k}{p\cdot k}\right] = e\left[1-1\right] = 0,

which is what makes the polarization sum ∑polε∗μεν→−gμν\sum_\mathrm{pol}\varepsilon^{*\mu}\varepsilon^{\nu}\to-g^{\mu\nu} legitimate and the whole construction gauge invariant.

The soft cross section. Squaring and summing polarizations,

∑pol∣M∣2=∣M0∣2(−JμJμ)=∣M0∣2e2[2 p⋅p′(p⋅k)(p′⋅k)−m2(p′⋅k)2−m2(p⋅k)2],\sum_\mathrm{pol}\left|\mathcal{M}\right|^2 = \left|\mathcal{M}_0\right|^2\left(-J^\mu J_\mu\right) = \left|\mathcal{M}_0\right|^2 e^2 \left[\frac{2\,p\cdot p'}{\left(p\cdot k\right)\left(p'\cdot k\right)} - \frac{m^2}{\left(p'\cdot k\right)^2} - \frac{m^2}{\left(p\cdot k\right)^2}\right],

and integrating over the photon phase space d3k/[(2π)32ω]d^3k/\left[(2\pi)^3 2\omega\right]: with d3k=ω2dω dΩd^3k = \omega^2d\omega\, d\Omega the measure supplies ω dω dΩ/2\omega\,d\omega\,d\Omega/2, while every term in the bracket scales as 1/ω21/\omega^2, leaving

∫dωω×(angular integral).\int\frac{d\omega}{\omega}\times\left(\text{angular integral}\right).

There is the dω/ωd\omega/\omega promised at the start. Cutting the integral off below at the regulator and above at the detector resolution,

σreal(ω<ΔE)=σ0 απ F(q2)log⁡ΔE2λ2  +  finite,\sigma_\mathrm{real}\left(\omega<\Delta E\right) = \sigma_0\,\frac{\alpha}{\pi}\,\mathcal{F}\left(q^2\right) \log\frac{\Delta E^2}{\lambda^2} \;+\;\text{finite},

where F(q2)\mathcal{F}(q^2) is the angular integral, which for −q2=Q2≫m2-q^2 = Q^2 \gg m^2 behaves as F≃log⁡(Q2/m2)\mathcal{F}\simeq\log(Q^2/m^2). (The electron mass regulates what would otherwise be a second, collinear divergence when the photon is emitted parallel to a light-like charge; that is why mm appears here at all.)

The virtual side, and why the two must match. The one-loop vertex correction interferes with the tree amplitude and contributes to the elastic cross section, with the opposite sign,

σvirtual=− σ0 απ F(q2)log⁡Q2λ2  +  finite.\sigma_\mathrm{virtual} = -\,\sigma_0\,\frac{\alpha}{\pi}\,\mathcal{F}\left(q^2\right) \log\frac{Q^2}{\lambda^2} \;+\;\text{finite}.

The same F(q2)\mathcal{F}(q^2) appears in both, and this is not a coincidence to be checked case by case: it is unitarity. The virtual correction is the amplitude-level shadow of the identical soft-photon cloud, and total probability is conserved — if radiating becomes more likely, not-radiating must become correspondingly less likely, by exactly the same amount.

The cancellation. Adding the two, the fictitious λ\lambda drops out and is replaced by the physical ΔE\Delta E:

  σ(ΔE)=σ0[1−απF(q2)log⁡Q2ΔE2+⋯ ].  \boxed{\;\sigma\left(\Delta E\right) = \sigma_0 \left[1 - \frac{\alpha}{\pi}\mathcal{F}\left(q^2\right) \log\frac{Q^2}{\Delta E^2} + \cdots\right].\;}

Read it in the right direction: loosening the cut increases the count, because more bremsstrahlung events are accepted as elastic; tightening it decreases the count. That is simply what a detector does, and ΔE\Delta E belongs to the definition of the observable in the same way as a bin width or an angular acceptance. Two detectors of different resolution are measuring genuinely different quantities and are entitled to different numbers.

Exponentiation. The bracket goes negative once log⁡(Q2/ΔE2)\log(Q^2/\Delta E^2) is large enough, which is perturbation theory failing exactly where the physics says the answer must vanish. The cure is that these logarithms exponentiate, and the reason is that soft emissions are independent: each factorizes off the hard process in the same way, so the number of soft photons is Poisson distributed,

P(n)=⟨N⟩nn!e−⟨N⟩,P(0)=e−⟨N⟩.P(n) = \frac{\langle N\rangle^n}{n!}e^{-\langle N\rangle}, \qquad P(0) = e^{-\langle N\rangle}.

Resumming the leading logarithms accordingly,

σ(ΔE)=σ0(ΔE2Q2)απF(q2)  →ΔE→0  0.\sigma\left(\Delta E\right) = \sigma_0 \left(\frac{\Delta E^2}{Q^2}\right) ^{\frac{\alpha}{\pi}\mathcal{F}\left(q^2\right)} \;\xrightarrow[\Delta E\to0]{}\;0 .

This is the Sudakov form factor, and it is Bloch–Nordsieck’s theorem in one line: the exclusive cross section vanishes as a power of the resolution, with the exponent equal to the mean number of unobserved photons. Because F≃log⁡(Q2/m2)\mathcal{F}\simeq\log(Q^2/m^2) at high energy, the exponent itself contains a logarithm — the celebrated Sudakov double logarithm.

How big is this in practice? Not small. For electron scattering at a hard scale of 1 GeV with a detector resolving 10 MeV:

>>> from math import log, pi
>>> alpha = 1/137.035999084
>>> Q, dE, m = 1.0, 0.010, 0.51099895e-3        # GeV
>>> F = log(Q**2/m**2)
>>> round(F, 1)
15.2
>>> round(alpha/pi*F*log(Q**2/dE**2), 2)
0.32
>>> round((dE**2/Q**2)**(alpha/pi*F), 3)
0.723

A 30% suppression of the apparently elastic rate, which is why every precision electron-scattering experiment quotes a radiative correction computed for its own cuts. The infrared divergence is not an academic matter that cancels quietly; it becomes a number in the systematic error budget.

Why aea_e escapes all of this. The infrared divergence of the elastic amplitude lives entirely in F1F_1 — it is the charge form factor that is sensitive to soft radiation — and F1F_1 is exactly the piece that real emission cancels against. F2(0)F_2(0) is infrared finite by itself. The magnetic moment is untouched by soft photons, so aea_e is a genuine number with no ΔE\Delta E anywhere in it, and this chapter never had to think about detectors.

The log⁡λ\log\lambda we did fight with is a weaker and quite different thing: individual diagrams contributing to F2F_2 diverge, and cancel against one another in the sum (§13). That is an artifact of choosing to compute diagram by diagram — the coordinate-singularity case of §10.6 — and not a statement about any observable.

A generalization worth knowing. Bloch–Nordsieck is the final-state, QED version of the Kinoshita–Lee–Nauenberg theorem, which states that finiteness requires summing over all degenerate states. In QCD the initial states must be summed over as well, since coloured partons are not isolated, and the leftover dependence is absorbed into scale-dependent parton distributions — the same structure as here, with the factorization scale playing the role of ΔE\Delta E.

11. The covariant reduction

We now do the algebra of §7.1 with ΣR\Sigma_R inserted. The pipeline (code/g2_iid.py) does this with explicit 4×44\times4 matrices in the Breit frame, which is convenient for a computer and unilluminating for a human. Done covariantly, two structural facts appear that the brute-force route hides completely. Everything in this section is verified by pixi run iid-covariant (code/g2_iid_covariant.py), including the Dirac identities, which are checked against the explicit matrices of code/dirac.py at random momenta.

11.1 The insertion sandwich

Whatever ΣR\Sigma_R is, it has the form f+g/kf + g\slashed k with scalar f,gf,g, so the object appearing in the numerator is

(/k+m)(f+g/k)(/k+m).\left(\slashed k+m\right)\left(f+g\slashed k\right) \left(\slashed k+m\right).

Use /k2=k2\slashed k^2 = k^2 throughout. First,

(/k+m)2=k2+2m/k+m2,\left(\slashed k+m\right)^2 = k^2 + 2m\slashed k + m^2,
(/k+m)/k(/k+m)=(/k+m)(k2+m/k)=k2/k+mk2+mk2+m2/k=(k2+m2)/k+2mk2.\left(\slashed k+m\right)\slashed k\left(\slashed k+m\right) = \left(\slashed k+m\right)\left(k^2+m\slashed k\right) = k^2\slashed k + mk^2 + mk^2 + m^2\slashed k = \left(k^2+m^2\right)\slashed k + 2mk^2 .

Therefore

  (/k+m)(f+g/k)(/k+m)=P+Q/k,  \boxed{\;\left(\slashed k+m\right)\left(f+g\slashed k\right) \left(\slashed k+m\right) = P + Q\slashed k,\;}
P=f(k2+m2)+2mg k2,Q=2mf+g(k2+m2).P = f\left(k^2+m^2\right) + 2mg\,k^2,\qquad Q = 2mf + g\left(k^2+m^2\right).
(kslash+m)(f+g kslash)(kslash+m) = P + Q kslash   with
   P = f(k^2+m^2) + 2 m g k^2
   Q = 2 m f + g(k^2+m^2)
verified on explicit matrices at 3 random momenta        OK

Now specialize to the rational piece of ΣR\Sigma_R, which by §8.4 is κ (/k−m)\kappa\,(\slashed k-m) with

κ=−4m2c b(2−u)D0=−4c u(1−u)(2−u)(1−u)2+uλ2(m=1),\kappa = -\frac{4m^2c\,b\left(2-u\right)}{D_0} = -\frac{4c\,u\left(1-u\right)\left(2-u\right)} {\left(1-u\right)^2+u\lambda^2}\qquad (m=1),

a constant as far as the outer loop is concerned. Then f=−κmf = -\kappa m, g=κg = \kappa, and the sandwich telescopes:

(/k+m)κ(/k−m)(/k+m)=κ(k2−m2)(/k+m).\left(\slashed k+m\right)\kappa\left(\slashed k-m\right) \left(\slashed k+m\right) = \kappa\left(k^2-m^2\right)\left(\slashed k+m\right).
(kslash+m) kappa(kslash-m) (kslash+m) = kappa (k^2-m^2)(kslash+m)
=> the rational part cancels one power of the doubled propagator

This is the resolution of the double-pole worry of §7.1, made explicit. The factor (k2−m2)(k^2-m^2) cancels one power of [k2−m2]2[k^2-m^2]^2, and what is left is an ordinary single propagator.

11.2 The rational piece is the LO diagram times a constant

Put the cancellation back into §7.1. The rational piece of IId is

δΓratμ=−ie2 κ∫d4k(2π)4  γν(/k′+m)γμ(/k+m)γν[(k−p)2−λ2][k′2−m2][k2−m2],\delta\Gamma^\mu_\mathrm{rat} = -ie^2\,\kappa \int\frac{d^4k}{(2\pi)^4}\; \frac{\gamma^\nu\left(\slashed k'+m\right)\gamma^\mu \left(\slashed k+m\right)\gamma_\nu} {\left[\left(k-p\right)^2-\lambda^2\right] \left[k'^2-m^2\right]\left[k^2-m^2\right]},

and the integral is exactly the leading-order vertex diagram with a photon of mass λ\lambda. No new integral has to be done at all:

F2rat=(∫01du κ(u))×F2LO(λ),F2LO(λ)=απK(λ2),F_2^\mathrm{rat} = \left(\int_0^1 du\,\kappa(u)\right) \times F_2^\mathrm{LO}(\lambda),\qquad F_2^\mathrm{LO}(\lambda) = \frac{\alpha}{\pi}K\left(\lambda^2\right),

with KK the massive-photon kernel derived in the warm-up,

K(t)=∫01z(1−z)2(1−z)2+zt dz,K(0)=12.K(t) = \int_0^1\frac{z\left(1-z\right)^2} {\left(1-z\right)^2+zt}\,dz,\qquad K(0)=\frac12 .

Doing the uu integral (it is the same I1I_1 that made δZ2\delta Z_2 infrared divergent, up to a factor), and including the mirror factor 2,

  μrat(λ)=−12I1(λ) K(λ2)=log⁡λ+12+O(λ).  \boxed{\;\mu_\mathrm{rat}(\lambda) = -\frac12 I_1(\lambda)\, K\left(\lambda^2\right) = \log\lambda + \frac12 + O(\lambda).\;}
mu_rat(lam) = -(1/2) I1(lam) K(lam^2)
lim (mu_rat - log lam) = 1/2

This is worth pausing on. The NLO section reports that the rational piece “factorizes”, frat=U′(u)S′(y,z)f_\mathrm{rat} = U'(u)S'(y,z), as an empirical property of a big expression produced by the pipeline. Here we see why: the rational part of the renormalized self-energy is proportional to /k−m\slashed k - m, which collapses the insertion into a multiple of the leading-order diagram. The pipeline’s factors are

U(λ)=∫012u(u−2)(u−1)(1−u)2+λ2u du=I12,S(λ)=−K(λ2),U(\lambda) = \int_0^1\frac{2u\left(u-2\right)\left(u-1\right)} {\left(1-u\right)^2+\lambda^2u}\,du = \frac{I_1}{2}, \qquad S(\lambda) = -K\left(\lambda^2\right),

and the script confirms both identifications:

U(lam) (pipeline) == I1(lam)/2 (covariant)                OK

S(lam) + K(lam^2) at lam = 0.5, 0.1, 0.01:
   lam=0.5    S+K = 0.0
   lam=0.1    S+K = 0.0
   lam=0.01   S+K = 0.0
S(lam) == -K(lam^2): the pipeline's factorized rational piece
is exactly kappa x (LO massive-photon diagram)             OK

(The check is numerical because simplify cannot see the cancellation through the arctangent branch bookkeeping. Note also that SymPy’s naive integrate gives K(λ2)=12−λ2K(\lambda^2) = \frac12-\lambda^2, a polynomial with no logarithms at all — the second wrong answer of this section, and the one code/g2_lo.py warns about.)

11.3 The log piece: the ξ\xi representation

The second half of ΣR\Sigma_R is −c(4m−2u/k)log⁡(D/D0)-c(4m-2u\slashed k)\log\left(D/D_0\right), and a logarithm of the loop momentum is not something the master integrals of §5.4 can digest. The standard trick converts it into one more propagator at the cost of one more parameter. Start from the elementary identity

log⁡XY=∫01dξ X−YY+ξ(X−Y),\log\frac{X}{Y} = \int_0^1 d\xi\,\frac{X-Y}{Y+\xi\left(X-Y\right)},

which is just [log⁡(Y+ξ(X−Y))]01\left[\log(Y+\xi(X-Y))\right]_0^1. Apply it with X=D(k2)=a−bk2X = D(k^2) = a-bk^2 and Y=D0=a−bm2Y = D_0 = a-bm^2, so that

X−Y=−b(k2−m2),Y+ξ(X−Y)=−ξb(k2−C),C≡m2+a−bm2ξb,X - Y = -b\left(k^2-m^2\right),\qquad Y+\xi\left(X-Y\right) = -\xi b\left(k^2 - C\right),\qquad C \equiv m^2 + \frac{a-bm^2}{\xi b},

giving

  log⁡D(k2)D0=∫01dξ  k2−m2ξ(k2−C)  \boxed{\;\log\frac{D\left(k^2\right)}{D_0} = \int_0^1 d\xi\;\frac{k^2-m^2}{\xi\left(k^2-C\right)}\;}
log(D/D_0) = int_0^1 dxi (D-D_0)/(D_0+xi(D-D_0))
           = int_0^1 dxi (k^2-m^2)/(xi (k^2 - C))
C - m^2 = -(lam^2*u + u^2 - 2*u + 1)/(u*xi*(u - 1)) > 0  for xi in (0,1)

Two things happened at once. The factor (k2−m2)(k^2-m^2) cancels one power of the doubled propagator here too — so both pieces of ΣR\Sigma_R do, which is the double zero of §8.2 showing up in practice. And what replaces it is an ordinary propagator 1/(k2−C)1/(k^2-C) of squared mass C>m2C>m^2: a heavy fictitious particle. The log piece therefore has four propagators,

[(k−p)2−λ2][k′2−m2][k2−m2][k2−C],\left[\left(k-p\right)^2-\lambda^2\right]\left[k'^2-m^2\right] \left[k^2-m^2\right]\left[k^2-C\right],

and an overall factor 1/ξ1/\xi.

11.4 The numerator, contracted

For both pieces the outer numerator has the same shape, γν(/k′+m)γμ(P+Q/k)γν\gamma^\nu(\slashed k'+m)\gamma^\mu(P+Q\slashed k)\gamma_\nu, and the γν…γν\gamma^\nu\ldots\gamma_\nu contraction can be done once and for all with the identities of §5.7. Splitting into the PP and QQ parts and using, in turn, γνγαγβγν=4gαβ\gamma^\nu\gamma^\alpha\gamma^\beta\gamma_\nu = 4g^{\alpha\beta}, γνγαγν=−2γα\gamma^\nu\gamma^\alpha\gamma_\nu = -2\gamma^\alpha, and γνγαγβγγγν=−2γγγβγα\gamma^\nu\gamma^\alpha\gamma^\beta\gamma^\gamma\gamma_\nu = -2\gamma^\gamma\gamma^\beta\gamma^\alpha:

γν/k′γμγν=kα′ γνγαγμγν=4k′μ,\gamma^\nu\slashed k'\gamma^\mu\gamma_\nu = k'_\alpha\,\gamma^\nu\gamma^\alpha\gamma^\mu\gamma_\nu = 4k'^\mu,
γνmγμγν=−2mγμ,\gamma^\nu m\gamma^\mu\gamma_\nu = -2m\gamma^\mu,
γν/k′γμ/kγν=−2/kγμ/k′,\gamma^\nu\slashed k'\gamma^\mu\slashed k\gamma_\nu = -2\slashed k\gamma^\mu\slashed k',
γνmγμ/kγν=m kαγνγμγαγν=4mkμ,\gamma^\nu m\gamma^\mu\slashed k\gamma_\nu = m\,k_\alpha\gamma^\nu\gamma^\mu\gamma^\alpha\gamma_\nu = 4mk^\mu,

so that

  Nμ=γν(/k′+m)γμ(P+Q/k)γν=P(4k′μ−2mγμ)+Q(−2/kγμ/k′+4mkμ).  \boxed{\;N^\mu = \gamma^\nu\left(\slashed k'+m\right)\gamma^\mu \left(P+Q\slashed k\right)\gamma_\nu = P\left(4k'^\mu - 2m\gamma^\mu\right) + Q\left(-2\slashed k\gamma^\mu\slashed k' + 4mk^\mu\right).\;}
gamma^nu (k'slash+m) gamma^mu (P + Q kslash) gamma_nu
   = P (4 k'^mu - 2 m gamma^mu)
   + Q (-2 kslash gamma^mu k'slash + 4 m k^mu)
verified on explicit matrices at 2 random momentum pairs  OK

Four terms, from a string that started with five Dirac matrices. Of these, 4k′μ4k'^\mu and 4mkμ4mk^\mu are already of the (p+p′)μ(p+p')^\mu type that F2F_2 lives in (once the loop momentum is averaged away), −2mγμ-2m\gamma^\mu is pure F1F_1, and −2/kγμ/k′-2\slashed k\gamma^\mu\slashed k' contains both.

For the log piece, PP and QQ follow from §11.1 with f=−4mcf = -4mc, g=2ucg = 2uc (the log⁡\log having been traded for the ξ\xi propagator):

P=−4mc[(1−u)k2+m2],Q=2c[u(k2+m2)−4m2].P = -4mc\left[\left(1-u\right)k^2 + m^2\right],\qquad Q = 2c\left[u\left(k^2+m^2\right) - 4m^2\right].

11.5 Feynman parameters, shift, and Δ\Delta

Combine the four denominators with parameters x,y,z,tx,y,z,t summing to one (xx on the photon, yy on the k′k' line, zz on the kk line, tt on the CC line), using §5.1 with Γ(4)=3!=6\Gamma(4)=3!=6. The combined denominator is

Dcomb=x[(k−p)2−λ2]+y[(k+q)2−m2]+z[k2−m2]+t[k2−C]D_\mathrm{comb} = x\left[\left(k-p\right)^2-\lambda^2\right] + y\left[\left(k+q\right)^2-m^2\right] + z\left[k^2-m^2\right] + t\left[k^2-C\right]
=k2−2x k⋅p+2y k⋅q+xm2−xλ2+yq2−ym2−zm2−tC.= k^2 - 2x\,k\cdot p + 2y\,k\cdot q + xm^2 - x\lambda^2 + yq^2 - ym^2 - zm^2 - tC.

Complete the square with k=ℓ+sk = \ell + s, s=xp−yqs = xp - yq (§5.2). Using p2=m2p^2 = m^2, q2=−4w2→0q^2 = -4w^2 \to 0 and p⋅q=−q2/2p\cdot q = -q^2/2,

s2=x2m2+xy q2+y2q2,s^2 = x^2m^2 + xy\,q^2 + y^2q^2,

and with x+y+z+t=1x+y+z+t=1 the constant terms give m2(2x+t−1)m^2(2x+t-1), so

Δ=s2−(constant part)=m2[(1−x)2−t]−q2y(z+t)+xλ2+tC.\Delta = s^2 - \left(\text{constant part}\right) = m^2\left[\left(1-x\right)^2 - t\right] - q^2y\left(z+t\right) + x\lambda^2 + tC.

At q2=0q^2 = 0 this is Δ0=m2[(1−x)2−t]+xλ2+tC\Delta_0 = m^2[(1-x)^2-t] + x\lambda^2 + tC, positive because C>m2C>m^2. For the rational piece the same computation with three denominators (the tt line absent) gives the familiar

Δ=m2(1−x)2−q2yz+xλ2→q2→0m2(1−x)2+xλ2,\Delta = m^2\left(1-x\right)^2 - q^2yz + x\lambda^2 \quad\xrightarrow{q^2\to0}\quad m^2\left(1-x\right)^2 + x\lambda^2,

which is the leading-order denominator with a massive photon — as it must be, since §11.2 showed the rational piece is the leading-order diagram.

11.6 Extracting F2F_2

What remains is bookkeeping: substitute k=ℓ+sk = \ell+s into NμN^\mu, drop terms odd in ℓ\ell, replace ℓaℓb→gabℓ2/4\ell^{a}\ell^{b}\to g^{ab}\ell^2/4 (§5.6), apply the master integrals (§5.4) with n=4n=4 and a=0,1a=0,1, and project onto F2F_2.

The projection is where care is needed, for the reason flagged in §2.2: at q=0q=0 the structures γμ\gamma^\mu and (p+p′)μ(p+p')^\mu become degenerate between on-shell spinors, so we must keep qq to first order. This is exactly what the Breit-frame projector of §2.3 does, and it is what the pipeline implements:

F2(0)=−12[A0∣w=0+∂A1∂w∣w=0].F_2(0) = -\frac12\left[A_0\big|_{w=0} + \frac{\partial A_1}{\partial w}\bigg|_{w=0}\right].

One structural fact is worth extracting before turning the crank, because it explains why F2F_2 is finite while the diagram is not. Counting powers of ℓ2\ell^2: the γμ\gamma^\mu coefficient contains a term Q⋅2k2γμQ\cdot2k^2\gamma^\mu with QQ itself linear in k2k^2, hence (ℓ2)2(\ell^2)^2, which at n=4n=4 is logarithmically divergent. The (p+p′)μ(p+p')^\mu coefficient contains no such term — it is only linear in ℓ2\ell^2, and n−a−2=1>0n-a-2 = 1 > 0 is convergent. F1F_1 is ultraviolet divergent and F2F_2 is not, diagram by diagram, which is the concrete version of the statement in the LO section that the anomalous moment needs no ultraviolet renormalization of its own.

Carrying this out produces the parametric integrand flogf_\mathrm{log} — a 65-term rational function of (y,z,t,u,ξ,λ)(y,z,t,u,\xi,\lambda) and CC, written to code/g2_iid_flog.inc. It is not enlightening to display, and this is the honest place to hand over to the machine: the algebra is mechanical, the pipeline does it, and the check that it was done right is that the final number agrees with Petermann. What we have gained by doing §11.1–§11.5 by hand is everything that is not mechanical: why the double pole is harmless, why the rational piece is the leading-order diagram in disguise, where the fictitious mass CC comes from, and why F2F_2 is finite.

12. The parameter integrals

At this point

μIId=∫frat dy dz du⏟done in 9.2+∫flog dy dz dt du dξ,\mu_\mathrm{IId} = \underbrace{\int f_\mathrm{rat}\,dy\,dz\,du} _{\text{done in 9.2}} + \int f_\mathrm{log}\,dy\,dz\,dt\,du\,d\xi,

and only the second integral is left. It is done by pixi run iid-analytic (code/g2_iid_analytic.py), and the order of integration is chosen so that nothing worse than a logarithm appears until the very last step.

12.1 Trading ξ\xi for the fictitious mass

The parameter ξ\xi enters only through C(ξ)C(\xi), so change variables from ξ\xi to CC itself. From §11.3,

C=m2+a−bm2ξb=m2+D0ξb⟹dξξ=−dCC−m2,C = m^2 + \frac{a-bm^2}{\xi b} = m^2 + \frac{D_0}{\xi b} \quad\Longrightarrow\quad \frac{d\xi}{\xi} = -\frac{dC}{C-m^2},

and as ξ\xi runs over (0,1)(0,1), CC runs over (m2+D0/b,∞)(m^2 + D_0/b, \infty), which at m=1m=1 is (1/u,∞)(1/u,\infty) — a genuine spectral variable. The 1/ξ1/\xi prefactor of §11.3 is absorbed exactly by this Jacobian.

12.2 The order of integration

The integrations are then done in the order zz, CC, tt, s=y+zs=y+z, uu:

Each step is verified numerically against the previous one before proceeding, and each rational integration is done by code/ratint.py rather than by integrate, for the reasons demonstrated twice already. The output:

[   0.7s] f_rat factorized form verified
[   1.3s] U, S exact in lam, checked numerically
  mu_rat(lam->0) = log(lam) + 1/2
[   1.9s] z-integration done
[   2.1s] C-integration done, checked numerically
[   3.3s] t-integration done, checked numerically
[   4.0s] s-integration done, checked numerically
[   4.8s] u-integration done, checked numerically
  mu_log(lam=0) = -pi**2/18 - 1/24

The log piece is infrared finite — consistent with §8.3, which located the entire infrared divergence in δZ2\delta Z_2 — and equals

μlog=−124−π218.\mu_\mathrm{log} = -\frac1{24} - \frac{\pi^2}{18}.

12.3 The answer

Adding the two pieces, with μrat=log⁡λ+12\mu_\mathrm{rat} = \log\lambda + \frac12 from §11.2:

μIId=(log⁡λ+12)+(−124−π218)=1124−π218+log⁡λ,\mu_\mathrm{IId} = \left(\log\lambda + \frac12\right) + \left(-\frac1{24}-\frac{\pi^2}{18}\right) = \frac{11}{24} - \frac{\pi^2}{18} + \log\lambda,

and since log⁡λ=12log⁡λ2\log\lambda = \frac12\log\lambda^2 (with m=1m=1),

  μIId=1124−π218+12log⁡λ2m2  \boxed{\;\mu_\mathrm{IId} = \frac{11}{24} - \frac{\pi^2}{18} + \frac12\log\frac{\lambda^2}{m^2}\;}
mu_IId = 11/24 - pi^2/18 + (1/2) log(lam^2)
      == 11/24 - pi^2/18 + (1/2) log(lam^2/m^2)
      (Petermann 1957, eq. (4));  constant = -0.08997802228274214

in exact agreement with Petermann, Helv. Phys. Acta 30 (1957) 407, eq. (4).

13. Independent checks

Numerical. pixi run iid-fortran integrates the same parametric integrands by Gauss–Legendre quadrature in Fortran, with a smoothstep endpoint map to resolve the structure at parameter scale λ\lambda, and extrapolates λ→0\lambda\to0:

   lam     mu_IId - log(lam)    target = -0.0899780...
  0.1000      0.304059789767   (rat =  -1.4642459, log =  -0.5342794)
  0.0300      0.144669264714   (rat =  -2.7824431, log =  -0.5794456)
  0.0100      0.025773149821   (rat =  -3.9913265, log =  -0.5880705)
  0.0030     -0.043148094904   (rat =  -5.2625440, log =  -0.5897471)
  0.0010     -0.070807985164   (rat =  -6.3885840, log =  -0.5899793)
  0.0003     -0.083100856528   (rat =  -7.6048118, log =  -0.5900172)
extrapolated lam->0:      -0.090070136381
target 11/24-pi^2/18:     -0.089978022283

This is an independent check of the whole chain: it confirms both the constant and the coefficient of log⁡λ2\log\lambda^2, since the table has that term subtracted and still converges.

Structural. Three internal consistency checks were used along the way, and each would have caught an error:

  1. LUVL_{UV} cancels in ΣR\Sigma_R pointwise in uu (§8.4).

  2. The infrared logarithm predicted from δZ2\delta Z_2 alone (§8.3) matches the one the full calculation produces (§12.3).

  3. The covariant rational piece reproduces the pipeline’s independently derived factorization, S(λ)=−K(λ2)S(\lambda) = -K(\lambda^2) (§11.2).

Where the infrared logarithm goes. μIId\mu_\mathrm{IId} is not by itself physical; its +12log⁡(λ2/m2)+\frac12\log(\lambda^2/m^2) cancels against the −12log⁡(λ2/m2)-\frac12\log(\lambda^2/m^2) of diagram IIc. That cancellation, and the vanishing of the whole log⁡λ\log\lambda dependence of A2A_2, is verified in the assembly of the NLO section.

14. The same calculation, for any other diagram

The point of doing one diagram completely is to be able to do the others. Here is the procedure, with a note on what changes.

  1. Identify the contraction and its weight. Enumerate at order e5e^5, read off the class and the count, divide by 5!5!. Weight 2 means a mirror pair; weight 1 means the diagram is its own mirror. (I and IIa have weight 1; IIc and IId have weight 2.)

  2. Write the amplitude with the rules of §1.3, collecting the prefactor by counting (−ie)(-ie) per vertex, ii per fermion propagator, −i-i per photon propagator, and (−1)(-1) and a trace per closed fermion loop.

  3. Identify the divergent subgraph and subtract it on shell. Which subgraph needs subtracting is not a judgment call — it follows from the power counting of §10.3, and for nested or overlapping cases from the forest formula. A self-energy subgraph needs δm\delta m and δZ2\delta Z_2 (this section); a vertex subgraph needs δF1(0)\delta F_1(0); a vacuum-polarization subgraph needs Π(0)\Pi(0) (the warm-up); diagram I has no subgraph and needs nothing. What is a choice is the finite part left behind — the scheme — and to match Petermann’s per-diagram numbers we must use the KK prescription, in which the vertex subgraph is subtracted pointwise in the subgraph’s Feynman parameters rather than after integration. That is what IIa and IIc require. See §10.4 for what is forced and what is convention. In every case check that LUVL_{UV} cancels pointwise before proceeding.

  4. Look for a factor that vanishes on shell. If the subtracted subgraph is proportional to (/k−m)(\slashed k - m), as the rational part was here, it will cancel a propagator and may collapse the diagram to a lower-order one. This is worth checking before doing any integral.

  5. Rationalize any logarithm with the ξ\xi representation of §11.3, which costs one parameter and buys one propagator.

  6. Contract the Dirac string, using §5.7 to reduce γν…γν\gamma^\nu\ldots\gamma_\nu.

  7. Feynman-combine, shift, angular-average, integrate (§5.1–§5.6).

  8. Project onto F2F_2 with §2.3, and check that LUVL_{UV} is absent.

  9. Integrate the parameters in an order that postpones the dilogarithms, verifying each step numerically, and never trusting integrate on a rational function with a symbolic parameter.

  10. Check numerically in Fortran, independently.

The diagrams differ mainly in step 3 and in how far step 9 can be pushed: for IId and IIe it goes to the end analytically, for IIc and IIa the last one or two integrations are currently done numerically to fourteen digits and identified, and for I the parametric integral is at present only evaluated numerically.