Symmetry and the Monster · part 8 of 8

Symmetry and the Monster (8, finale): Moonshine

The eighth episode of the series, and also the finale. In the last episode, the Monster was truly built by one pair of hands — it lives in 196883 dimensions, and it carries a “+1” that at the time no one could explain (196884). In this episode we go and look at that “+1”: it appears, to the letter, in a number-theory formula written down more than a hundred years earlier. This is not a coincidence; it has a name, Moonshine. Who saw it first, how it was proved, and — why to this day no one can really explain it.

“So the real task is not so much to see what no one has seen, as to think — facing what everyone can see, to think a thought that no one has thought.” (translated)

— Arthur Schopenhauer (1788–1860), Parerga und Paralipomena, 1851


Author’s note

In just these two months while I was making and publishing the eighth episode, quite a few big things happened in the AI world and the mathematical world: Claude used Lean to formalize the proof of Fermat’s Last Theorem in full, that is, it wrote the proof that humans had completed thirty years ago, step by step, into code a machine can check; OpenAI announced that it had proved that solutions of the NS equations can blow up, and although whether it is right has not been settled as of today, it is already shocking enough. There are also many, many proofs that were previously out of reach that AI is now attempting one by one.

The first thing I felt was not joy but anxiety. This anxiety comes from thinking about the uncertainty of the future: the mental activity I take pride in is gradually being replaced by AI, so where will I myself go? The feeling that followed was bewilderment: since I do not know where to go, how should I live from here on?

What I can do is treat AI as a partner who is both teacher and friend, not as an intelligent agent that thinks for me; and see myself clearly: I am not as capable as AI, but I am a living person. In the first episode I wrote that the person reading this article must be alive; having reached the last episode, I come back to that sentence again.

More importantly, AI cannot take responsibility for our lives.


Companion video (YouTube)

Prologue · A coincidence that should not exist

In mathematics one occasionally meets this kind of thing: two objects that look completely unrelated, separated by a hundred years, belonging to different branches, nevertheless match on a set of numbers. You cannot prove that they must match, yet they simply do.

In November 1978, a British mathematician living in Montreal was casually reading a paper at home to pass the time. His own work was group theory, but the paper in his hands was number theory — he had assumed the two had nothing to do with each other. As he read, a number jumped out, and this number looked very familiar. He realized that the number he was really familiar with was another one: it differed from this number by just 1.

In that year, the two things linked by these two numbers had neither yet fully landed: on one side was the Monster, which at the time had not yet been built — how big it should be and what it should look like, mathematicians had computed a “medical report” for, but no one had seen it in person (that is exactly what EP7 was about); on the other side was a number-theory formula written on paper more than a hundred years earlier. A colossus not yet born, and an old formula long since yellowed, had, between 196883 and 196884, some kind of connection that could not be explained or put into words.

What this episode is about is investigating their connection (§1), what exactly this old formula is (§2), why these two unrelated fields match up (§3), and how it was finally proved, and why it is still a mystery to this day (§4). This is the last episode of the series. Having come this far, we will also look back at this road, which started from “why are there exactly five regular polyhedra” and took two thousand five hundred years to reach “Moonshine”.


§1 · McKay’s coincidence

The mathematician who, as just mentioned, came upon the coincidence was John McKay (1939–2022), a group theorist at Concordia University. The paper he was reading dealt with a classical object of number theory called the j-function (according to Ronan’s book, it was one by Atkin and Swinnerton-Dyer). The j-function can be expanded into a string of numbers, the first few of which are:

j=q−1+744+196884 q+21493760 q2+864299970 q3+⋯j = q^{-1} + 744 + \mathbf{196884}\,q + 21493760\,q^2 + 864299970\,q^3 + \cdots

McKay’s gaze stopped at the first “interesting” coefficient: 196884. Trained in group theory, he recognized at a glance that this number was almost another number he was familiar with — the dimension of the smallest representation of the Monster, 196883 (the central number of EP7, =47×59×71=47\times59\times71) — with one more 1.

In 1978 the Monster had not yet been built — if this is not cleared up first, the whole story loses its mystery. Griess (Robert Griess) constructed it by hand only in 1980 (paper 1982). When McKay came upon this coincidence, 196883 was still only a predicted character degree that Bernd Fischer, Donald Livingstone and Michael Thorne had computed before “the Monster was proved to exist”. So the accurate statement is not “the representation dimension of the Monster” but “the smallest representation dimension that the Monster (at the time still a prediction) ought to have”. This is where it is most anomalous: it was discovered between two objects that had neither fully landed.

“Too close to be a coincidence.” McKay wrote a letter to John Thompson, the grand master of the group theory world at the time. (It was a letter, not a postcard; according to Ronan, he did not use the post, but entrusted the letter to Fischer, who had come from Princeton to Montreal to give a talk, to carry back — Thompson was at the time at the Institute for Advanced Study in Princeton.)

Someone else might have let it go as a coincidence; Thompson did not, he got to work — in his own words: “I started fooling around with it, and tried the next coefficient.” With this try he realized — because this was not a coincidence of one number at all, but of a whole string. The Monster has a “fingerprint table” (the 194×194194\times194 character table, discussed in EP7 §2); take its first few dimensions and do simple additions, and they match the coefficients of the j-function term by term:

196884=1+196883196884 = 1 + 196883 21493760=1+196883+2129687621493760 = 1 + 196883 + 21296876 864299970=2⋅1+2⋅196883+21296876+842609326864299970 = 2\cdot 1 + 2\cdot 196883 + 21296876 + 842609326

Three lines, all correct term by term. (These can be checked independently up to the third — computing j on one side and matching it with Monster dimensions on the other; from the fourth coefficient, 20245856256, onward, more dimensions and less obvious multiplicities are needed, and it can only be checked by citing ATLAS data; see Appendix B for details.)

Thompson also took one more crucial step: since the coefficients of j correspond to the numbers of the Monster’s identity element in each dimension, could other elements of the Monster each also hide such a sequence? — this idea led straight to the whole set of conjectures in §3.

(A small episode, according to McKay’s later account as recorded in Marcus du Sautoy’s Finding Moonshine: the further decomposition of the higher coefficients was published first by Thompson; McKay himself had in fact also worked it out, “I was a bit peeved really”. And this string of series is today called the McKay–Thompson series, the honor going to both.)

McKay's "portrait"

Figure · McKay’s “portrait”: photographs of McKay from his lifetime exist, but we could not find one that can be freely used. What he left the world is the coincidence itself that he recognized at a glance — 196884=196883+1196884 = 196883 + 1. (Made by this channel.)


§2 · That old formula: what the j-function is

To understand this coincidence, we must first get to know the j-function. It has been in number theory for more than a hundred years, long an old acquaintance that “everyone can see” — only no one imagined it would get mixed up with a monster.

And to get to know j, we first need to change our angle.

2.1 Starting from complex numbers

In mathematics there is a concept called the upper half-plane:

H  =  { z=x+iy : y>0 }\mathbb{H}\;=\;\{\,z=x+iy\ :\ y>0\,\}

First, what the complex numbers mean: zz is a complex number, that is, a point in the plane; xx is its real part, defined in the complex plane by the horizontal coordinate, yy is its imaginary part, defined by the vertical coordinate, and ii is the imaginary unit (i2=−1i^2=-1). y>0y>0 restricts this point to above the horizontal axis — hence the name “upper half” plane. But the horizontal axis itself (y=0y=0, called the real axis) is not included.

On the upper half-plane, length is not measured the Euclidean way, but is defined by the following formula:

ds  =  ∣dz∣Im⁡zds \;=\; \frac{|dz|}{\operatorname{Im} z}

In this formula, dzdz is a small step moved starting from zz; ∣dz∣|dz| is the absolute distance between two points in the plane; Im⁡z\operatorname{Im} z is read “the imaginary part of zz”, that is, the yy of the upper half-plane mentioned above. dsds is then the length recorded for this small step under this standard.

Plug in two points and look: at z=1+10iz=1+10i, taking a step ∣dz∣=1|dz|=1 gives ds=1/10=0.1ds=1/10=0.1; at z=1+0.001iz=1+0.001i, taking the same step gives ds=1/0.001=1000ds=1/0.001=1000. For the same Euclidean length, the smaller yy is, the larger the reading; as y→0y\to 0, ds→∞ds\to\infty, so under this metric the real axis lies at infinity.

Area changes along with it:

dA  =  dx dyy2dA \;=\; \frac{dx\,dy}{y^{2}}

dx dydx\,dy is the area of a small rectangle measured the usual way (width dxdx, height dydy); dAdA is the area it is recorded as under this standard. Here we divide by y2y^{2} and not by yy, for a very plain reason: area is the product of lengths in two directions, each direction has to be divided by yy once, and twice makes y2y^{2}.

The reason for choosing this metric is: it stays unchanged under the following set of transformations. First look at this set of transformations:

w=az+bcz+d ,ad−bc=1w=\frac{az+b}{cz+d}\ ,\qquad ad-bc=1

zz is the point before the transformation, ww is where it lands after the transformation; a,b,c,da,b,c,d are four real numbers, the four parameters of this transformation. ad−bcad-bc is called the determinant of this transformation, and it governs three things, three different conditions:

One example makes all three clear together. Take (a,b,c,d)=(3,1,1,1)(a,b,c,d)=(3,1,1,1); then ad−bc=2ad-bc=2:

w=3z+1z+1,Im⁡w=2Im⁡z∣z+1∣2w=\frac{3z+1}{z+1},\qquad \operatorname{Im}w=\frac{2\operatorname{Im}z}{|z+1|^{2}}

The determinant is nonzero, so it is invertible (the inverse transformation is (1,−1,−1,3)(1,-1,-1,3)); the determinant is positive, so Im⁡w\operatorname{Im}w has the same sign as Im⁡z\operatorname{Im}z, and a point in the upper half-plane is still in the upper half-plane after the transformation. But in the numerator there is an extra 22, which is exactly ad−bcad-bc. Divide all four numbers by 2\sqrt2, and the determinant becomes 11, while the expression for ww, after multiplying top and bottom by 2\sqrt2, is identical to the original letter for letter — the map has not changed, only the way of writing it, and the extra 22 disappears.

After choosing this standard way of writing, only one doubling in the way of writing remains: (a,b,c,d)(a,b,c,d) and (−a,−b,−c,−d)(-a,-b,-c,-d) give the same transformation — in the PSL\mathrm{PSL} discussed in 2.2, that P\mathrm P takes care of exactly this. The modular group discussed in 2.2 later is the group obtained by further restricting a,b,c,da,b,c,d to integers.

For such transformations, we can also derive the identities directly:

Im⁡w=Im⁡z∣cz+d∣2,dw=dz(cz+d)2\operatorname{Im} w=\frac{\operatorname{Im} z}{|cz+d|^{2}},\qquad dw=\frac{dz}{(cz+d)^{2}}

The first formula says: the height after the transformation equals the original height divided by ∣cz+d∣2|cz+d|^{2}. The second says: the small step after the transformation equals the original small step divided by (cz+d)2(cz+d)^{2}. (Both formulas use the ad−bc=1ad-bc=1 chosen above — in the general case each of their right-hand sides also carries a factor ad−bcad-bc, which disappears only after the standard way of writing is taken.) What appears in both formulas is the same cz+dcz+d — this is not a coincidence; it is exactly what makes the next step work. Take absolute values and divide, and ∣cz+d∣2|cz+d|^{2} cancels exactly top and bottom:

∣dw∣Im⁡w=∣dz∣Im⁡z\frac{|dw|}{\operatorname{Im} w}=\frac{|dz|}{\operatorname{Im} z}

This is an important conclusion: the left side of the equals sign is the length recorded after the transformation, the right side is the length recorded before the transformation, and the two are, remarkably, exactly the same. That is to say, every transformation in the modular group is length-preserving under this standard.

So, take a region in the upper half-plane, and with these transformations we can get many results of the same lengths; in 2.3 next we will explain further how it comes about, and here we first call them tiles:

Those tiles are each the same size. “The closer to the edge, the smaller” is only an illusion of the Euclidean coordinate system — just as on a map Greenland looks bigger than Africa.

Let us combine this with a concrete example, and take this piece:

F={ z: ∣Re⁡z∣≤12,  ∣z∣≥1 }F=\left\{\,z:\ |\operatorname{Re}z|\le\tfrac12,\ \ |z|\ge1\,\right\}

Re⁡z\operatorname{Re}z is the real part of zz (that is, the xx above), and ∣Re⁡z∣≤12|\operatorname{Re}z|\le\frac12 says “no more than half a cell to the left or right”; ∣z∣|z| is the distance from zz to the origin, and ∣z∣≥1|z|\ge1 says “outside the unit circle”. This region is called the fundamental domain. Add up the dAdA above over it (the lower limit of integration comes from ∣z∣≥1|z|\ge1, i.e. x2+y2≥1x^{2}+y^{2}\ge1, which solves to y≥1−x2y\ge\sqrt{1-x^{2}}):

∬Fdx dyy2=∫−1/21/2 ⁣ ⁣[∫1−x2∞dyy2]dx=∫−1/21/2dx1−x2=[arcsin⁡x]−1/21/2=π6−(−π6)=π3\iint_{F}\frac{dx\,dy}{y^{2}} =\int_{-1/2}^{1/2}\!\!\left[\int_{\sqrt{1-x^{2}}}^{\infty}\frac{dy}{y^{2}}\right]dx =\int_{-1/2}^{1/2}\frac{dx}{\sqrt{1-x^{2}}} =\Big[\arcsin x\Big]_{-1/2}^{1/2} =\frac{\pi}{6}-\left(-\frac{\pi}{6}\right)=\frac{\pi}{3}

Four equals signs, each with its reason:

  1. Split into an iterated integral. F={−12≤x≤12, y≥1−x2}F=\left\{-\tfrac12\le x\le\tfrac12,\ y\ge\sqrt{1-x^{2}}\right\}, so the outer integral is over xx and the inner over yy.
  2. Integrate yy first. ∫a∞dyy2=[−1y]a∞=1a\displaystyle\int_{a}^{\infty}\frac{dy}{y^{2}}=\left[-\frac1y\right]_{a}^{\infty}=\frac1a; substitute a=1−x2a=\sqrt{1-x^{2}}.
  3. Recognize the antiderivative. ddxarcsin⁡x=11−x2\dfrac{d}{dx}\arcsin x=\dfrac{1}{\sqrt{1-x^{2}}}.
  4. Plug in the limits. arcsin⁡12=π6\arcsin\tfrac12=\tfrac{\pi}{6} (because sin⁡30∘=12\sin 30^\circ=\tfrac12), π6−(−π6)=π3\tfrac{\pi}{6}-\left(-\tfrac{\pi}{6}\right)=\tfrac{\pi}{3}.

The area of every tile is π/3\pi/3, however small it is drawn. Infinitely many pieces, each with the same area.

2.2 What those two transformations actually do in the plane

If the four parameters a,b,c,da,b,c,d of the set of transformations above are restricted to integers (still requiring ad−bc=1ad-bc=1), what we get is the modular group, written PSL(2,Z)\mathrm{PSL}(2,\mathbb{Z}). Read this notation piece by piece: 22 means these four numbers are arranged as 2×22\times2; Z\mathbb{Z} is the standard notation for all the integers; SL\mathrm{SL} means the determinant is 11; the P\mathrm{P} in front means (a,b,c,d)(a,b,c,d) and (−a,−b,−c,−d)(-a,-b,-c,-d) are regarded as the same transformation — because after plugging into az+bcz+d\frac{az+b}{cz+d}, changing the sign of top and bottom at the same time cancels out, and the landing point is exactly the same.

This whole group of transformations is generated by two transformations. Let us look at them one at a time, at where they send a point.

The translation T: z↦z+1T:\ z\mapsto z+1. The whole picture shifts one cell horizontally to the right. The imaginary part does not move; the height does not change. (Corresponding to a=1,b=1,c=0,d=1a=1,b=1,c=0,d=1.)

The flip S: z↦−1/zS:\ z\mapsto -1/z. (Corresponding to a=0,b=−1,c=1,d=0a=0,b=-1,c=1,d=0.) It is clearest written in polar coordinates z=reiθz=re^{i\theta} — rr is the distance from this point to the origin, θ\theta is its angle with the positive real axis:

−1z=−1re−iθ=1r ei(π−θ)-\frac1z=-\frac1r e^{-i\theta}=\frac1r\,e^{i(\pi-\theta)}

The distance rr becomes 1/r1/r — this is inversion in the unit circle, swapping inside and outside the circle; the angle θ\theta becomes π−θ\pi-\theta (π\pi is the radian way of writing 180∘180^\circ) — this is reflection in the imaginary axis, swapping left and right.

So: the unit circle as a whole does not move (when r=1r=1, 1/r1/r is still 11), and points on the circle are only swapped left and right; the point ii does not move (its r=1r=1, θ=π2\theta=\frac{\pi}{2}, and π−π2\pi-\frac{\pi}{2} is still π2\frac{\pi}{2}), it is the pivot of this transformation; the inside and the outside of the circle are swapped entirely.

Looking on the imaginary axis:

S:iy  ⟼  iyS:\quad iy\;\longmapsto\;\frac{i}{y}

A point at height yy is sent to height 1/y1/y. A point at height 1100\tfrac1{100} lands at height 100100; and ii (that is, y=1y=1) is the fixed point. In general

Im⁡ ⁣(−1z)=Im⁡z∣z∣2\operatorname{Im}\!\left(-\frac1z\right)=\frac{\operatorname{Im}z}{|z|^{2}}

— the height after the transformation equals the original height divided by “the square of the distance to the origin”. So points near the spot directly above the origin (for example points on the imaginary axis close to 00: Im⁡z\operatorname{Im}z is very small, and the square of ∣z∣|z| is even smaller) get flung, after the division, to very high places.

TT and SS, these two, are enough to generate the whole modular group. This is a conclusion; Appendix A uses exactly it, and the main text only gives a general reading.

2.3 What a tile is: one fundamental domain, and all its transformed images

We cite the example from 2.1:

F={ z: ∣Re⁡z∣≤12,  ∣z∣≥1 }F=\left\{\,z:\ |\operatorname{Re}z|\le\tfrac12,\ \ |z|\ge1\,\right\}

These two conditions correspond exactly to the two generators: ∣Re⁡z∣≤12|\operatorname{Re}z|\le\frac12 — go any further left or right and TT translates you back (TT translates one whole cell at a time, so half a cell is the dividing line); ∣z∣≥1|z|\ge1 — go any further in and SS flips you out (S:z↦−1/zS:z\mapsto-1/z does exactly inversion: ∣−1/z∣=1/∣z∣\left|-1/z\right|=1/|z|, a point at distance rr from the origin is sent to 1/r1/r — so points inside the unit circle run to outside the circle, and points on the circle stay on the circle (swapped left and right, only ii does not move)).

So FF is “one representative of each point’s equivalence class under the modular group”. Any zz in the upper half-plane can be sent into FF by some element of the modular group, and in essentially only one way (with a few gluings on the boundary). The full proof is in Appendix A.

What is called a “tile” is all the copies obtained by applying this set of transformations to FF everywhere: T(F)T(F), S(F)S(F), TS(F)TS(F), …… infinitely many pieces, pairwise congruent under the standard of 2.1, filling the whole upper half-plane.

The relation between tiles and coordinates: a point in the plane is an ordinary complex number z=x+iyz=x+iy; a tile is not a pattern drawn on the plane, but a grouping of “which points should be regarded as the same point”. zz, z+1z+1, −1/z-1/z are, in the eyes of the modular group, the same point, so only one piece FF needs to be kept as the representative.

2.4 The j-function: the characteristic of an elliptic curve

The j-function is a function defined on the upper half-plane: feed it a point zz, and it gives back a complex number j(z)j(z). What is special about it on this infinite tiled picture is two things.

The first: on every tile it takes the whole complex plane completely once — every complex number is taken, and each is taken only once — and it stays unchanged under all the transformations of the modular group (called modular invariant). Its meaning is defined by two:

j(z+1)=j(z),j(−1/z)=j(z)j(z+1)=j(z),\qquad j(-1/z)=j(z)

The first equation in the first definition: move the point one cell to the right (TT), and the value of jj does not change; the second says: flip the point over by SS, and the value of jj also does not change. And 2.2 said that TT and SS generate the whole modular group — both generating transformations leave it unchanged, so the whole modular group leaves it unchanged.

The second definition is: in this position, such a function is it alone (the technical term is hauptmodul, “principal modular function”). The meaning is: any modular function (modular invariant, meromorphic, and also meromorphic at the cusp) can be written as a rational function of j — a rational function being one polynomial divided by another, of the form P(j)Q(j)\frac{P(j)}{Q(j)}; the field of modular functions is C(j)\mathbb{C}(j) (C\mathbb{C} is the standard notation for all the complex numbers, C(j)\mathbb{C}(j) means “all the rational functions generated by jj”). That is to say, in this world, j alone is one coordinate: all other modular invariants can be computed from j. Both of these definitions (uniqueness, and how j maps the whole picture one-to-one onto the whole complex plane) are fully proved in Appendix A — including the C(j)\mathbb{C}(j) statement, which uses only Appendix A’s own valence formula.

What was said above is what j satisfies. But what it actually is has a more accurate answer, and this answer will follow us into §3 and §4.

First take a complex number zz (with positive imaginary part); it gives

Λz=Z+Zz ⊂ C\Lambda_z=\mathbb{Z}+\mathbb{Z}z\ \subset\ \mathbb{C}

The meaning is: Z\mathbb{Z} is all the integers, so Z+Zz\mathbb{Z}+\mathbb{Z}z means all points of the form m+nzm+nz (m,nm,n ranging over all integers) — take 11 and zz as two directions and walk out in integer steps, and you get an infinitely extending grid in the plane. Λz\Lambda_z is the set of all the intersection points of this grid, and ⊂C\subset\mathbb{C} means they are all complex numbers.

Roll up the complex plane according to this lattice (regard all points in the grid that differ by integer steps as the same point), and you get a torus — that is, an elliptic curve C/Λz\mathbb{C}/\Lambda_z.

The key step: two zz‘s produce the same elliptic curve (in the sense of isomorphism) if and only if they are related by the modular group:

C/Λz1≅C/Λz2  ⟺  z2=az1+bcz1+d(some element of the modular group)\mathbb{C}/\Lambda_{z_1}\cong\mathbb{C}/\Lambda_{z_2} \iff z_2=\frac{az_1+b}{cz_1+d}\quad\text{(some element of the modular group)}

z1z_1, z2z_2 are two starting points; ≅\cong is read “isomorphic”, meaning these two curves are essentially the same one, only written differently;   ⟺  \iff is “if and only if”, meaning the two sides are necessary and sufficient conditions for each other.

So that tiled picture is no longer a decorative painting. Each elliptic curve has exactly one representative point in FF, no more and no less. The other tiles are copies of FF, holding another way of writing the same batch of curves; the various ways of writing the same curve fall at the corresponding positions of the various tiles.

And the j-function is what finds a unique characteristic for each elliptic curve:

j(z1)=j(z2)  ⟺  the two are the same elliptic curvej(z_1)=j(z_2)\iff \text{the two are the same elliptic curve}

It is modular invariant precisely because all the ways of writing the same curve must be unique; when we take the whole complex plane, and take it only once, then each elliptic curve has exactly one and only one counterpart.

These two statements do not conflict; they are two sides of the same thing: the C(j)\mathbb{C}(j) proved in Appendix A is exactly the algebraic way of writing “j is a complete invariant”. And the statement of uniqueness explains two things: why §3 suddenly starts talking about “supersingular elliptic curves”, because those are the same batch of objects over a different number field; and why in §4 the coefficients of j turn out to be “dimensions”, because the generating function of §4 is computed on a torus, and a torus is an elliptic curve — it can only depend on the curve itself.

2.5 Escher’s disk

If you feel that this picture, which gets smaller and smaller as it tiles and never repeats, looks a lot like the tessellations in the disks of M. C. Escher, that is not an illusion, and there is an exact one-line explanation of it. That transformation is called the Cayley transform:

w=z−iz+iw=\frac{z-i}{z+i}

zz is a point in the upper half-plane, ww is where it lands in the disk. Plug in two numbers and you see what it is doing: when z=iz=i, the numerator is 00, so i↦0i\mapsto 0 — the “center” of the upper half-plane becomes the center of the disk; when zz is taken as a point on the real axis, z−iz-i and z+iz+i are a pair of conjugate complex numbers of equal length, and the result of dividing them has modulus 11, so the whole real axis is sent to the boundary circle of the disk. The tiles in the upper half-plane that “get smaller and smaller against the real axis” are, in the disk, the ring that “gets smaller and smaller against the boundary” — the same batch of tiles, the same standard, only drawn a different way. What Escher drew and what number theory uses really are the same thing.

2.6 That 744, and the 0 after subtracting it

We talked about the j-function earlier; when we expand j at infinity, we get the string of coefficients of §1. The variable used for the expansion is

q=e2πizq = e^{2\pi i z}

This is derived from TT, one of the two generators. T:z↦z+1T:z\mapsto z+1 gives j(z+1)=j(z)j(z+1)=j(z), that is, jj has period 11; and every function with period 11 can be written as a function of e2πize^{2\pi iz} — so qq is not picked out; it is the unique natural coordinate. (SS does not take part in this step.)

At the same time it “rolls” the upper half-plane toward infinity: writing z=x+iyz=x+iy, ∣q∣=e−2πy|q|=e^{-2\pi y}, so the larger zz‘s imaginary part yy, the closer qq is to 00; and when zz moves one cell to the right, the value of qq does not change at all (because e2πi=1e^{2\pi i}=1). The expansion starts from q−1q^{-1}, and the coefficients are all integers (the first few terms are computed term by term in Appendix A.3; that all of them are integers follows immediately from Appendix A’s assembly j=E43/Δj = E_4^3/\Delta — the leading coefficient of Δ\Delta is 11).

The standard j-function carries a constant term 744:

j=q−1+744+196884 q+⋯j = q^{-1}+744+196884\,q+\cdots

And what we use from here on is the version after subtracting 744:

J=j−744=q−1+0+196884 q+⋯J = j-744 = q^{-1}+0+196884\,q+\cdots

Since the q−1q^{-1} term and the 196884 q196884\,q term are exactly the same, the constant term changes from 744744 to 00. In §4 we will see that the coefficients of JJ are exactly the “layer-by-layer dimensions” of something.

Where 744 comes from can in fact also be made clear: j can be assembled from two parts —

j=E43Δj = \frac{E_4^{3}}{\Delta}

First make clear what “weight” is — it is about to appear in the next sentence. Weight says “how much it differs by after the transformation”. A modular form of weight kk satisfies

f(az+bcz+d)=(cz+d)k f(z)f\left(\frac{az+b}{cz+d}\right)=(cz+d)^{k}\,f(z)

Note that it is not invariant: after the change it differs by a factor (cz+d)k(cz+d)^k, and kk is the exponent of this factor. Only weight 00 is truly invariant — the factor becomes 11.

Plug in numbers and look: the weight of E4E_4 is 44, so the weight of E43E_4^{3} is 4×3=124\times3=12; the weight of Δ\Delta is also 1212. Divide two things of weight 1212, and that factor is (cz+d)12(cz+d)^{12} on both top and bottom and cancels:

j=E43Δ ⟹ weight 0 ⟹ j(γz)=j(z)j=\frac{E_4^{3}}{\Delta}\ \Longrightarrow\ \text{weight }0\ \Longrightarrow\ j(\gamma z)=j(z)

⟹ That jj is written in the form “one thing divided by another” is not a contrivance: to build a function of weight 00, the numerator and denominator must have the same weight, otherwise that factor cannot cancel.

⚠️ But what this requirement fixes is the shape, not this one function. E62E_6^{2} also has weight 1212 and is also holomorphic on the upper half-plane (differentiable everywhere in that region, with neither poles nor breaks), so E62/ΔE_6^{2}/\Delta also has weight 00 — it equals j−1728j-1728 (the relation between the two is the identity E43−E62=1728 ΔE_4^{3}-E_6^{2}=1728\,\Delta). The accurate statement comes in three parts: (1) wanting weight 00 ⟹ the numerator and denominator must have the same weight, and there is no other choice at this step; (2) further requiring holomorphy on the upper half-plane and only a pole of order one at the cusp ⟹ it can only be “weight 1212 divided by Δ\Delta”; (3) but what satisfies the first two is a whole family a j+ba\,j+b — requiring the leading term of the qq-expansion to be q−1q^{-1} fixes a=1a=1; the constant bb can still be chosen freely: the constant term of jj is what the way of writing it as E43/ΔE_4^{3}/\Delta computes, 744744, while the JJ used later takes the constant term to be 00.

Both are standard modular forms. E4E_4 is the Eisenstein series of weight 4, whose qq-expansion is E4=1+240∑n≥1σ3(n)qnE_4=1+240\sum_{n\ge1}\sigma_3(n)q^{n} (σ3(n)\sigma_3(n) is the sum of the cubes of all the positive divisors of nn); Δ\Delta is the discriminant, Δ=q∏n≥1(1−qn)24\Delta=q\prod_{n\ge1}(1-q^{n})^{24}, with leading coefficient 11. The complete definitions of both, and the properties used here, are in Appendix A. Divide the qq-expansions of the two, and what falls out in the constant place is 744. It is computed directly from this ratio; Appendix A computes this ratio in full from the Eisenstein series. And for j’s identity as “unique”, adding or subtracting a number in the constant term does no harm. What really needs attention is, on the contrary, the 0 after the subtraction: in §4 we will see that it equals the dimension of layer 1 of the moonshine module — that layer is empty; and “layer 1 is empty” is precisely the characteristic, in §4, of “the symmetry group can only be finite, not continuous”.


§3 · “Moonshine”: one word, and a whole set of conjectures

At the end of that year, Thompson returned from Princeton to Cambridge and told this strange affair to John Conway (1937–2020) — the same Conway as in EP6. Conway had in hand a huge amount of data on the Monster, and he immediately plunged into the library, and sure enough, in nineteenth-century number-theory literature, he found the same sequence. Together with a young mathematician, Simon Norton (1952–2019), he checked it again and again: between the Monster and number theory there really was a connection, but no one could say why.

The one who gave a name to this affair that could not be explained was Conway. He called it Moonshine. The word is a double pun, and it is worth citing Conway’s own words as they are (as recorded in Ronan’s book; given here in translation):

The things we had, with no logical argument holding them up, felt like dim moonlight shining on a group of dancing Irish leprechauns. And Moonshine can also mean illicitly distilled liquor — doing this research really did have something of the flavor of illicit distilling that cannot stand the light of day.

(“moonshine” in English already has the meaning of “foolish dreaming, absurd nonsense” — this layer is the common sense; the “bootleg liquor” layer of the pun is Conway’s own joke.)

Conway and Norton wrote this set of conjectures down in 1979, under the title “Monstrous Moonshine” (Bull. London Math. Soc. 11, 308–339). What the conjecture says goes far beyond the one function j: every conjugacy class of the Monster corresponds to a modular function of its own, and each one is the principal modular function of some genus 0 group.

What the conjecture says: four words, plugging in numbers one by one

There are four words in this sentence that need taking apart. Below, each is given a definition, and then numbers are plugged in.

Conjugacy classes: why by “class” and not by “element”

gg and g′g' being in the same class means that there exists some hh in the group such that g′=hgh−1g'=hgh^{-1}. Count it out with S3S_3 (all the permutations of three letters, ∣S3∣=6|S_3|=6): the six elements fall into 3 classes:

{e} ,{(12),(13),(23)} ,{(123),(132)} ,1+3+2=6\{e\}\ ,\qquad \{(12),(13),(23)\}\ ,\qquad \{(123),(132)\}\ ,\qquad 1+3+2=6

The reason for going by class is that the trace, which the next step takes, is unchanged under conjugation — let ρ\rho be any representation;

tr⁡ρ(hgh−1)=tr⁡ ⁣(ρ(h) ρ(g) ρ(h)−1)=tr⁡ρ(g)\operatorname{tr}\rho(hgh^{-1})=\operatorname{tr}\!\left(\rho(h)\,\rho(g)\,\rho(h)^{-1}\right)=\operatorname{tr}\rho(g)

Elements of the same class give the same trace, so the whole series depends only on the class, not on which element of the class was picked. The Monster has 194 conjugacy classes (the number of rows of that 194×194194\times194 fingerprint table of EP7 §2 is exactly this), so there are at most 194 series.

The McKay–Thompson series TgT_g: the definition, then plug in g=eg=e

The conjecture here first takes something on credit. Suppose there exists such a stack of vector spaces laid out in layers — this is what later became the moonshine module, written V♮V^\natural:

V♮=⨁n≥0Vn=V0⊕V1⊕V2⊕⋯V^\natural=\bigoplus_{n\ge0}V_n=V_0\oplus V_1\oplus V_2\oplus\cdots

Read it symbol by symbol. ⨁\bigoplus is the direct sum, meaning the layers are laid side by side without being mixed up; VnV_n is layer nn, a finite-dimensional space, and its dimension dim⁡Vn\dim V_n is exactly that string of coefficients of §1 (dim⁡V0=1\dim V_0=1, dim⁡V1=0\dim V_1=0, dim⁡V2=196884\dim V_2=196884, ……). The ♮\natural at the upper right is read “natural”; it is the traditional notation for this object and does not denote any operation. M\mathbb{M} is the Monster, and the Monster acts on each layer — every element gg in the group gives an invertible linear map on layer nn. What matters is the timeline: in 1979, when the conjecture was written down, this stack of spaces had not yet been built — its very existence was part of the conjecture; §4 will tell how it was later built.

So for each g∈Mg\in\mathbb{M} define

Tg(q)=∑n≥0tr⁡(g∣Vn)q n−1T_g(q)=\sum_{n\ge0}\operatorname{tr}\left(g\mid V_n\right)q^{\,n-1}

In the formula, the vertical bar in tr⁡(g∣Vn)\operatorname{tr}\left(g\mid V_n\right) is read “restricted to”: regard gg only as that linear map on layer nn, then take its trace (the sum of the entries on the main diagonal of the matrix). The exponent is written n−1n-1 rather than nn to shift the whole series by one place so that it starts from q−1q^{-1} — aligned with the JJ of §2.6; otherwise the two sides would differ by a factor of qq.

First plug in g=eg=e. The identity element is the identity matrix in any representation, and its trace is the dimension, tr⁡(e∣Vn)=dim⁡Vn\operatorname{tr}(e\mid V_n)=\dim V_n, so

Te(q)=∑n≥0(dim⁡Vn) q n−1=q−1+0+196884 q+21493760 q2+⋯=JT_e(q)=\sum_{n\ge0}(\dim V_n)\,q^{\,n-1}=q^{-1}+0+196884\,q+21493760\,q^{2}+\cdots=J

This step connects §1 back in. Those three identities of §1 are exactly the first few coefficients of this series split up according to the dimensions of the irreducible representations of the Monster:

196884=1+196883196884=1+196883 21493760=1+196883+2129687621493760=1+196883+21296876 864299970=2⋅1+2⋅196883+21296876+842609326864299970=2\cdot1+2\cdot196883+21296876+842609326

The left side is dim⁡Vn\dim V_n, the right side is layer nn split into irreducible blocks. When g=eg=e the trace can see only the dimension; change to another gg, and the trace is no longer the dimension, and what we get is another series — 194 classes, so there are 194 of them.

Change the element: the same layer, another number

The step just now used only the identity element. The conjecture is about other elements, so now let us change it.

Take an element of order two in the Monster, called 2A by its ATLAS class name. The layer is still the same layer — V2V_2, the dimension is still 196884, and the splitting is still the same splitting:

V2=1⊕196883V_2=\mathbf{1}\oplus\mathbf{196883}

The only thing that changes is the element plugged in. The traces of ee on the two blocks are the respective dimensions of the two blocks; the traces of 2A2A on the two blocks are two other numbers:

tr⁡(e∣V2)=1+196883=196884\operatorname{tr}(e\mid V_2)=1+196883=196884 tr⁡(2A∣V2)=1+4371=4372\operatorname{tr}(2A\mid V_2)=1+4371=4372

(43714371 is the character value of the 196883196883-dimensional block of the representation at 2A2A, read off the character table of the Monster.)

So we have the first few terms of the second series; place it side by side with the first:

Te(q)=q−1+0+196884 q+21493760 q2+864299970 q3+⋯T_{e}(q)=q^{-1}+0+196884\,q+21493760\,q^{2}+864299970\,q^{3}+\cdots T2A(q)=q−1+0+4372 q+96256 q2+1240002 q3+⋯T_{2A}(q)=q^{-1}+0+4372\,q+96256\,q^{2}+1240002\,q^{3}+\cdots

How these two lines look side by side is how the whole set of conjectures looks: the same stack of spaces, the same splitting, change the element, and the whole series changes to another set of coefficients. That string of numbers in §1 that matched the j-function turns out to be only the first row of this table.

Genus 0 and the principal modular function

A group Γ\Gamma acts on the upper half-plane, and after taking the quotient we get a surface; then add the cusps back — the upper half-plane itself does not contain the cusps, and only after they are added is the surface compact — written XΓX_\Gamma. Genus 0 means that this compact surface is a sphere; the field of modular functions on the sphere is generated by a single function, and this generator is called the principal modular function (hauptmodul).

The first example has already been given in §2. Take Γ=PSL(2,Z)\Gamma=\mathrm{PSL}(2,\mathbb{Z}); XΓX_\Gamma is the surface generated from the fundamental domain FF as in §2.3, with that one cusp added back, and jj takes each complex number exactly once on FF (§2.4); counting the cusp in together with ∞\infty, “exactly once” is

j:XΓ⟶C∪{∞}is a bijectionj:X_\Gamma\longrightarrow\mathbb{C}\cup\{\infty\}\quad\text{is a bijection}

that is, XΓX_\Gamma has genus 00 and jj is its principal modular function (full proof in Appendix A; the boundary note for the general case is also there).

The second example is the one just now. The group that goes with T2AT_{2A} is Γ0(2)\Gamma_0(2) with a Fricke involution W2:τ↦−1/(2τ)W_2:\tau\mapsto-1/(2\tau) added, written Γ0(2)+\Gamma_0(2)+; in Conway–Norton’s original table it is written “2+”. Its compactified quotient X0(2)+X_0(2)^{+} is likewise a surface of genus 00, and T2AT_{2A} is likewise its principal modular function — the function field is generated by this one function.

The group changed; the matter of “genus 0 plus one principal modular function” did not change. This shape is exactly what the conjecture says.

These functions were not made for moonshine. T2AT_{2A} can be written down without mentioning the Monster at all, using only the η\eta function of number theory (OEIS files this sequence under Fricke’s 1922 textbook on elliptic functions, and links it to Ramanujan’s paper on approximating π\pi; we did not get to these two original books, and the entries are in the sources). Moonshine did not create this batch of functions; it recognized the Monster on a batch of functions that had long lived in number theory.

A complete analysis of the conjecture

Now we can say it in full: every conjugacy class of the Monster gives a TgT_g, and every TgT_g is the principal modular function of some genus 0 group.

The one for g=eg=e we already saw in §2 — Te=JT_e=J, and the group is PSL(2,Z)\mathrm{PSL}(2,\mathbb{Z}) itself; the one for 2A2A we just saw — the group is Γ0(2)+\Gamma_0(2)+. Each of the remaining ones has its own group.

A small note on counting: the 194 classes do not give 194 different series, but 171. The smallest example can be seen already on C3={e,g,g2}C_3=\{e,g,g^{2}\} — C3C_3 is a commutative group, each element is a class by itself; take its representation as rotations of the plane (gg rotating by 2π/32\pi/3), and tr⁡(g)=2cos⁡2π3=−1\operatorname{tr}(g)=2\cos\frac{2\pi}{3}=-1 while tr⁡(g2)=2cos⁡4π3=−1\operatorname{tr}(g^{2})=2\cos\frac{4\pi}{3}=-1: two different classes give the same trace. The mechanism is g2=g−1g^{2}=g^{-1}, and tr⁡(g−1)=tr⁡(g)‾\operatorname{tr}(g^{-1})=\overline{\operatorname{tr}(g)}; when the trace is real the two coincide. It is the same in the Monster, and it happens on every layer at once: gg and g−1g^{-1} always share the same series, and this step brings 194 down to 172. For the last step, from 172 to 171, this article did not find the mechanism — Conway and Norton name it separately: the only other equality apart from inverses is between two conjugacy classes of order 27, and that there are no other equalities (Conway–Norton 1979, p. 310). Even in this comparison table there hides a coincidence without an explanation. (A class-by-class count is in Appendix F.)

In other words — every conjugacy class of the Monster has a principal modular function of its own.

Ogg’s other half of the riddle

In fact, nearly four years before McKay, another person had come upon the other half of the same fog.

On 14 January 1975, Jacques Tits gave his inaugural lecture at the Collège de France, and spoke of Fischer’s huge symmetry group that had not yet been built — “the Monster”. In the audience sat the Berkeley number theorist Andrew Ogg (1934– ). Ogg at the time had in hand a list of primes he had computed himself. After hearing that lecture, he compared the two sides and found them, astonishingly, exactly the same.

How that list was computed

What Ogg asked was a purely number-theoretic question: take the modular curve X0(p)X_0(p), then take the quotient by the Atkin–Lehner involution (when pp is prime, this is the Fricke involution), getting X0+(p)X_0^{+}(p); when does this curve have genus 0 (that is, the simplest shape, a sphere)?

The answer is a finite list. And the way Ogg himself wrote it down shows that it has structure better than listing does:

p≤31p\le 31, or p=41,  47,  59,  71p=41,\;47,\;59,\;71.

There are 11 primes with p≤31p\le 31, and adding the 4 after them, 15 in all:

2,3,5,7,11,13,17,19,23,29,31,41,47,59,712,3,5,7,11,13,17,19,23,29,31,41,47,59,71

This whole derivation, from beginning to end, uses only number theory — modular curves, genus, involutions. It can be computed before the Monster was constructed, and in fact that is just how it was: in 1975 the Monster was still only a conjectured object; it would be truly built by Griess only in 1980 (the paper published in 1982). What Ogg himself wrote in that note was “if it exists”.

Plugging in p=71p=71:

First the few objects that appear here. X0(p)X_0(p) is a modular curve, built exactly the same way as the XΓX_\Gamma above — take the quotient of the upper half-plane by a group to get a surface — only the group is changed to Γ0(p)\Gamma_0(p) (requiring that the lower-left entry cc of the matrix be divisible by pp). The genus is how many holes the surface has: a sphere has genus 00, a life ring has genus 11. The cusps are the few points that land at infinity after taking the quotient.

The genus of X0(p)X_0(p) has a closed formula (p≥5p\ge5 prime, two cusps):

g(X0(p))=1+p+112−ν24−ν33−1 ,ν2=1+(−1p),ν3=1+(−3p)g\left(X_0(p)\right)=1+\frac{p+1}{12}-\frac{\nu_2}{4}-\frac{\nu_3}{3}-1\ , \qquad \nu_2=1+\left(\frac{-1}{p}\right),\quad \nu_3=1+\left(\frac{-3}{p}\right)

where (ap)\left(\frac{a}{p}\right) is the Legendre symbol: when aa is a square modulo pp it takes +1+1, and when it is not, −1-1; ν2,ν3\nu_2,\nu_3 count the elliptic points of orders 2 and 3 on the surface (special points fixed by some element of the group). Plug in a number and look: (−171)=−1\left(\frac{-1}{71}\right)=-1, because −1-1 is not a square modulo 7171 (this is so for every prime p≡3 mod 4p\equiv3\bmod4), so ν2=1+(−1)=0\nu_2=1+(-1)=0; likewise (−371)=−1\left(\frac{-3}{71}\right)=-1, ν3=0\nu_3=0. Plug in p=71p=71:

g(X0(71))=1+7212−0−0−1=6g\left(X_0(71)\right)=1+\frac{72}{12}-0-0-1=6

Then take the quotient by the Fricke involution wpw_p — it is a symmetry of order two of X0(p)X_0(p) onto itself (do it twice and you return to where you were); take the quotient by it too, and the resulting surface is written X0+(p)X_0^{+}(p). This step is a double cover, and the Riemann–Hurwitz formula gives the genus of the new surface (ff is the number of fixed points of wpw_p; h(−D)h(-D) is the class number of the discriminant −D-D, that is, the number of equivalence classes of primitive binary quadratic forms of that discriminant, for example h(−71)=7h(-71)=7):

g+=2g+2−f4 ,f=#{wp  fixed points}=h(−4p)+h(−p)(p≡3 mod 4)g^{+}=\frac{2g+2-f}{4}\ ,\qquad f=\#\{w_p\ \text{ fixed points}\}=h(-4p)+h(-p)\quad(p\equiv3\bmod 4)

These two class numbers can be obtained by directly counting reduced binary quadratic forms: h(−284)=7h(-284)=7, h(−71)=7h(-71)=7, so f=14f=14,

g(X0(71)+)=2⋅6+2−144=0g\left(X_0(71)^{+}\right)=\frac{2\cdot 6+2-14}{4}=0

It lands exactly on 0. And the next prime no longer does: plugging in the same way, g(X0(73))=5g(X_0(73))=5, g+(73)=2≠0g^{+}(73)=2\neq0. So the list ends at 71, and it is not “these are all that have been found so far”: Ogg proved that after 71 the genus is never zero (this article recomputed up to 200, see Appendix C) — this is also why “the largest one is 71” is not an open case.

And on the other side, factor the order of the Monster group into primes:

∣M∣=246⋅320⋅59⋅76⋅112⋅133⋅17⋅19⋅23⋅29⋅31⋅41⋅47⋅59⋅71|\mathbb{M}|=2^{46}\cdot3^{20}\cdot5^{9}\cdot7^{6}\cdot11^{2}\cdot13^{3}\cdot17\cdot19\cdot23\cdot29\cdot31\cdot41\cdot47\cdot59\cdot71 =808 017 424 794 512 875 886 459 904 961 710 757 005 754 368 000 000 000=808\,017\,424\,794\,512\,875\,886\,459\,904\,961\,710\,757\,005\,754\,368\,000\,000\,000

The primes that appear are exactly 15, and written down they are

2,3,5,7,11,13,17,19,23,29,31,41,47,59,712,3,5,7,11,13,17,19,23,29,31,41,47,59,71

Identical to the list above, to the letter.

Each side can be computed independently, neither uses the other, and then they are identical to the letter. That is what makes it worth being astonished at. And Ogg in 1975 was taking a list computed perfectly clearly and comparing it with the order of a group that did not yet exist at the time.

What exactly is “super” about “supersingular”

The primes on this list are called supersingular primes in number theory.

Go back to those elliptic curves of §2.4. They live over the complex numbers; consider the same batch of equations instead over a finite field of characteristic pp, and most properties of the curves stay as before, but a very few behave anomalously:

The endomorphism ring of a supersingular curve is especially large. In the usual case it is an order in an imaginary quadratic field; in the supersingular case it is an order in a quaternion algebra — non-commutative. “So much symmetry that it does not look like what a curve ought to have” — this is where the name comes from.

Given pp, there are only finitely many supersingular jj-invariants (about p/12p/12 of them), and all of them fall in Fp2\mathbb{F}_{p^2}. The 15 primes on the list are exactly those for which these jj values all fall in the smaller Fp\mathbb{F}_p (Appendix C).

That other half of the riddle

Look once more at the end of the list: 47, 59, 71. The last episode said that these are exactly the three largest prime factors of the order of the Monster, and their product is exactly 196883 — the number McKay recognized had been lying all along at the tail of Ogg’s list.

Ogg simply wrote this coincidence into the paper he was writing at the time (in a Remarque, not a theorem), offering a bottle of whiskey as a reward for an explanation. (What he wrote in the original was Jack Daniels, without the apostrophe; the distillery’s official spelling is Jack Daniel’s. When quoting his original words we follow the former.) When McKay made his observation nearly four years later, the reward of this bottle was still open — and to this day (2026), no one has cleanly claimed the bottle.

He told this strange affair to Tits and to Serre (Jean-Pierre Serre, the one who wrote A Course in Arithmetic), and Serre’s reaction was a single “Sans blague” (no kidding). No one had the slightest idea why it should be so.

This riddle and the riddle of moonshine itself are two different matters, and must be looked at separately. First, which half is settled: the list of supersingular primes itself — including “the largest one is 71”. It is a classification result that Ogg computed from the side of modular curves: once pp exceeds 71, the genus of X0+(p)X_0^{+}(p) is no longer zero, and the list stops there. What hangs open is why the two lists are equal. Moonshine proved one direction of it — “a prime divides ∣M∣|M| ⟹ it is a supersingular prime” (so a prime greater than 71 certainly does not divide ∣M∣|M|); but the other way round — why each one of the 15 primes on the list happens to divide ∣M∣|M|, and why the prime factors of the Monster happen to reach exactly up to 71 — to this day there is no conceptual explanation; this is an independent unsolved riddle. (See Appendix C for details.)


§4 · The proof: the moonshine module, and a string theory

The conjecture was sitting there, matching term by term, but why did it match? No one could say. And the road that can at present be called an explanation is understanding it with the help of physics.

The moonshine module V♮

First comes the first step, completed by three mathematicians, Frenkel, Lepowsky and Meurman (FLM). They built a space — first announced in 1984, written up in 1988 as the book Vertex Operator Algebras and the Monster — and this space brings two properties together: its layer-by-layer dimensions are exactly the coefficients of J=j−744J=j-744; and its symmetry group is exactly the Monster. This space is called the moonshine module V♮V^\natural, and its structure is called a vertex operator algebra (VOA). The stack of spaces taken on credit in §3 was only here truly built.

In V♮V^\natural, that ♮\natural is the natural sign of musical notation, read “natural” — it takes part in no operation; it is only a proper-name marker. V♮V^\natural as a whole is read “the moonshine module”, and refers to exactly the one particular space below.

In physics there is a concept called conformal field theory. A field theory describes “what is vibrating at each point of space”; conformal is a requirement added on top of it: enlarge, shrink or bend the whole picture arbitrarily, and as long as the angles everywhere are unchanged, this theory cannot tell the difference between before and after. ⟹ It has no built-in unit of length; “how big” carries no information for it. Two dimensions is the setting where this requirement is most powerful: the local angle-preserving transformations in two dimensions are so many that they form an infinite-dimensional symmetry, strong enough to almost pin down the theory itself; whereas in d≥3d\ge3 dimensions, such transformations form only a finite-dimensional group — two dimensions is the only exception. The theory in this episode has two identities: mathematically, its axiomatization is the VOA to be described below; physically, it lives on the surface swept out by a string (see the “worldsheet” later in this section).

A vertex operator algebra (VOA), then, is the structure that writes “two-dimensional conformal field theory” as axioms. Concretely, it is a graded vector space

V=⨁n≥0VnV=\bigoplus_{n\ge0}V_n

(⨁\bigoplus is the direct sum, laying the layers side by side without mixing them up), plus one rule: each state a∈Va\in V is paired with an operator

Y(a,z)=∑ka(k) z−k−1Y(a,z)=\sum_{k}a_{(k)}\,z^{-k-1}

Y(a,z)Y(a,z) is called the vertex operator of aa; zz is not a number but a formal variable, used only to number a string of operators a(k)a_{(k)} (a(k)a_{(k)} is read “aa‘s kk-th mode”; it sends one state to another state). In this structure there is a special element ω\omega, which gives an operator L0L_0 and a number cc: L0L_0 is responsible for the grading (layer nn is those states for which the eigenvalue of L0L_0 is nn), and cc is called the central charge. ⟹ A VOA is the rigorous version of the “operator product expansion” of string theory (the physics-side account is in Appendix E, the mathematics-side axioms in Appendix D.1; this section uses only the two points “grading + each layer is a representation of the Monster”).

The “+1” of §1 here acquires an identity: the layer-by-layer dimensions of V♮V^\natural are the coefficients of JJ, and the Monster acts on it — the two things are no longer a numerical coincidence across empty space, but two faces of the same object.

“Layer by layer” deserves a sentence of expansion. The dimension of layer nn is exactly the coefficient that sits, in JJ, in the q n−1q^{\,n-1} place — layer 1 corresponds to the 00 in the constant place, layer 2 to the qq place’s 196884196884, and so on (that leading q−1q^{-1}‘s coefficient 11 also has an identity: layer 0, the vacuum, one-dimensional). And the Monster acts on each layer separately — so each layer is itself a representation of the Monster. Look at layer 2: it is 196884-dimensional, and split up it is exactly the one-dimensional trivial representation ⊕\oplus the 196883-dimensional smallest representation — McKay’s “+1” is the one-dimensional trivial direction in this layer. The additions that Thompson did back then when he “tried the next coefficient” acquire a geometric meaning here: that was splitting the representations layer by layer (the three identities of §1 are exactly the splittings of layers 2, 3 and 4).

The key is where the words “vertex operator” come from — they come from physics, from string theory. In the preface to their 1988 book, FLM say it very plainly (translated from the original English preface; given here in translation):

Our main theorem can be read as a quantum-field-theoretic construction of the Monster; in fact, what it says is: the Monster is the symmetry group of a certain special string theory.

This is the part of this episode written for readers in theoretical physics (the conceptual development is in Appendix E; here only the picture is given).

Where that 24 comes from. The critical dimension of the bosonic string is 2626; after light-cone gauge fixes away one pair of coordinates, 2424 transverse oscillators remain — where 26=24+226=24+2 comes from (several different roads point to the same 2626) is in Appendix E.1, and the main text does not repeat it. It is precisely these 24 directions that need to be compactified, so a 24-dimensional lattice is needed.

Take the Leech lattice Λ\Lambda (the lattice of EP6). What is special about it is that it has no “roots”, roots meaning lattice vectors of squared length 2:

#{λ∈Λ: ⟨λ,λ⟩=2}=0\#\{\lambda\in\Lambda:\ \langle\lambda,\lambda\rangle=2\}=0

Two words are needed here. Even says that the squared length of every vector in the lattice is an even number; unimodular says that the determinant of the lattice is 11 — an equivalent statement is that this lattice and its dual lattice are the same one. These two conditions pin things down extremely tightly: there are only 24 even unimodular lattices in 24 dimensions in all (this list is called the Niemeier classification, settled in 1973), and the other 23 all have roots; Leech is the only one that does not.

How is it constructed? Compactify these 24 bosons on the torus built from Λ\Lambda, and you get a vertex operator algebra VΛV_\Lambda; then fold away one Z/2\mathbb{Z}/2 symmetry:

V♮=(VΛ)θ ⊕ (VΛT)θV^\natural=\left(V_\Lambda\right)^{\theta}\ \oplus\ \left(V_\Lambda^{T}\right)^{\theta}

In the formula above: θ\theta is the symmetry obtained by negating lattice vectors (λ↦−λ\lambda\mapsto-\lambda) and lifting it up; the superscript θ\theta is read “take the part invariant under θ\theta”, that is, those states that stay exactly as they are after being acted on by θ\theta; the superscript TT is read twisted, and VΛTV_\Lambda^{T} is the unique “twisted sector” of this symmetry. ⚠️ This is not as simple as “divide by Z/2\mathbb{Z}/2”: one must both project onto the invariant part and attach the twisted sector — taking only (VΛ)θ\left(V_\Lambda\right)^\theta does not give V♮V^\natural (Appendix D.2).

The coincidence 196884 is assembled

What is most worth noticing about this construction is here: 196884196884 is not a parameter tuned to match jj; it is the result of adding two parts. Count layer 2 —

The untwisted half: the θ\theta-invariant states are of two kinds: lattice vectors of squared length 4 (λ\lambda and −λ-\lambda paired up, each pair giving one invariant combination), and the symmetric square of the 24 directions:

1965602+24×252=98280+300=98580\frac{196560}{2}+\frac{24\times25}{2}=98280+300=98580

⚠️ The “weight” here and the “weight 4” of §2 are two different quantities. The weight of §2 is the exponent that appears extra after a transformation; the weight here is the layer number — that number of layer 1, layer 2; it says only which layer this state sits in. That both places happen to be called “weight” is a collision of historical naming; when reading, understand each according to its own sentence.

The twisted half: the ground state of the twisted sector is 224/2=212=40962^{24/2}=2^{12}=4096-dimensional, at weight 3/23/2; add one more mode to rise to weight 22, and there are 24 directions that can be added:

4096×24=983044096\times24=98304

Adding the two halves:

98580+98304=19688498580+98304=\mathbf{196884}

Every number on the left comes from the lattice and the construction itself; the right side is JJ‘s coefficient in the qq place. This step uses no information whatsoever about the jj-function from start to finish.

Why layer 1 must be empty

Layer 1 of a lattice VOA has only two sources — roots, and the dimension of the lattice:

dim⁡(VΛ)1=#{λ:⟨λ,λ⟩=2}+rank⁡Λ=0+24=24\dim\left(V_\Lambda\right)_1=\#\{\lambda:\langle\lambda,\lambda\rangle=2\}+\operatorname{rank}\Lambda=0+24=24

And θ\theta acts on these 24 directions exactly as −1-1, so not a single one is invariant; and the twisted sector starts only from weight 3/23/2 and cannot reach weight 11. So

V1♮=0+0=0V^\natural_1=0+0=0

This step is the core, and the whole chain of logic is:

Leech has no roots ⇒ V1♮=0 ⇒ no states of weight 1 ⇒ no continuous symmetry ⇒ Aut⁡(V♮) can only be finite\text{Leech has no roots}\ \Rightarrow\ V^\natural_1=0\ \Rightarrow\ \text{no states of weight 1}\ \Rightarrow\ \text{no continuous symmetry}\ \Rightarrow\ \operatorname{Aut}(V^\natural)\ \text{can only be finite}

(Aut⁡\operatorname{Aut} is read “automorphism group”, meaning all the symmetries that keep this structure unchanged.) Why the middle step holds: the states of weight 1 are exactly the generators of continuous symmetries — each one gives a direction of a Lie algebra, along which one can rotate continuously. When layer 1 is empty, there is not a single continuous direction, the dimension of the symmetry group is 00, and so it can only be a finite group (strictly speaking one also needs: such automorphism groups are algebraic groups, and an algebraic group of dimension 00 must be finite) — and this finite group is exactly the Monster.

Change the lattice and the conclusion no longer holds, and this can be verified. Take any of the other 23, for example E83E_8^3 — three copies of E8E_8 placed side by side. In E8E_8, the vectors of squared length equal to 22 number 240240 (such vectors are called “roots”), so three copies have 720720; whereas Leech has 00:

E83: 720 rootsvsΛLeech: 0 rootsE_8^3:\ 720\ \text{roots}\qquad\text{vs}\qquad \Lambda_{\text{Leech}}:\ 0\ \text{roots}

As said earlier, there are 24 even unimodular lattices in 24 dimensions in all, and only Leech among them has 00 roots. Back to E83E_8^3: after folding, layer 1 is 720/2=360≠0720/2=360\neq0, and the continuous symmetry comes back. And layer 2 is still 196884196884 — E83E_8^3 has fewer vectors of squared length 44 than Leech (179280179280 versus 196560196560), 1728017280 fewer, which after halving is 86408640 states, made up exactly by the 24×720/2=864024\times720/2=8640 states of “one root plus one oscillator”. Change the lattice, and not one of the other coefficients of JJ changes; the only thing that changes is the constant place. (This is not a coincidence: modular invariance pins down all the coefficients other than the constant place; see Appendix E.3.) So what singles out Leech is not 196884196884, it is that 00.

The “vertex operators” of this conformal field theory are exactly the operators of string interactions. And the most crucial point is: the partition function of this conformal field theory on a torus (that is, the generating function of its layer-by-layer dimensions) is exactly J=j−744J = j-744 (the rigorous statement requires Zhu’s theorem; see Appendix E). So “why the j-function should happen to be a modular function” gets a clear explanation on the physics side — the modular invariance of the worldsheet torus; this phrase needs to be taken apart. A point particle moving in spacetime draws a line, called a worldline; but a string is not a point, it is something with length, and what it sweeps out as it moves is no longer a line, but a two-dimensional surface — this is called the worldsheet. All the calculations in string theory finally come down to “what happens on this surface”.

Next look at the shape of the surface. A closed string is a loop, and what it sweeps out when it propagates freely is a cylinder; and when this process is joined end to end — the string goes around one whole trip and returns to the state it started from — the two ends of the cylinder are glued together, and only then is what we get a torus (the surface of a doughnut). What needs computing is exactly this.

And the word “torus” has already appeared in §2.4: there it was the torus obtained by rolling up the complex plane according to the lattice Λz\Lambda_z, its shape described by one complex number zz (in the appendices the same quantity is written τ\tau; it is the same thing). That sentence of §2.4 now comes into use a second time: two zz‘s make the same torus if and only if they are related by the modular group. In other words, the same worldsheet can be labeled with different zz‘s, and what separates these different labelings is exactly the action of (abcd)\left(\begin{smallmatrix}a&b\\c&d\end{smallmatrix}\right). Since physics recognizes only the surface itself, and not which zz you chose to label it with, the quantities computed on this surface must be invariant under PSL(2,Z)\mathrm{PSL}(2,\mathbb{Z}) — that is to say, it must be a modular function. The symmetry of §2.4, which looked like a convention internal to number theory, here becomes a rule that physics must obey. That old formula of number theory, more than a hundred years old, is in fact related to a special kind of string theory.

⚠️ But we cannot stop the statement here: modular invariance is a threshold, not a sieve. It requires the answer to be a modular function, but does not tell you which one — there is more than one candidate that clears this threshold. What really picks JJ out from among them is the independent fact of construction above: layer 1 is empty. The rigorous statement is in Appendix E.3.

Borcherds’s proof, and the Fields Medal

The one who pushed FLM’s construction on to “proving the whole conjecture” was Richard Borcherds (1959– ) — when the moonshine module was announced, he was still a doctoral student under Conway. He built a new class of infinite-dimensional Lie algebras (today called Borcherds algebras), and picked out from them one key special case — the “Monster Lie algebra”, making use of the no-ghost theorem of string theory (Goddard–Thorn, 1972). In 1992, in the paper “Monstrous moonshine and monstrous Lie superalgebras” (Invent. Math. 109, 405–444), he completely proved the Conway–Norton conjecture: every McKay–Thompson series is indeed the principal modular function of a genus 0 group.

The difficulty of the conjecture is: on one side is a group, on the other side are functions. On the Monster side there are 194 conjugacy classes, on the number-theory side there are 171 series, and the Conway–Norton conjecture assigned a series to each class — but there was no reason at all for “why they match”; you had nothing in hand that could carry the information from this side to the other side.

What Borcherds built was exactly that bridge. His approach was not to check those 171 series coefficient by coefficient (each one has infinitely many coefficients; that could never be finished), but:

First build a “Lie algebra” from V♮V^\natural. A Lie algebra is something that appeared in EP4 — the set of “infinitesimal generators + commutation relations” that describes continuous symmetry. The one he built (he called it “the Monster Lie algebra”) has two properties, and neither can be missing:

The link is this one identity. The same algebra, seen from the group side, is a representation of the Monster; seen from the number-theory side, it is the expansion of jj. What remains is to “twist” this identity once — twisting once for each conjugacy class — and one gets all 171.

Therefore, he did not prove, one by one, what each of those 171 series equals; he built a thing that ties them together, whereby each series is pinned down by its first few coefficients, and what is left is only one finite check.

The skeleton has four steps, and each step is given a formula one can look at (Appendix D.3 has five steps, cut differently from here).

① Build a Lie algebra. Tensor V♮V^\natural with another vertex operator algebra and take its physical states:

m=physical states(V♮⊗VII1,1)\mathfrak{m}=\text{physical states}\left(V^\natural\otimes V_{\mathrm{II}_{1,1}}\right)

m\mathfrak{m} is a German blackletter m, read “the Monster Lie algebra”; II1,1\mathrm{II}_{1,1} is a two-dimensional even unimodular Lorentzian lattice, the central charge of whose vertex operator algebra is c=2c=2, so together it is 24+2=2624+2=26 — the same 26 as the critical dimension (for why, see Appendix E). ⚠️ It is V♮⊗VII1,1V^\natural\otimes V_{\mathrm{II}_{1,1}}, not the Leech route; the latter gives a different algebra (Appendix D.3).

② This step is what the no-ghost theorem refers to. Goddard–Thorn identify, in m\mathfrak{m}, the physical states of momentum (m,n)(m,n) with a certain whole layer of V♮V^\natural — and the isomorphism is as representations of the Monster, not just equality of dimensions. So the “root multiplicities” of the Lie algebra can be expressed as:

mult⁡(m,n)=dim⁡V1+mn♮=c(mn)\operatorname{mult}(m,n)=\dim V^\natural_{1+mn}=c(mn)

(mult⁡\operatorname{mult} is read “multiplicity”, meaning how many linearly independent elements there are in the direction of this root; c(N)c(N) is, of J=∑nc(n)qnJ=\sum_n c(n)q^n, the NN-th coefficient.) Plug in a concrete root (m,n)=(1,1)(m,n)=(1,1):

mult⁡(1,1)=c(1)=196884\operatorname{mult}(1,1)=c(1)=196884

The same 196884; this is its third identity in this episode — the left side of McKay’s equation, JJ‘s coefficient in the qq place, and now the multiplicity of a root.

③ The denominator identity. The “denominator identity” of this class of Lie algebras is an identity that writes its structure as a product equal to a sum. The one for m\mathfrak{m} is exactly the Koike–Norton–Zagier product already known in number theory (the pp here is only shorthand for e2πiσe^{2\pi i\sigma} and has nothing to do with the pp denoting a prime):

j(σ)−j(τ)=p−1∏m>0, n∈Z(1−pmqn)c(mn) ,p=e2πiσ,q=e2πiτj(\sigma)-j(\tau)=p^{-1}\prod_{m>0,\ n\in\mathbb{Z}}\left(1-p^{m}q^{n}\right)^{c(mn)}\ ,\qquad p=e^{2\pi i\sigma},\quad q=e^{2\pi i\tau}

The left side is two values of jj subtracted, the right side is an infinite product, and the exponents are exactly those multiplicities c(mn)c(mn) above. The structure of the algebra and the arithmetic of jj are, in this one line, forcibly pressed into the same thing.

④ Only by twisting do we get all 171. The one above is the untwisted version; it recovers only the one for g=eg=e (that is, JJ itself). What really gives all the TgT_g is the “twisted” denominator identities, one for each conjugacy class — replace the dimensions in the formula above by the traces tr⁡(g∣Vn♮)\operatorname{tr}(g\mid V^\natural_n). “Twisting” is the key, not a footnote: what it gives is exactly the replication identities proposed by Norton (1984).

Closing up: complete replicability determines each TgT_g uniquely by the first 5 coefficients of it (together with the various powers of gg), and what remains is one finite computer check — so for the 194 classes and 171 series, every one lands on a principal modular function of genus 0.

In 1998, Borcherds received the Fields Medal for this (and related work) (at the International Congress of Mathematicians in August, Berlin), and the citation named moonshine.

About how he felt on receiving the prize, in the year he received it he said something to Simon Singh, who interviewed him. In translation, the gist: he said he did not really feel anything special; before receiving the prize he had always thought it was enormously important, and now he understood that it did not mean anything. But — at the moment he proved the moonshine conjecture, he was so happy he flew to the moon (“I was over the moon”). The prize is cold; the proof is warm. And over the moon literally means “up on the moon” — the man who proved moonshine said of himself that he had gone up on the moon.

The vertex operator algebras, generalized Kac–Moody algebras and the no-ghost theorem of string theory used in the course of the proof are a true high peak, and a blog appendix certainly cannot cover all the details, so here we pass over it in a stroke. So this episode cites it honestly and does not rebuild it: Appendix D gives the skeleton on the mathematics side (VOA, V♮V^\natural, Borcherds’s strategy), and Appendix E gives the conceptual picture on the physics side. We prove to the end what can be proved (Appendices A, B), and state plainly what we cannot prove.


Coda · Proved, yet still a mystery; and a road walked for two thousand five hundred years

Moonshine has been proved; Borcherds’s theorem holds.

But “proved” and “understood” are indeed two different things. Why the Monster, why modular functions, why precisely the Leech lattice, why every series of that family is genus 0 — string theory has given the best clue so far (the modular invariance of the worldsheet, which connects the number-theory side and the symmetry side), but that is not a complete explanation. Ogg’s half of the riddle, the reverse direction, still has no resolution to this day (that is another riddle — why the two lists are equal; there has never been a conceptual reason); and that bottle of Jack Daniel’s has still not been claimed by anyone. This, perhaps, is what is most mysterious about it.

So this series too has come to its end. Let us look back once at this road:

From the five regular polyhedra in the hands of the ancient Greeks, asking “why are there only five”, the starting point was a geometric fact — there are exactly five regular polyhedra; the ancient Greeks counted them, but did not know that what they were counting was in fact symmetry. More than two thousand years later, Galois, to answer “why the quintic equation has no root formula”, made symmetry into an object that can be operated on — the group. Once there was an object, there was the next question: break all finite symmetries down until they cannot be broken further, and count these “atoms” clearly. Counting from Galois, it took more than a hundred years, and the answer is: eighteen infinitely extending families (exactly what EP5 took stock of), plus 26 sporadic groups that no family can take in (the box EP6 opened) — the largest of them is the Monster. The last step was one nobody expected: this largest exception matches, term by term, an old formula of number theory more than a hundred years old; this correspondence was proved to hold by Borcherds in 1992, and why it holds, no one to this day can say. From “why exactly five” to “why exactly a match” — the starting point and the end point of this road are the same kind of question.

Humankind has chased this thread of “symmetry” for two thousand five hundred years, from the regular polyhedra the ancient Greeks drew in the sand, to a monster living in over a hundred thousand dimensions, gazing across space at the depths of the whole of number theory. It did not stop at a full stop of “at last we understand it all”, but stopped before a riddle that can be proved, yet still cannot be understood.

The twenty years after the book

Ronan’s book stops at 2006. In these twenty years the riddle has not been solved — on the contrary, it has grown bigger.

In 2010, three physicists — Tohru Eguchi, Hirosi Ooguri and Yuji Tachikawa — came upon the same kind of coincidence in a completely different place: computing a function on the K3 surface (a standard geometric stage in string theory) — the elliptic genus — they found that the expansion coefficients decompose term by term into the dimensions of representations of M24 — the largest of the five Mathieu groups of EP6. This correspondence itself was rigorously proved to hold by Terry Gannon in 2012; but it is even more “mysterious” than Monster moonshine: Monster moonshine at least has the moonshine module V♮V^\natural as a “home”, while Mathieu moonshine has not even found its “home” yet — it has been proved that no concrete K3 model really carries this M24 symmetry, yet the correspondence is sitting there plain as day. The paper that discovered it writes, in the last sentence of its own abstract: “The reason is yet a mystery.”

Then they came in batches. In 2012, Miranda Cheng, John Duncan and Jeffrey Harvey found that Mathieu moonshine is not an isolated case, and named it umbral moonshine; then (2013) this family of phenomena was counted up as a family numbered one by one by the 23 Niemeier lattices; by 2015, the existence of the “moonshine modules” for all 23 cases had been proved — the Mathieu case first proved by Gannon, the other 22 cases completed together by Duncan, Michael Griffin and Ken Ono. However, these proofs give abstract existence; in most cases there is not even an explicit construction yet.

In 2017, moonshine reached the other side of that dividing line of EP6: among the 26 sporadic groups, there are 6 “pariahs” that even the Monster cannot take in — now the moonshine of one of them, the O’Nan group, has also been proved (Duncan–Mertens–Ono, 2017, the paper published in Nature Communications), and this time what was given was an explicit number-theoretic theorem (class numbers and the arithmetic of elliptic curves) — the proof landed, and the “why” is likewise still empty. Even groups not inside the Monster have been lit by moonshine.

Looking back now, “moonshine” is no longer an isolated case but a family — Monster moonshine, Mathieu moonshine and the umbral family behind it, pariah moonshine, and beyond these more small branches. Yet in this family, the “why” of not a single member has ever been truly explained. The clues on the physics side are also multiplying: in 2016 there was work that gave, starting from string theory, a physical derivation of the genus-0 property — but the authors themselves marked its mathematical level as a “sketch”. The clues are more and more, but the question itself has become more and more mysterious. So in 2026 this is still in the present tense: it can be computed, it can be proved, but no one can say why.

Perhaps this is the fitting ending. The best moments of mathematics have never been “we know everything”, but “we know that something is here, yet do not yet know why”.

The box has been opened, the monster has appeared, moonshine has been proved. And where exactly that beam of moonlight comes from — that is left to the future.

(The Symmetry and the Monster series · The End.)


Author’s note · Closing

As the end point of this series, let me say what I have felt over these few months. First, AI can help me do so many things I had not thought of before, or had thought of but had no way to realize; this video series is one of them. Second, in these short few months I have indeed experienced anxiety and bewilderment such as I have never had before; it comes from the difficulties in my life that I am currently facing, and also from the perplexities AI has brought. After finishing this series I still have many topics I want to do, such as relativity, such as quantum mechanics, and also such as a series on the Nobel Prize in Physics. I hope that you who have read this far will give me lots of support. Thank you.


Appendices A–F (mathematics / physics)

Table of notation (common to Appendices A–F)

The main text assumes by default that the reader has undergraduate mathematics, and the notation below basically does not appear in undergraduate courses. It appears again and again in A–E, so it is gathered here and explained clearly once; when it is first used in the later sections it is not explained again. When you cannot read on, come back to this table; do not guess.

The modular-forms side (A / B / C)

NotationRead asIn one sentence
H\mathbb{H} · H∗\mathbb{H}^*upper half-planeH={Im⁡τ>0}\mathbb{H}=\{\operatorname{Im}\tau>0\}; H∗\mathbb{H}^* is it with the cusps added
cuspcuspthat “point at infinity” τ→i∞\tau\to i\infty; only with it added is the quotient surface compact
weight kkweightthe exponent in the transformation law f(γτ)=(cτ+d)kf(τ)f(\gamma\tau)=(c\tau+d)^{k}f(\tau); k=0k=0 means “completely invariant”
meromorphicmeromorphicholomorphic everywhere except at isolated poles
cusp formcusp forma modular form that takes the value 00 at the cusp (Δ\Delta is one)
ord⁡Pf\operatorname{ord}_P f“the order of ff at PP“zeros count positive, poles negative: a zero of order mm is recorded +m+m, a pole of order mm is recorded −m-m, and if there is neither it is 00
σk(n)\sigma_k(n)divisor sumeach of the positive divisors of nn raised to the kk-th power, then added, e.g. σ3(2)=13+23=9\sigma_3(2)=1^3+2^3=9
ζ(k)\zeta(k)Riemann zetaused only to normalize GkG_k into the version with leading term 11, EkE_k
stabilizerstabilizerthose group elements that fix a certain point in place; the stabilizer of ii has order 22, that of ρ\rho order 33
argument principleargument principle12πi∮f′/f dτ\frac1{2\pi i}\oint f'/f\,d\tau counts the number of zeros minus the number of poles inside the contour
X(1)X(1) · X0(p)X_0(p) · X0+(p)X_0^{+}(p)modular curvesthe compact surfaces obtained by taking the quotient of H∗\mathbb{H}^* by the corresponding groups; X0+(p)=X0(p)/wpX_0^{+}(p)=X_0(p)/w_p
wpw_pFricke involutiona transformation of order two that folds X0(p)X_0(p) in half (acting twice returns to where it was)
h(−D)h(-D)class numberhow many equivalence classes of reduced primitive binary quadratic forms of discriminant −D-D there are
genusgenusthe number of “holes” in a surface: a sphere 00, a torus 11
The vertex-operator-algebra / physics side (D / E)
NotationRead asIn one sentence
V♮V^\natural”V natural”♮\natural is the natural sign of musical notation; it takes part in no operation and is purely a proper-name marker
L0L_0 · central charge ccL-zero · central chargethe eigenvalues of L0L_0 give the grading (layer nn); cc is a number that comes with this structure
Tr⁡\operatorname{Tr} · tr⁡(g∣Vn)\operatorname{tr}(g\mid V_n)trace · “the trace of gg restricted to VnV_n“regard gg only as a linear map on layer nn and take the sum of the main diagonal of the matrix
m\mathfrak{m}German blackletter mthe Monster Lie algebra
II1,1\mathrm{II}_{1,1} · II25,1\mathrm{II}_{25,1}even unimodular Lorentzian latticesthe subscripts are the signature (how many plus and minus signs); the former has c=2c=2, the latter c=26c=26
mult⁡(m,n)\operatorname{mult}(m,n)multiplicityhow many linearly independent elements there are in the direction of this root
Aut⁡\operatorname{Aut}automorphism groupall the symmetries that keep the whole structure unchanged
α−nμ∣0⟩\alpha^{\mu}_{-n}\lvert 0\ranglean oscillator acting on the vacuum∣0⟩\lvert 0\rangle is the vacuum state; α−nμ\alpha^\mu_{-n} excites it to a higher layer
C2C_2-cofiniteC-two cofinitea finiteness condition on a VOA, one of the premises of Zhu’s theorem
GKMgeneralized Kac–Moodythe class of infinite-dimensional Lie algebras that Borcherds algebras belong to
DDF · BRSTDDF states · BRSTthe former is a standard construction of the transverse physical states; the latter is an equivalent quantization criterion

Appendix A (full proof) · The jj-function and the modular group acting on the hyperbolic plane

Appendix A (full proof) concept diagram

Appendix A concept diagram · The modular group PSL(2,Z)\mathrm{PSL}(2,\mathbb{Z}) cuts the upper half-plane into congruent tiles: the standard fundamental domain is held between Re z=±12\mathrm{Re}\,z=\pm\tfrac12, its bottom edge is an arc of the unit circle (ii at the top of the arc, ρ\rho at the left corner); the j-function sweeps the whole picture completely once on each tile — the unique principal modular function (hauptmodul) in that position. (Made by this channel · mathematical infographic)

What this section is to do. The main text, §2, says “to understand the coincidence 196884, first understand jj”. Here jj is explained to the bottom: how the modular group PSL(2,Z)\mathrm{PSL}(2,\mathbb{Z}) acts on the hyperbolic plane (the upper half-plane), what its fundamental domain looks like, why jj is modular invariant, and, most important, one sentence — jj is not “some” modular invariant function; it is the unique one in that position (hauptmodul). This sentence is proved to the end with the valence formula. Everything this section covers is classical modular form theory; except for three steps marked as cited, the proofs are all written out.

What each of the four subsections delivers (look at this row before entering any subsection, and you will not lose track of where you are in the middle of a proof):

DeliversWhat the next subsection does with it
A.1how the modular group acts, the two generators SS and TTA.2 uses them to send any point into FF
A.2the fundamental domain FF exists and is (in its interior) unique, plus the two elliptic points i,ρi,\rhoin the valence formula of A.4, what i,ρi,\rho carry, 12,13\tfrac12,\tfrac13, comes from here
A.3jj is modular invariant, and its qq-expansion coefficients can be computed by handA.4 needs only one fact from it: jj has a simple pole at the cusp
A.4j:X(1)→C∪{∞}j:X(1)\to\mathbb{C}\cup\{\infty\} is a bijection ⟹ genus 00, jj is a hauptmodulthe “each complex number is taken exactly once” of §2.4 in the main text, the “principal modular function” of §3

A.1 The action of the modular group (full proof)

The upper half-plane H={τ∈C:Im⁡τ>0}\mathbb{H}=\{\tau\in\mathbb{C}:\operatorname{Im}\tau>0\}. The integer modular group

SL(2,Z)={(abcd):a,b,c,d∈Z, ad−bc=1}\mathrm{SL}(2,\mathbb{Z})=\left\{\begin{pmatrix}a&b\\c&d\end{pmatrix}:a,b,c,d\in\mathbb{Z},\ ad-bc=1\right\}

acts by Möbius transformations: γτ=aτ+bcτ+d\gamma\tau=\dfrac{a\tau+b}{c\tau+d}. The key identity (computed directly):

Im⁡(γτ)=Im⁡τ∣cτ+d∣2>0,\operatorname{Im}(\gamma\tau)=\frac{\operatorname{Im}\tau}{|c\tau+d|^2}>0,

so H\mathbb{H} is indeed preserved. ±I\pm I act trivially, so what actually acts is PSL(2,Z)=SL(2,Z)/{±I}\mathrm{PSL}(2,\mathbb{Z})=\mathrm{SL}(2,\mathbb{Z})/\{\pm I\}. The two generators:

T=(1101):τ↦τ+1,S=(0−110):τ↦−1τ,T=\begin{pmatrix}1&1\\0&1\end{pmatrix}:\tau\mapsto\tau+1,\qquad S=\begin{pmatrix}0&-1\\1&0\end{pmatrix}:\tau\mapsto-\tfrac1\tau,

satisfy S2=1S^2=1, (ST)3=1(ST)^3=1 (in PSL\mathrm{PSL}). ”S,TS,T generate PSL(2,Z)\mathrm{PSL}(2,\mathbb{Z})” is a by-product of the proof about the fundamental domain below.

A.2 The fundamental domain (full proof)

Proposition. F={τ∈H:∣τ∣≥1, ∣Re⁡τ∣≤12}F=\left\{\tau\in\mathbb{H}:|\tau|\ge1,\ |\operatorname{Re}\tau|\le\tfrac12\right\} is a fundamental domain for the action of PSL(2,Z)\mathrm{PSL}(2,\mathbb{Z}): (existence) every orbit meets FF at least once; (uniqueness) two different points in the interior of FF are in different orbits.

Proof. (Existence) Take τ∈H\tau\in\mathbb{H}. On the orbit {γτ}\{\gamma\tau\}, Im⁡(γτ)=Im⁡τ/∣cτ+d∣2\operatorname{Im}(\gamma\tau)=\operatorname{Im}\tau/|c\tau+d|^2; for fixed τ\tau, only finitely many pairs (c,d)(c,d) make ∣cτ+d∣|c\tau+d| smaller than any given bound (cτ+dc\tau+d is a point of the lattice Zτ+Z\mathbb{Z}\tau+\mathbb{Z}, which is discrete), so Im⁡\operatorname{Im} has a maximum on the orbit; call a point attaining it τ′\tau'. Translate by T±1T^{\pm1} so that ∣Re⁡τ′∣≤12|\operatorname{Re}\tau'|\le\tfrac12 (this does not change Im⁡\operatorname{Im}). If ∣τ′∣<1|\tau'|<1, then Im⁡(Sτ′)=Im⁡τ′/∣τ′∣2>Im⁡τ′\operatorname{Im}(S\tau')=\operatorname{Im}\tau'/|\tau'|^2>\operatorname{Im}\tau', contradicting maximality; so ∣τ′∣≥1|\tau'|\ge1, that is, τ′∈F\tau'\in F. (Replace the orbit by the ⟨S,T⟩\langle S,T\rangle-orbit, and the argument holds word for word, so this step also shows that ⟨S,T⟩\langle S,T\rangle can already send any point into FF; combined with uniqueness this gives ⟨S,T⟩=PSL(2,Z)\langle S,T\rangle=\mathrm{PSL}(2,\mathbb{Z}).)

(Uniqueness) Suppose τ,τ′=γτ\tau,\tau'=\gamma\tau are both in FF and γ≠id\gamma\ne\mathrm{id}; without loss of generality Im⁡τ′≥Im⁡τ\operatorname{Im}\tau'\ge\operatorname{Im}\tau, that is, ∣cτ+d∣≤1|c\tau+d|\le1. Since τ∈F\tau\in F we have Im⁡τ≥32\operatorname{Im}\tau\ge\tfrac{\sqrt3}2, and ∣cτ+d∣≥∣c∣Im⁡τ≥∣c∣32|c\tau+d|\ge|c|\operatorname{Im}\tau\ge|c|\tfrac{\sqrt3}2, so ∣c∣≤1|c|\le1. Case by case: when c=0c=0, γ=±Tn\gamma=\pm T^n, and ∣Re⁡∣≤12|\operatorname{Re}|\le\tfrac12 on both sides together allows only n=0n=0 (unless τ\tau is on a vertical boundary Re⁡=±12\operatorname{Re}=\pm\tfrac12, in which case T±1T^{\pm1} glues one vertical edge to the other); when c=±1c=\pm1, ∣cτ+d∣≤1|c\tau+d|\le1 restricts τ\tau to the arc ∣τ∣=1|\tau|=1, and SS glues the left and right halves of the arc to each other. Both kinds happen only on the boundary; the interior of FF is therefore unique point by point. ■\blacksquare

(Elliptic points: ii is fixed by SS, with stabilizer of order 22; ρ=e2πi/3=ei⋅120∘\rho=e^{2\pi i/3}=e^{i\cdot120^\circ} is fixed by STST, with stabilizer of order 33. The stabilizers of the other points are trivial. The “fractional weights” 12,13\tfrac12,\tfrac13 of these two points go straight into the valence formula.)

A small example (sending a concrete point into FF, in three steps). Take τ0=2310+110 i\tau_0=\tfrac{23}{10}+\tfrac{1}{10}\,i (its imaginary part is only 0.10.1, far from FF). Follow the algorithm given by the existence proof above:

  1. T−2T^{-2} (shift left by 22): τ1=310+110 i\tau_1=\tfrac{3}{10}+\tfrac{1}{10}\,i; the real part enters ∣Re⁡∣≤12|\operatorname{Re}|\le\tfrac12;
  2. ∣τ1∣2=9100+1100=110<1|\tau_1|^2=\tfrac{9}{100}+\tfrac{1}{100}=\tfrac1{10}<1, use SS: τ2=−1/τ1=−3+i\tau_2=-1/\tau_1=-3+i. Note that the imaginary part jumps from 110\tfrac1{10} to 11 — exactly the magnifying mechanism Im⁡(Sτ)=Im⁡τ/∣τ∣2\operatorname{Im}(S\tau)=\operatorname{Im}\tau/|\tau|^2 in the proof (here magnifying by a factor of 1010);
  3. T3T^{3} (shift right by 33): τ3=i∈F\tau_3=i\in F — neither more nor less, it lands on the elliptic point ii.

The composite matrix γ=T3ST−2=(3−71−2)\gamma=T^{3}ST^{-2}=\begin{pmatrix}3&-7\\1&-2\end{pmatrix}, det⁡=(3)(−2)−(−7)(1)=1\det=(3)(-2)-(-7)(1)=1; a one-step check: γτ0=3τ0−7τ0−2=−110+310i310+110i=i\gamma\tau_0=\dfrac{3\tau_0-7}{\tau_0-2}=\dfrac{-\tfrac1{10}+\tfrac3{10}i}{\tfrac3{10}+\tfrac1{10}i}=i (already verified with exact fractions, including every intermediate step).

A.3 jj is modular invariant (full proof, via Eisenstein)

The Eisenstein series of weight kk (k≥4k\ge4 even)

Gk(τ)=∑(m,n)≠(0,0)1(mτ+n)k.G_k(\tau)=\sum_{(m,n)\ne(0,0)}\frac1{(m\tau+n)^k}.

Rearranging the summation index by γ∈SL(2,Z)\gamma\in\mathrm{SL}(2,\mathbb{Z}) ((m,n)↦(m,n)γ(m,n)\mapsto(m,n)\gamma is a lattice automorphism) gives directly the weight-kk transformation law

Gk(γτ)=(cτ+d)k Gk(τ).G_k(\gamma\tau)=(c\tau+d)^k\,G_k(\tau).

Normalize Ek=Gk/(2ζ(k))E_k=G_k/(2\zeta(k)); its qq-expansion (q=e2πiτq=e^{2\pi i\tau}) has integer coefficients (cited: Serre VII):

E4=1+240∑n≥1σ3(n)qn,E6=1−504∑n≥1σ5(n)qn.E_4=1+240\sum_{n\ge1}\sigma_3(n)q^n,\qquad E_6=1-504\sum_{n\ge1}\sigma_5(n)q^n.

The discriminant and jj (the second equals sign is the Jacobi product formula, cited: Serre VII):

Δ=E43−E621728=q∏n≥1(1−qn)24,j=E43Δ=1728 E43E43−E62.\Delta=\frac{E_4^3-E_6^2}{1728}=q\prod_{n\ge1}(1-q^n)^{24},\qquad j=\frac{E_4^3}{\Delta}=1728\,\frac{E_4^3}{E_4^3-E_6^2}.

Δ\Delta is a cusp form of weight 1212; ∏(1−qn)24\prod(1-q^n)^{24} is nonzero everywhere on H\mathbb{H} (every factor is nonzero, and when ∣q∣<1|q|<1, ∑n∣q∣n\sum_n|q|^n converges, so this infinite product converges to a nonzero value), and it has a simple zero at the cusp q=0q=0. So j=E43/Δj=E_4^3/\Delta: the numerator has weight 1212, the denominator has weight 1212, and the quotient has weight 00 — that is, j(γτ)=j(τ)j(\gamma\tau)=j(\tau), jj is a modular invariant function; it is holomorphic on H\mathbb{H} (Δ≠0\Delta\ne0), and has a simple pole at the cusp (the simple zero of Δ\Delta, E43→1E_4^3\to1). ■\blacksquare

A small example (multiplying out 744744 and 196884196884 by hand). The main text, §2, says ”744744 is computed from the Eisenstein series” — this computation uses only the two lines of expansion above, and can be completed by hand going up to q2q^2. The numerator:

E4=1+240q+2160q2+⋯ ⟹ E43=1+720 q+179280 q2+⋯E_4=1+240q+2160q^2+\cdots\ \Longrightarrow\ E_4^3=1+720\,q+179280\,q^2+\cdots

([q][q]: 3×240=7203\times240=720; [q2][q^2]: 3×2160+3×2402=6480+172800=1792803\times2160+3\times240^2=6480+172800=179280. Here 2160=240 σ3(2)=240×92160=240\,\sigma_3(2)=240\times9.) The reciprocal of the denominator:

1∏n≥1(1−qn)24=1+24 q+324 q2+⋯\frac1{\prod_{n\ge1}(1-q^n)^{24}}=1+24\,q+324\,q^2+\cdots

(Counting by ∏(1+qn+q2n+⋯ )24\prod(1+q^n+q^{2n}+\cdots)^{24}: for [q][q] take one copy of q1q^1, 2424 ways; for [q2][q^2] take two copies of q1q^1 ((242)+24=300\binom{24}{2}+24=300 ways) or one copy of q2q^2 (2424 ways), 324324 in all.) Multiply the two strings and multiply the whole by q−1q^{-1}:

c(0)=720+24=744,c(1)=179280+720×24+324=179280+17280+324=196884.c(0)=720+24=\mathbf{744},\qquad c(1)=179280+720\times24+324=179280+17280+324=\mathbf{196884}.

744744 was not picked by anyone; it is 720+24720+24. The higher terms the same way (the intermediate coefficients 720/179280/24/324720/179280/24/324 and the totals were all checked by program):

 j=q−1+744+196884 q+21493760 q2+864299970 q3+⋯ \boxed{\,j=q^{-1}+744+196884\,q+21493760\,q^2+864299970\,q^3+\cdots\,}

A.4 jj is a hauptmodul (full proof, valence formula)

Take the quotient of H\mathbb{H} by PSL(2,Z)\mathrm{PSL}(2,\mathbb{Z}) and add the cusp ∞\infty, and we get the modular curve X(1)=H∗/PSL(2,Z)X(1)=\mathbb{H}^*/\mathrm{PSL}(2,\mathbb{Z}). What is to be proved is:

Theorem. j:X(1)→C∪{∞}j:X(1)\to\mathbb{C}\cup\{\infty\} is a bijection (the cusp corresponding to ∞\infty). Equivalently: X(1)X(1) has genus 00, and jj is its hauptmodul (a single generator, field of modular functions =C(j)=\mathbb{C}(j)).

The tool is the valence formula (the k/12k/12 formula). For a modular form of weight kk, meromorphic on H\mathbb{H} and at the cusp, f≢0f\not\equiv0,

ord⁡∞f+12ord⁡if+13ord⁡ρf+∑P≠i,ρord⁡Pf=k12.\operatorname{ord}_\infty f+\tfrac12\operatorname{ord}_i f+\tfrac13\operatorname{ord}_\rho f+\sum_{P\ne i,\rho}\operatorname{ord}_P f=\frac{k}{12}.

The PP in the sum ranges over the equivalence classes of points of H\mathbb{H} under the action of the modular group (except the two classes of ii and ρ\rho), each class counted only once: points on the boundary of FF glued together by TT, SS count as the same one, and ρ+1\rho+1 and ρ\rho are also the same class. How to read it: the left end is the total amount of zeros (counted with discounts at i,ρi,\rho); the right end is determined only by the weight kk. In other words, how many zeros a modular form can have is decided by its weight — this is why jj below can only be a bijection.

First look at how this formula is used, with three examples (the Δ\Delta row uses the conclusion of A.3; the proofs of E4(ρ)=0E_4(\rho)=0 and E6(i)=0E_6(i)=0 are in the small example below and use only the transformation law):

ffweight kkalready knownleft endk/12k/12
Δ\Delta1212simple zero at the cusp, nonzero everywhere on H\mathbb{H} (A.3)1112/12=112/12=1 ✓
E4E_444E4(ρ)=0E_4(\rho)=0 (small example below), that is, ord⁡ρE4≥1\operatorname{ord}_\rho E_4\ge1at least 13\tfrac134/12=134/12=\tfrac13
E6E_666E6(i)=0E_6(i)=0 (small example below), that is, ord⁡iE6≥1\operatorname{ord}_i E_6\ge1at least 12\tfrac126/12=126/12=\tfrac12

The first row is a check: both sides are 11. The last two rows, however, use the formula to derive new information: E4E_4, E6E_6 are holomorphic on H\mathbb{H} and at the cusp, so every term on the left end is not less than 00; since 13ord⁡ρE4\tfrac13\operatorname{ord}_\rho E_4 is at least 13\tfrac13 and already uses up the 4/124/12, the zero of E4E_4 at ρ\rho must be a simple zero, and it has no other zeros in FF — this was not looked up; it is pinned down by this formula. (For contrast: if E4E_4 had a zero of order two at ρ\rho, the left end would be 23≠13\tfrac23\ne\tfrac13, and the formula would fail on the spot.)

Proof (the valence formula, compact contour version). Integrate 12πi∮∂Ff′(τ)f(τ) dτ\dfrac1{2\pi i}\displaystyle\oint_{\partial F}\dfrac{f'(\tau)}{f(\tau)}\,d\tau, the contour taken as the boundary of FF: along the arc ∣τ∣=1|\tau|=1 at the bottom, the vertical edges Re⁡=±12\operatorname{Re}=\pm\tfrac12 on the two sides, a high cut line at the top, with small notches made to go around i,ρ,ρ+1i,\rho,\rho+1 and the cusp. The argument principle computes the left end as the sum of zeros and poles in the interior of FF, ∑P≠i,ρord⁡Pf\sum_{P\ne i,\rho}\operatorname{ord}_P f. The pieces of the boundary cancel in pairs: the two vertical edges are glued by TT and their contributions cancel; the left and right halves of the arc are glued by SS, SS makes f↦(cτ+d)kff\mapsto(c\tau+d)^k f, and the extra dlog⁡(cτ+d)k2πi\dfrac{d\log(c\tau+d)^k}{2\pi i} integrates along the arc to k12\dfrac k{12}; the top cut line gives the cusp term −ord⁡∞f-\operatorname{ord}_\infty f (q=e2πiτq=e^{2\pi i\tau}, and τ→i∞\tau\to i\infty corresponds to going once around q=0q=0); the central angles of the three small notches: at ii, π\pi; at ρ\rho and ρ+1\rho+1, π3\tfrac\pi3 each, 2π3\tfrac{2\pi}3 in total, contributing −12ord⁡if,−13ord⁡ρf-\tfrac12\operatorname{ord}_i f,-\tfrac13\operatorname{ord}_\rho f respectively. Combining gives the formula. ■\blacksquare (This step is cited: the notch angle amounts at i,ρi,\rho, π/2π3\pi/\tfrac{2\pi}3, come from these two points being folded by the stabilizers Z/2,Z/3\mathbb{Z}/2,\mathbb{Z}/3; the segment-by-segment accounting of angles in this step would take up half a page if expanded, so here the conclusion is stated and Serre’s A Course in Arithmetic VII §3 / Apostol Ch. 2 are cited; all the other steps of this proof are written out above.)

Proof (jj is a bijection, using valence). Take c∈Cc\in\mathbb{C} and look at f=j−cf=j-c. It has weight k=0k=0, is holomorphic on H\mathbb{H}, and has a simple pole at the cusp (coming from jj‘s q−1q^{-1}), that is, ord⁡∞(j−c)=−1\operatorname{ord}_\infty(j-c)=-1. Substitute into valence (k=0k=0):

−1+12ord⁡i(j−c)+13ord⁡ρ(j−c)+∑P≠i,ρord⁡P(j−c)=0.-1+\tfrac12\operatorname{ord}_i(j-c)+\tfrac13\operatorname{ord}_\rho(j-c)+\sum_{P\ne i,\rho}\operatorname{ord}_P(j-c)=0.

The right end is 00 and ord⁡∞=−1\operatorname{ord}_\infty=-1, so the total amount of zeros in the interior of FF (with the weights at i,ρi,\rho) is exactly +1+1. Since jj is holomorphic and all ord⁡P(j−c)≥0\operatorname{ord}_P(j-c)\ge0, this “total of 11” can only be realized by exactly one ordinary zero (weight 11), or a zero of order two at ii (weight 12⋅2\tfrac12\cdot2), or a zero of order three at ρ\rho (weight 13⋅3\tfrac13\cdot3) — whichever it is, jj, in FF, takes the value cc exactly once. cc is arbitrary, so j:X(1)→C∪{∞}j:X(1)\to\mathbb{C}\cup\{\infty\} is both injective and surjective (the cusp corresponding to ∞\infty). ■\blacksquare

Corollary: X(1)X(1) has genus 00; every modular function is a rational function of jj (field of modular functions =C(j)=\mathbb{C}(j)) — jj is a hauptmodul. This is exactly the precise meaning of ”jj is the most natural one in that position”.

Proof (of the corollary, using only the valence formula proved above). Let ff have weight 00, be modular invariant, and be meromorphic on H\mathbb{H} and at the cusp. ff has only finitely many poles in the fundamental domain (near the cusp this is controlled by “meromorphic at the cusp”, and in the remaining part the poles have no accumulation point); let jj take the values c1,…,cmc_1,\dots,c_m at these poles. Take nkn_k large enough; then g=f⋅∏k(j−ck)nkg=f\cdot\prod_k(j-c_k)^{n_k} is holomorphic on H\mathbb{H} (by the theorem above, j−ckj-c_k is zero exactly at the corresponding pole, and multiplying enough times cancels it; overdoing it only adds zeros, which is harmless). gg has at most a pole of finite order at the cusp: since j=q−1+⋯j=q^{-1}+\cdots, powers of jj can match the principal part at the cusp order by order, so there exists a polynomial PP such that h=g−P(j)h=g-P(j) is also holomorphic at the cusp. If hh is not constant, take any τ0\tau_0: h−h(τ0)≢0h-h(\tau_0)\not\equiv0 is holomorphic everywhere (including the cusp) and has a zero at τ0\tau_0 — substitute into the valence formula (k=0k=0, the right end is 00): every term on the left end is ≥0\ge0 and at least one term is >0>0, a contradiction. So hh is constant, g∈C[j]g\in\mathbb{C}[j], and f=g/∏k(j−ck)nk∈C(j)f=g/\prod_k(j-c_k)^{n_k}\in\mathbb{C}(j). ■\blacksquare

(Along the way, prove that sentence of §2 in the main text, “adding or subtracting in the constant term does no harm”: the translation w↦w−744w\mapsto w-744 is an automorphism of C\mathbb{C}; jj a bijection ⇒j−744\Rightarrow j-744 a bijection, C(j)=C(j−744)\mathbb{C}(j)=\mathbb{C}(j-744) — J=j−744J=j-744 is likewise a hauptmodul.)

The boundary of the general case. The main text, §3, says that every McKay–Thompson series is the principal modular function of some genus-0 group. This statement, used for a general group Γg\Gamma_g, uses the classical correspondence for compact Riemann surfaces — the quotient surface has genus 00 ⟺ the function field is generated by a single function (≅C(t)\cong\mathbb{C}(t)). The general case needs machinery at the level of Riemann–Roch, beyond the scale of this episode, and is cited, not proved (a standard textbook result on Riemann surfaces). What this section proves in full is the key instance Γ=PSL(2,Z)\Gamma=\mathrm{PSL}(2,\mathbb{Z}) (the theorem + corollary above), that is, the most important stop of this correspondence in moonshine.

A small example (two anchor values: j(i)=1728j(i)=1728, j(ρ)=0j(\rho)=0 — the elliptic points of A.2 connect up here).

The two values were additionally checked numerically by program (the qq-series summed at q=e−2πq=e^{-2\pi} and q=−e−π3q=-e^{-\pi\sqrt3} respectively, truncation error <10−6<10^{-6}). On one picture three things line up at these two points: the fixed points of A.2, the fractional weights of valence, and jj‘s anchor values 17281728 and 00.

What in this section is proved and what is cited: the formula for Im⁡(γτ)\operatorname{Im}(\gamma\tau), S2=(ST)3=1S^2=(ST)^3=1 (in PSL\mathrm{PSL}), the existence and uniqueness of the fundamental domain — the proofs are all above. The coefficients of E4,E6,Δ,jE_4,E_6,\Delta,j in their qq-expansions were computed independently by program from the Eisenstein series, and the two ways of writing Δ\Delta, q∏(1−qn)24q\prod(1-q^n)^{24} and (E43−E62)/1728(E_4^3-E_6^2)/1728, agree term by term (this is a check of finitely many terms, not a proof). This article does not prove, and cites directly, three things in total: EkE_k‘s qq-expansion, the Jacobi product Δ=q∏(1−qn)24\Delta=q\prod(1-q^n)^{24}, and the step of the angle amounts at i,ρi,\rho in the valence formula, all found in Chapter VII of Serre’s A Course in Arithmetic. The three small examples were also checked by program: the matrix that moves the point, γ=(3−71−2)\gamma=\begin{pmatrix}3&-7\\1&-2\end{pmatrix}, verified with exact fractions (including every intermediate step and det⁡=1\det=1); the hand-multiplied intermediate coefficients 720/179280/24/324720/179280/24/324 and the decompositions of 744744 and 196884196884; the numerical values j(i)=1728j(i)=1728, j(ρ)=0j(\rho)=0 (series taken to 1212 terms, error less than 10−610^{-6}).


Appendix B (full proof, continuing EP7 Appendix B) · The moonshine arithmetic identities

Appendix B (full-proof concept diagram

Appendix B concept diagram · The comparison table of the moonshine arithmetic identities: on one side the coefficients of the j-function (computed independently from Eisenstein), on the other side additions of dimensions of Monster representations; the first three match term by term (starting from 196884=1+196883196884=1+196883); from the fourth on, ATLAS is cited — the ceiling of what can be checked independently is drawn on the diagram. (Made by this channel · mathematical infographic)

What this section is to do. The main text, §1, says that McKay’s coincidence is not only the first term: every coefficient of the expansion of jj is a simple combination of irreducible dimensions of the Monster. Here this sentence is made concrete as arithmetic, continuing the moonshine identities of EP7 Appendix B. The numbers on the two sides come from different places: the coefficients of jj are computed independently from the Eisenstein series (in the same way as Appendix A.3), and the dimensions of the Monster are taken from ATLAS. The two strings of numbers each have their own source, and only if they match does it count as mutual corroboration; if both sides came from the same data, a match would show nothing.

Write j=q−1+744+∑n≥1c(n)qnj=q^{-1}+744+\sum_{n\ge1}c(n)q^n. The first few irreducible dimensions of the Monster (ATLAS / OEIS A001379):

d1=1,d2=196883,d3=21296876,d4=842609326,d5=18538750076, …d_1=1,\quad d_2=196883,\quad d_3=21296876,\quad d_4=842609326,\quad d_5=18538750076,\ \dots

The three checked independently:

c(1)=196884=d1+d2=1+196883,c(1)=196884=d_1+d_2=1+196883, c(2)=21493760=d1+d2+d3=1+196883+21296876,c(2)=21493760=d_1+d_2+d_3=1+196883+21296876, c(3)=864299970=2d1+2d2+d3+d4=2⋅1+2⋅196883+21296876+842609326.c(3)=864299970=2d_1+2d_2+d_3+d_4=2\cdot1+2\cdot196883+21296876+842609326.

The left end of each (the jj coefficient) is computed independently from E43/ΔE_4^3/\Delta, the right end (the combination of dimensions) uses the first 4 dimensions, and the two sides are equal. (How these coefficients on the left end are multiplied out by hand, see the small example in Appendix A.3 — c(0)c(0), c(1)c(1) are computed term by term in full there; the job of this section is only one thing: to collide them with the Monster’s dimensions.)

What can be checked independently goes only up to the 3rd one. From c(4)=20245856256c(4)=20245856256 on, the decomposition needs more irreducible dimensions, and the multiplicities are no longer something one can guess at a glance. Try a combination at random, 3d1+2d2+2d4+d53d_1+2d_2+2d_4+d_5, and you get 2022436249720224362497, which does not match; the one that matches is 3d1+3d2+d3+2d4+d53d_1+3d_2+d_3+2d_4+d_5, and this set of multiplicities can only be known by looking up ATLAS or the published layer-by-layer decomposition of V♮V^\natural. So:

EP7 Appendix B said “the first four dimensions have independent corroboration”, and here we say “the first three identities”; it is the same thing: what the three identities use is exactly the first four dimensions d1,…,d4d_1,\dots,d_4. (The meaning of these combinations — they are the decompositions of the layers of the moonshine module V♮V^\natural into irreducible representations of the Monster — belongs to Appendix D; this appendix deals only with the arithmetic.)

What in this section is computed and what is cited: c(−1)c(-1) to c(5)c(5), that is, 1,744,196884,21493760,864299970,20245856256,3332026406001,744,196884,21493760,864299970,20245856256,333202640600, were computed independently by program from the Eisenstein series; that the two sides of the three identities are equal has been checked. The dimensions of the Monster are taken from ATLAS / OEIS A001379, and this article did not recompute them.


Appendix C (checkable + cited) · Supersingular primes and Ogg’s observation

Appendix C (checkable + cited) concept diagram

Appendix C concept diagram · Two lists, each computed on its own: the 15 primes dividing ∣M∣|M| (the group-theory side) and the supersingular primes (the number-theory side, X0+(p)X_0^+(p) of genus zero) are identical to the letter; the solid arrow is the proved direction (divides ∣M∣⇒|M|\Rightarrow supersingular), and the reverse direction has to this day no conceptual explanation — that bottle of Jack Daniel’s is still unclaimed. (Made by this channel · mathematical infographic)

What this section is to do. The main text, §3, says: nearly four years before McKay (1975), Ogg had come upon the other half of the riddle — the 15 primes dividing ∣M∣|M| are exactly the “supersingular primes” of number theory. Here the checkable part is checked to the bottom (the list, the product), the uncheckable part is cited honestly, and this “unsolved” item is clearly distinguished from the “unsolved” item of D/E in this episode — they are two different things.

Checkable (checked): ∣M∣=2463205976112133⋅17⋅19⋅23⋅29⋅31⋅41⋅47⋅59⋅71|M|=2^{46}3^{20}5^{9}7^{6}11^{2}13^{3}\cdot17\cdot19\cdot23\cdot29\cdot31\cdot41\cdot47\cdot59\cdot71, and its 15 prime factors are

{2,3,5,7,11,13,17,19,23,29,31,41,47,59,71},\{2,3,5,7,11,13,17,19,23,29,31,41,47,59,71\},

the largest three 47,59,7147,59,71, with product 47⋅59⋅71=19688347\cdot59\cdot71=196883 (the crux of EP7 §2). This step is pure arithmetic, checkable.

Statement + citation (Ogg 1975): these 15 primes are exactly the “supersingular primes” — that is, for which the modular curve X0+(p)=X0(p)/wpX_0^+(p)=X_0(p)/w_p (wpw_p being the Fricke involution) has genus 00, those primes pp. Ogg counted out these 15 independently from the side of modular curves, compared them, and found them identical to the letter with the list “divides the order of the Monster”; he offered a bottle of Jack Daniel’s as a reward for an explanation. The proof of the genus-0 classification of X0+(p)X_0^+(p) = cite Ogg 1975 (this episode does not rebuild it).

Where the name comes from (cited): “supersingular” comes from supersingular elliptic curves — a class of exceptionally special elliptic curves in the world of characteristic pp (no pp-torsion points, an anomalously large endomorphism ring). A prime pp is “supersingular” in the moonshine sense, by the original definition, if: in characteristic pp, all the supersingular jj-invariants fall in the prime field Fp\mathbb{F}_p; Ogg 1975 proved that this is equivalent to ”X0+(p)X_0^+(p) has genus 00” — and this appendix uses throughout exactly the latter (computable) characterization. The equivalence of the two statements = cite Ogg 1975, not reproved.

A small example (one stop inside the list and one outside). p=11p=11 (on the list): X0(11)X_0(11) itself has genus 11, and after taking the quotient by the Fricke involution, X0+(11)X_0^+(11) has genus 00 — “supersingular” looks at the genus after the quotient. p=37p=37 (the first prime not on the list — the list jumps directly from 3131 to 4141): X0+(37)X_0^+(37) has genus 1≠01\ne0, and at the same time 37∤∣M∣37\nmid|M| (verified by direct division) — at the first prime where the two lists have a chance to diverge, they give “not on it” in step. The two genus values are cited from Ogg’s 1975 table; this article additionally rechecked them with Riemann–Hurwitz: for the involution quotient 2g−2=2(2g+−2)+f2g-2=2(2g^+-2)+f, the number of fixed points ff is taken from the class number formula (when p≡3 mod 4p\equiv3\bmod4, f=h(−4p)+h(−p)f=h(-4p)+h(-p); when p≡1 mod 4p\equiv1\bmod4, f=h(−4p)f=h(-4p); p>3p>3; formula cited), and the class numbers h(−11)=1h(-11)=1, h(−44)=3h(-44)=3, h(−148)=2h(-148)=2 are computed by counting reduced primitive quadratic forms — substituting gives g+(11)=0g^+(11)=0, g+(37)=1g^+(37)=1, consistent with the cited values (at the stop 1111 the answer is known to be 00, and it is also used to test this algorithm itself).

A full recomputation. The method above need not stop at two stops: for primes p≥5p\ge5, g(X0(p))g(X_0(p)) has a closed formula according to p mod 4p\bmod 4 and p mod 3p\bmod 3 (cited; the two stops 1111 and 3737 reproduced the values in Ogg’s table), ff is given by class numbers (class numbers still computed by ourselves), and Riemann–Hurwitz gives g+(p)g^+(p) immediately. This article used a program, for all 44 primes with 5≤p<2005\le p<200, to compute g+g^+ one by one: all 13 primes p≥5p\ge5 on the list have g+=0g^+=0, and all the others have g+≥1g^+\ge1, without a single exception — Ogg’s classification in this range is recomputed and rechecked by this article, no longer only cited. (The two ends p=2,3p=2,3 and the tail p≥200p\ge200 are still cited from Ogg 1975 to complete it; a rough intuition: the genus term grows linearly like ∼p\sim p, the class number term grows only like ∼p\sim\sqrt p, so the list will not come back to life far away — this sentence is intuition, not to be used as a proof.) To confirm that this algorithm really is testing something, two controls were done: the two stops 1111 and 3737 reproduced the values in Ogg’s table; and when, for p≡3 mod 4p\equiv3\bmod4, the h(−p)h(-p) term was deliberately left out, 23 of the 44 primes went wrong immediately (g+g^+ no longer an integer, or the classification changed).

The boundary of this section. “The two lists are equal” is a checkable fact (both sides can be computed). Moonshine proved one direction: every prime dividing ∣M∣|M| is on Ogg’s list (Monster → genus-0, the Borcherds direction); but the other way round — why every prime on Ogg’s list really divides ∣M∣|M|, why the prime factors of the Monster happen to reach exactly up to 7171 — there is no conceptual proof, and that bottle has still not been cleanly claimed by anyone. (That the list itself stops at 7171 is not an open case: for p>71p>71 the genus of X0+(p)X_0^+(p) is nonzero, settled by Ogg 1975, and the small example of 3737 above is a sample from outside the list; the proved direction also guarantees only that the prime factors of the Monster are ≤71\le 71, and what hangs open is that they reach exactly the end 7171.) Note: this “unsolved” item is Ogg’s prime coincidence (one number-theoretic direction not closed up), and it is a different matter from the “unsolved” item of Appendices D/E (the genus-0 property of moonshine has been proved by Borcherds, only without a conceptual explanation).

What in this section is computed and what is cited: the product of the prime factors of ∣M∣|M| is a 54-digit decimal number, consistent with ATLAS; the 15 prime factors, the largest three 47,59,7147,59,71, 47⋅59⋅71=19688347\cdot59\cdot71=196883, 37∤∣M∣37\nmid|M|, were all checked by program. The class numbers h(−11),h(−44),h(−148)=1,3,2h(-11),h(-44),h(-148)=1,3,2 were obtained by counting reduced primitive quadratic forms, and substituting into Riemann–Hurwitz gives g+(11)=0g^+(11)=0, g+(37)=1g^+(37)=1. All 44 primes with 5≤p<2005\le p<200 were recomputed: the 13 on the list have g+=0g^+=0, and all the others are ≥1\ge1. Cited and not reproved: the genus formula for X0(p)X_0(p), the formula for the fixed points of the Fricke involution, g(X0(11))=1g(X_0(11))=1 and g(X0(37))=2g(X_0(37))=2, Ogg 1975’s classification for p=2,3p=2,3 and p≥200p\ge200, and the equivalence of the two definitions of “supersingular”.


Appendix D (concepts + cited, not rebuilt) · Vertex operator algebras and the skeleton of Borcherds’s proof

Appendix D (concepts + cited, not rebuilt) concept diagram

Appendix D concept diagram · From the moonshine module to the theorem: V♮V^\natural (symmetry group = the Monster, layer-by-layer dimensions = JJ), via Borcherds’s Monster Lie algebra and the no-ghost theorem, reaches the complete proof of 1992 — the 194 conjugacy classes of the Monster give 171 different McKay–Thompson series, every one genus 0. (Made by this channel · mathematical infographic)

What this section is to do. The main text, §4, says that Frenkel–Lepowsky–Meurman built the “moonshine module” V♮V^\natural, and Borcherds used it to prove the whole conjecture. Here the skeleton of the proof + its honest boundary are given — this is the only peak in the whole series where “a proof exists, but it cannot be rebuilt in a blog”: Borcherds’s 1992 machinery is Fields Medal work. This appendix only states the structure and points out the key theorems, marking each one clearly as “cited, not rebuilt”, and does not do any formula-by-formula derivation. The main statements were compared against the original literature; which ones were only checked at the level of secondary citation is marked item by item in the sources.

D.1 What a VOA is (semi-formal intuition)

A vertex operator algebra (VOA) is the mathematical axiomatization of 2D chiral conformal field theory: a Z≥0\mathbb{Z}_{\ge0}-graded vector space V=⨁nVnV=\bigoplus_n V_n, each state a∈Va\in V paired with a “vertex operator” Y(a,z)=∑a(k)z−k−1Y(a,z)=\sum a_{(k)}z^{-k-1} (a formal power series), satisfying axioms such as vacuum, translation, and locality (z,wz,w commuting up to higher order); a Virasoro element ω\omega gives LnL_n and the central charge cc, and L0L_0 gives the grading. It is exactly the rigorous version of the “operator product expansion” of strings/CFT (Appendix E tells it again from the physics side).

D.2 The moonshine module V♮V^\natural (FLM 1988, stated, not rebuilt)

This step is the “starting point” of the whole chain. It delivers a concrete object, plus three properties that everything downstream needs: central charge c=24c=24 (deciding how much has to be added later to make up 2626) · automorphism group == the Monster (bringing the “group” in) · layer-by-layer dimensions =J=J (bringing “the coefficients of jj” in). Without this step, Borcherds would have nowhere to start; but it itself proves nothing about TgT_g — it only puts two things into the same object, and why the conjecture holds remains completely unanswered.

V♮=(VΛ)θ⊕(VΛT)θV^\natural=(V_\Lambda)^\theta\oplus(V_\Lambda^T)^\theta

— the θ\theta-invariant subspace of the untwisted part ⊕\oplus the θ\theta-invariant subspace of the unique irreducible θ\theta-twisted module. (⚠ The orbifold is not as simple as “divide by Z/2\mathbb{Z}/2”: one must both project onto the θ\theta-invariants and attach the twisted sector; taking only the invariant subalgebra (VΛ)θ(V_\Lambda)^\theta is not V♮V^\natural.)

D.3 The Borcherds skeleton (1992, stated, not rebuilt)

This step is responsible for the whole stretch “from the object to the theorem”. What each of the five steps does is laid out first, before looking at the details — when reading, look at what each step delivers, not what it is called:

StepWhat this step does
① Build m\mathfrak{m}turn V♮V^\natural into something with a root system, so that “coefficients” have a chance to become “multiplicities”
② no-ghostthe only step that really computes the multiplicities: mult⁡(m,n)=c(mn)\operatorname{mult}(m,n)=c(mn). The only physics theorem in the whole chain
③ GKM identificationmakes step ④ eligible to be written down — not every Lie algebra has a denominator identity
④ Denominator identitytranslates the algebraic structure into a product formula for jj; only the “twisted” versions give all the TgT_g, the untwisted one recovers only JJ itself
⑤ Closing upcompresses infinitely many coefficient relations into one finite check

⟹ Only ② is a physics theorem, only ④ really touches moonshine itself, and ⑤ is the source of “the proof holds but is not transparent” (the honest boundary of D.4 comes exactly from this step).

  1. The Monster Lie algebra m\mathfrak{m} = the physical states of the vertex algebra of central charge c=24+2=26c=24+2=26, V♮⊗VII1,1V^\natural\otimes V_{\mathrm{II}_{1,1}} (VII1,1V_{\mathrm{II}_{1,1}} is the lattice VOA of the even unimodular Lorentzian lattice II1,1\mathrm{II}_{1,1}, c=2c=2). ⚠ One place easy to get wrong: m\mathfrak{m} is built on V♮⊗VII1,1V^\natural\otimes V_{\mathrm{II}_{1,1}}, not the Leech route VII25,1=VΛ⊗VII1,1V_{\mathrm{II}_{25,1}}=V_\Lambda\otimes V_{\mathrm{II}_{1,1}} — the latter gives another algebra (the “fake Monster Lie algebra”, Borcherds 1990, multiplicities p24(1−r2/2)p_{24}(1-r^2/2)), and the two are not the same object.

  2. no-ghost (Goddard–Thorn) ⟹ root multiplicities: the theorem identifies the physical states of momentum r=(m,n)≠0r=(m,n)\ne0 with a single graded layer of V♮V^\natural — and it is an isomorphism of Monster modules, not just equality of dimensions — so the root multiplicity is mult⁡(m,n)=dim⁡V1+mn♮=c(mn)\operatorname{mult}(m,n)=\dim V^\natural_{1+mn}=c(mn) (J=∑c(n)qnJ=\sum c(n)q^n). Equivariantly, Tr⁡(g∣Vn♮)\operatorname{Tr}(g\mid V^\natural_n) (g∈Mg\in M) become twisted root multiplicities. (Grading convention: V1+mn♮V^\natural_{1+mn} uses L0L_0, Vmn♮V^\natural_{mn} uses L0−c/24L_0-c/24; they differ by c/24=1c/24=1, and the multiplicity is c(mn)c(mn) in both — this article uniformly uses the L0L_0 subscript.)

    A small example (putting two concrete numbers into the machine). (a) Take the root (m,n)=(1,1)(m,n)=(1,1): mult⁡(1,1)=c(1⋅1)=196884=dim⁡V2♮\operatorname{mult}(1,1)=c(1\cdot1)=196884=\dim V^\natural_2 — exactly that layer of D.2, the Griess algebra ⊕ Cω\oplus\,\mathbb{C}\omega. The same 196884196884; this is the third identity this episode gives it: the left side of McKay’s equation, JJ‘s q1q^1 coefficient, the multiplicity of a root of the Monster Lie algebra. (b) The first non-trivial coefficient relation given at the lowest order by the denominator identity (item 4 below) is

    c(4)=c(3)+(c(1)2)numerically:  20245856256=864299970+196884×1968832=864299970+19381556286. ✓c(4)=c(3)+\binom{c(1)}{2}\qquad\text{numerically: }\ 20245856256=864299970+\frac{196884\times196883}{2}=864299970+19381556286.\ \checkmark

    (This relation is obtained by comparing coefficients in the product formula of item 4 below; the derivation is not redone here; for jj, recurrences of this kind were first found by Mahler (according to Borcherds 1992 §9). The numerical values on both sides have been substituted with the c(n)c(n) computed independently by program from the Eisenstein series, and the equation holds.) This is exactly complementary to the boundary line of Appendix B: the identities govern the relations between coefficients and coefficients; how the coefficients decompose into Monster representations (what the multiplicities are) is the matter of “from c(4)c(4) on, ATLAS must be looked up”. These are two matters.

  3. m\mathfrak{m} is a generalized (Borcherds–) Kac–Moody algebra (one real simple root of norm 22 + infinitely many imaginary simple roots). ⚠ m\mathfrak{m} is an ordinary Lie algebra, not a Lie superalgebra — the “superalgebras” in the title of Borcherds’s paper refers to an auxiliary family of superalgebras, whose exterior-power (super) homology produces the twisted identities.

  4. The denominator identity: the Weyl–Kac–Borcherds denominator identity of m\mathfrak{m} is exactly the Koike–Norton–Zagier product

    j(σ)−j(τ)=p−1∏m>0, n∈Z(1−pmqn)c(mn)(p=e2πiσ).j(\sigma)-j(\tau)=p^{-1}\prod_{m>0,\,n\in\mathbb{Z}}(1-p^mq^n)^{c(mn)}\qquad(p=e^{2\pi i\sigma}).

    (The pp here is only shorthand for e2πiσe^{2\pi i\sigma}, and has nothing to do with the pp denoting a prime in Appendix C.) ⚠ Note: this untwisted identity gives only g=1g=1 (recovering JJ itself). The “twisted” denominator identities, one for each conjugacy class (equivariant graded traces, one per class), are what give all the TgT_g — “twisting” is the key, not a footnote. How the three names relate: the product formula is the one for g=1g=1; writing one for each gg gives the twisted denominator identities; the coefficient relations they give are the same set as the replication identities that Norton proposed in 1984 for the functions in the Conway–Norton table (Borcherds 1992 §8).

  5. Closing up: complete replicability determines each TgT_g uniquely by its (together with the various powers of gg) first 55 coefficients, and then a finite computer check against the functions assigned by Conway–Norton proves that TgT_g = the genus-0 hauptmodul on the list. Fields Medal, 1998.

D.4 The honest boundary (D)

Genus 0 is proved (not open) — the 194 conjugacy classes of the Monster give 171 different McKay–Thompson series, and each one is proved to equal a genus-0 hauptmodul. But Borcherds closed up by a finite check of coefficients, and gave no conceptual reason for “why genus 0” — Gannon calls it “a computer check — as opposed to a general conceptual argument” (the conceptual gap). Cummins–Gannon (1997, Invent. Math. 129) technically filled in that check with “modular equations ⟹ complete replicability ⟹ hauptmodul”, but that is still a technical theorem, not a transparent principle. The proof exists; the transparent “why” is not there.

Results in this section cited and not reproved: (a) the Goddard–Thorn no-ghost theorem (Goddard–Thorn 1972 / Borcherds’s VOA version); (b) FLM’s construction of V♮V^\natural (FLM 1988); (c) that m\mathfrak{m} satisfies the GKM identification axioms (Borcherds); (d) the Koike–Norton–Zagier product formula; (e) the Lie algebra homology / Adams operation derivation of the twisted identities (Borcherds §8–10, Jurisich); (f) that a Thompson series is uniquely determined by its first 5 coefficients (together with the various powers of gg) + the finite check (Borcherds; Cummins–Gannon 1997); (g) the hauptmodul list of Conway–Norton 1979. For each of the items above, this article only states it and gives its source.


Appendix E (conceptual picture) · The string-theory picture

Appendix E (conceptual picture) concept diagram

Appendix E concept diagram · The string-theory picture: 24 transverse dimensions compactified on the Leech lattice torus (uniquely rootless ⟹ layer 1 is empty ⟹ the symmetry group can only be finite), and the partition function is exactly J=j−744J=j-744; the modular invariance of the worldsheet torus answers the half “why a modular function”. (Made by this channel · mathematical infographic)

What this section is to do. This is the part of this episode for readers with a theoretical-physics background. It is about physical concepts, not the history of string theory. The goal: to state ”V♮V^\natural is not an algebra out of thin air — it is a string theory” to a precision that can stand up to a physicist’s nitpicking. The main statements were compared against the original literature (Polchinski / GSW / FLM / Borcherds / Goddard–Thorn / Gannon; which ones were only checked at the level of secondary citation is marked item by item in the sources). Throughout, conceptual statements + key formulas, not formula-by-formula derivation.

What each of the five subsections delivers:

DeliversKey point
E.1where the number 2424 comes from: 26=24+226=24+22626 is the central charge of the string, not of V♮V^\natural
E.2the physical identity of V♮V^\natural = the Leech torus orbifold, c=24c=24with any lattice that has roots, moonshine cannot be obtained
E.3partition function =J=J, and the answer to “why a modular function”modular invariance alone does not select JJ — V1♮=0V^\natural_1=0 is also needed
E.4at which step of the proof no-ghost is usedit only supplies the root multiplicities, it does not prove moonshine
E.5the current statealready proved / there is a picture / not yet understood, three sentences, each saying one thing

E.1 The critical dimension D=26D=26, and 26=24+226=24+2

Under Polyakov (covariant) quantization, the string’s worldsheet is a 2D CFT: DD free scalars XμX^\mu (matter c=Dc=D) + the reparametrization Faddeev–Popov bcbc ghosts (weights (2,−1)(2,-1), cgh=−26c_{\rm gh}=-26). Weyl (conformal) invariance is a local gauge symmetry, and its anomaly ∝ctot=D−26\propto c_{\rm tot}=D-26 must vanish ⇒\Rightarrow D=26D=26 (equivalently: matter c=+26c=+26 cancels ghost c=−26c=-26). Three other roads point to the same number: closure of the light-cone Lorentz algebra (which fixes both D=26D=26 and the intercept a=1a=1) and BRST nilpotency Q2=0Q^2=0; these two give D=26D=26 just as directly as the cancellation of the Weyl anomaly; the Goddard–Thorn no-ghost theorem, on the other hand, gives an upper bound — for D≤26D\le26 there are no negative-norm states, and 2626 is the end point of this range (see E.4). In light-cone gauge one pair X±X^\pm is eliminated (X+X^+ gauge-fixed, X−X^- solved from the Virasoro constraints), leaving D−2=24D-2=24 transverse oscillators. So 26=24+2\boxed{26=24+2}: 2424 transverse + 2+\,2 light-cone.

⚠ Honest boundary (E.1): (a) 2626 is not a physical spacetime dimension — the bosonic string is a toy model (it has a tachyon and no spacetime fermions); the critical dimension with physical relevance is the superstring’s 1010 (88 transverse). (b) That D=26D=26 is “forced” holds only for the purely geometric critical string in flat space; add an internal CFT of central charge 26−D26-D or a Liouville/linear dilaton mode, and the spacetime dimension can be other than 2626 while Weyl invariance still holds. (c) "24+224+2" should be understood as the light-cone pair X±X^\pm that is gauge-fixed + solved from constraints, not as two physical polarizations deleted independently.

E.2 The Leech torus orbifold = V♮V^\natural (c=24c=24, drawing the line against the string’s c=26c=26)

Compactify the 2424 transverse bosons on a 24-dimensional even unimodular lattice, then orbifold away the Z/2\mathbb{Z}/2 reflection (x↦−xx\mapsto-x), and you get a chiral CFT with c=24c=24 — this is the physical face of FLM’s V♮V^\natural.

⚠ Two places that are easy to state wrongly:

  1. The central charge is 2424, not 2626. V♮V^\natural is a holomorphic VOA with c=24c=24, not the string’s worldsheet matter CFT (that has c=26c=26) — the two are different objects. To recover the critical string from V♮V^\natural, one must further attach those 22 light-cone directions (the Lorentzian II1,1\mathrm{II}_{1,1}, c=2c=2) to make up 24+2=2624+2=26 — this is exactly “the two free bosons cancelled” by the Goddard–Thorn functor. So both statements ”V♮V^\natural has c=26c=26” and “the string’s transverse CFT is V♮V^\natural” are wrong.
  2. Why exactly Leech. There are 24 even unimodular lattices in 24 dimensions (the Niemeier lattices), and Leech is the only one without roots (minimal norm 44, no vectors of norm 22). It is precisely this “no vectors of norm 22” that kills the weight-11 currents (V1♮=0V^\natural_1=0), handing the automorphism group over to the finite Monster rather than a continuous Lie group. With any Niemeier lattice that has roots, what you get is a CFT with a current algebra, whose automorphism group is a Lie group — not moonshine. So Leech is not a universal property of string theory, only the choice of this one particular compactification. (Detail: there are in fact three cuts here, not one: the candidates for weight 11 originally come by three routes — the 2424 Cartan currents α−1μ∣0⟩\alpha_{-1}^\mu|0\rangle on the untwisted side, the root-vector currents eλe^\lambda (λ2=2\lambda^2=2) on the untwisted side, and twisted-side states. The first route is θ\theta-odd and killed by the orbifold projection; the third route has lowest weight above 11 (the twisted vacuum has L0=3/2L_0=3/2, and after projection the first contribution is at weight 22, the 9830498304) — these two cuts treat all 24 Niemeier lattices alike. What only Leech lacks is the second route: for a lattice with roots, the θ\theta-even combinations eλ+e−λe^\lambda+e^{-\lambda} survive to weight 11 and generate a current algebra. So “rootless” is the cut that keeps the other 23 lattices out at the door — the small example of E.3 computes exactly the same accounting at the weight-22 layer.)

Aut⁡(V♮)=\operatorname{Aut}(V^\natural)= the Monster; vertex operators = the string’s interaction operators (a VOA is exactly the mathematical axiomatization of this algebra of string operators, Appendix D.1).

E.3 Partition function = JJ, and “why a modular function”

The torus (genus 1) partition function of V♮V^\natural = the graded character

Z(τ)=Tr⁡V♮qL0−c/24=q−1+0+196884 q+⋯=J(τ)=j(τ)−744.Z(\tau)=\operatorname{Tr}_{V^\natural}q^{L_0-c/24}=q^{-1}+0+196884\,q+\cdots=J(\tau)=j(\tau)-744.

(The leading q−1q^{-1} comes from the vacuum shift c/24=24/24=1c/24=24/24=1; the constant term == the number of states of weight 11 =0=0, so it is JJ, not jj. In addition, this is the chiral character Z(τ)Z(\tau) (holomorphic in τ\tau only), not the physical non-chiral partition function Z(τ,τˉ)Z(\tau,\bar\tau) — V♮V^\natural is a holomorphic “half”, not an independent unitary local 2D QFT.)

A small example (the same 196884196884, checked once by two routes of addition). Z(τ)Z(\tau)’s q1q^1 coefficient is the dimension of the layer L0=2L_0=2 of the string spectrum. It has two ways of being split up that know nothing of each other:

Modular invariance of the worldsheet ⟷ the modular group of Appendix A. By Zhu’s theorem, a rational, C2C_2-cofinite, holomorphic VOA with 24∣c24\mid c has a character that is a weight-00 SL(2,Z)\mathrm{SL}(2,\mathbb{Z}) modular function (c=24c=24 makes the TT-phase e−2πic/24=1e^{-2\pi i c/24}=1; the SS-invariance is the content of Zhu). This is the physical/algebraic answer to “why what pops out is a modular function” — the modular invariance of the worldsheet torus leads to exactly the modular group and the class of modular functions of Appendix A.

⚠ A qualification that must be added: modular invariance alone does not select JJ, nor does it bring in the Monster — for all 71 holomorphic c=24c=24 VOAs on Schellekens’s list, modular invariance gives only j−744+dim⁡V1j-744+\dim V_1. It is the independent fact of construction V1♮=0V^\natural_1=0 (no spin-11 currents ⟹ no continuous symmetry ⟹ the finite Monster) that selects JJ.

E.4 no-ghost (physics version) and the Monster Lie algebra

The Goddard–Thorn no-ghost theorem (physics version): the physical states of the bosonic string (annihilated by LnL_n, on the mass shell) have no negative-norm (ghost) states for D≤26D\le26 (a≤1a\le1) — the induced inner product is positive semidefinite. At the critical D=26,a=1D=26,a=1, the zero-norm states are exactly those orthogonal to the transverse DDF states, they decouple from all amplitudes, and after quotienting out the null states the space is positive definite, isomorphic to the Fock space of 2424 transverse oscillators. ⚠ The statement “positive definite for D≤26D\le26” is not accurate: in general it is only semidefinite. After quotienting out the zero-norm states, the space obtained is always positive definite; what is special about D=26D=26 is that what remains after the quotient is exactly the space spanned by the transverse DDF states (for D<26D<26 there are additional longitudinal physical states).

Borcherds wrote it in the language of vertex algebras and used it on V♮⊗VII1,1V^\natural\otimes V_{\mathrm{II}_{1,1}} (c=26c=26), getting the root multiplicities of the Monster Lie algebra (Appendix D.3). no-ghost supplies only the root multiplicities — it does not construct V♮V^\natural, does not prove the Monster action, does not prove that m\mathfrak{m} is GKM (that needs Borcherds’s identification theorem), and does not prove moonshine. It is a lemma, not the whole proof.

E.5 The current state: already proved, there is a picture, not yet understood

Already proved; there is a physical picture; not yet truly understood.

  • Already proved: moonshine is a theorem (the Conway–Norton 1979 conjecture → FLM 1988 built V♮V^\natural → Borcherds 1992 proved it, Fields 1998), and the genus-0 property is also within what has already been proved; it is not an unsolved problem.
  • There is a picture (this half has an answer): V♮V^\natural is the chiral half of a 2D CFT, and its torus partition function = the modular invariant JJ; via Zhu, modular invariance is derived from consistency — “why a modular function” really does have an answer.
  • Not yet understood (the other half has no answer): (a) why exactly Leech / V♮V^\natural / the Monster — “the 24-dimensional construction” is a fact, not an explanation (experts still cannot say what the “essential importance” of the Monster lies in, as Gannon has repeatedly pointed out — here his meaning is paraphrased, not quoted word for word); (b) why each TgT_g is not only modular but a genus-0 hauptmodul (the principal modulus property — Duncan–Griffin–Ono, word for word: “a conceptual explanation for the principal modulus property of monstrous moonshine is yet to be established”).
  • ⚠ There are two “genus” here, and they are not about the same thing: “the genus 1 partition function of V♮V^\natural =J=J” (modular invariance, understood) ≠\ne “why each Γg\Gamma_g is a genus-0 group” (the hauptmodul property, not understood).
  • The Rademacher sums / 3D chiral gravity program of Duncan–Frenkel is the leading candidate for filling in this conceptual foundation, but it is a conjecture, not a theorem. Gannon: “Moonshine remains mysterious to this day.”

The basis of the statements in this section: D=26D=26/the Weyl anomaly/26=24+226=24+2, V♮=V^\natural= the Leech orbifold (c=24c=24), Leech uniquely rootless, Z=J=j−744Z=J=j-744/Zhu modular invariance, no-ghost semidefinite/positive definite at criticality, m=V♮⊗II1,1\mathfrak{m}=V^\natural\otimes\mathrm{II}_{1,1} (not Leech II25,1\mathrm{II}_{25,1} = the fake Monster), genus 0 proved but not conceptually explained — the main statements were compared against the following literature, and those checked only at the level of secondary citation are marked item by item in the sources (Polchinski / GSW / FLM 1988 / Borcherds 1992 / Goddard–Thorn 1972 / Gannon / Duncan–Griffin–Ono / Duncan–Frenkel / Zhu 1996 / Schellekens 1993); the entries are in the sources.


Appendix F (checkable) · 194 → 171, class by class

The main text says: the 194 conjugacy classes give 171 different series — inverses take away 22 pairs, and the last step has no mechanism. Here this computation is laid out class by class. The list is Conway–Norton’s own Table 2 in the original (pp. 327–329): they state on p. 314 that the “class” in each row of the table is the union of one or two conjugacy classes — a row in which two classes are merged carries an asterisk at its head. Counting asterisks is counting merges.

The 22 starred rows (in each row two classes share one series; mechanism: mutually inverse, gg and g−1g^{-1}):

23AB⋅31AB⋅39CD⋅40CD⋅44AB⋅46AB⋅46CD⋅47AB⋅56BC⋅59AB⋅62AB23AB \cdot 31AB \cdot 39CD \cdot 40CD \cdot 44AB \cdot 46AB \cdot 46CD \cdot 47AB \cdot 56BC \cdot 59AB \cdot 62AB 69AB⋅71AB⋅78BC⋅87AB⋅88AB⋅92AB⋅93AB⋅94AB⋅95AB⋅104AB⋅119AB69AB \cdot 71AB \cdot 78BC \cdot 87AB \cdot 88AB \cdot 92AB \cdot 93AB \cdot 94AB \cdot 95AB \cdot 104AB \cdot 119AB

Three details, exactly the places where readers easily miscount: order 46 appears in two pairs (46AB and 46CD); the letters are not always AB (39CD, 40CD, 56BC, 78BC — because there are classes of the same order that are not merged, listed before them); each starred row reduces the series by only one.

The exceptional one is not among the asterisks. 27A and 27B are two separate rows in Table 2 (centralizer orders 486=2⋅35486=2\cdot3^5 and 243=35243=3^5, two different classes), yet they share the same series — this equality is one that Conway–Norton declare separately on p. 310: inverse pairs are equal, “as do the two distinct conjugacy classes of elements of order 27”, and that there are no other equalities. Why this should be so, this article did not find an explanation for. The 22 pair merges are written into the structure of the table; the 23rd merge is written only in one sentence — even the layout is telling you it is an accident.

Three pieces of arithmetic you can count yourself:

What is countedHow it is countedResult
number of rows in the table150150 single rows + 22+\ 22 starred rows172172 (= the “number of classes of cyclic subgroups” Gannon counts)
conjugacy classes150+22×2150 + 22\times2194194 ✓
different series172−1172 - 1 (the two rows 27A/27B share one)171171 ✓

⚠️ There is a trap for anyone counting rows: at the end of Table 2 hang three more rows, 25Z, 49Z, 50Z — Conway–Norton call them “ghost elements” (p. 310 obs (2)): groups of genus 0 that do not correspond to any element of the Monster. Counting them in would give 175 rows. This count excludes these three rows throughout.

The computed/cited boundary of this section: the meaning of the asterisks (two classes merged into one row), the inverse mechanism, the order-27 exception and “no others” — cited (Conway–Norton 1979, pp. 310, 314, 327–329); the transcription of the starred rows, the counting and the three pieces of arithmetic — checked (this article); the pair-by-pair verification that each pair “really is an inverse pair” needs ATLAS power maps, which this article did not do; it is carried by the overall statement on p. 310.


Lean formal verification (2026-09-19)

The places in Appendices A–F that say “checked by program” or “checked” used Python programs and hand derivations. This section checks once again with a different tool: using the theorem prover Lean 4 (4.33.1) and its mathematics library Mathlib, the statements in the appendices that can be formalized were written one by one as Lean theorems and handed to Lean’s kernel to check. Two source files with 57 theorems in total all pass; the axioms used do not go beyond Lean’s three standard axioms (propext, Classical.choice, Quot.sound), there is no sorry, and no shortcut that bypasses the kernel, such as native_decide, is used.

The column “what Lean checked” records only the part that Lean really checked. In many entries what Lean checks is the arithmetic, and the meaning of the numbers themselves comes from elsewhere: Lean can check 196884=1+196883196884=1+196883, but ”196883196883 is the dimension of the smallest non-trivial representation of the Monster” is not in Lean; premises of this kind are written in the column “where the inputs come from”.

AppendixWhat Lean checkedWhere the inputs come from (not checked by Lean)Method
A.1Im⁡(γτ)=Im⁡τ/∣cτ+d∣2\operatorname{Im}(\gamma\tau)=\operatorname{Im}\tau/\lvert c\tau+d\rvert^2; S,TS,T generate SL(2,Z)\mathrm{SL}(2,\mathbb{Z})—existing Mathlib theorems
A.1in SL(2,Z)\mathrm{SL}(2,\mathbb{Z}), S2=−1S^2=-1, (ST)3=−1(ST)^3=-1 (the step to PSL\mathrm{PSL}, where they are 11, is not formalized)—direct matrix computation
A.2the appendix’s FF and Mathlib’s fundamental domain are the same set; existence; uniqueness in the interior (Mathlib’s version is stronger: when both points are in the interior, γ=±1\gamma=\pm1)—existing Mathlib theorems, with one step added by this article
A.2 small examplethe matrix of T3ST−2T^{3}ST^{-2} has first row (3,−7)(3,-7) and second row (1,−2)(1,-2); γτ0=i\gamma\tau_0=i—exact computation
A.3Δ=q∏(1−qn)24\Delta=q\prod(1-q^n)^{24}; Δ\Delta is nonzero everywhere on H\mathbb{H}; it has a simple zero at the cusp; Δ=(E43−E62)/1728\Delta=(E_4^3-E_6^2)/1728; E4E_4‘s qnq^n coefficient is 240 σ3(n)240\,\sigma_3(n)—existing Mathlib theorems (the coefficients of E4E_4 derived by this article from Mathlib’s general formula)
A.3j=E43/Δj=E_4^3/\Delta is invariant under SL(2,Z)\mathrm{SL}(2,\mathbb{Z})—proved by this article
A.3 small example, Appendix B720,179280,24,324720,179280,24,324 and 744,196884744,196884; c(−1)c(-1) to c(5)c(5); E43−E62E_4^3-E_6^2 and 1728 q∏(1−qn)241728\,q\prod(1-q^n)^{24} equal term by term in the first 7 termsqq-expansions: those of E4E_4, Δ\Delta given by the first A.3 row above; E6E_6‘s general coefficient −504 σ5(n)-504\,\sigma_5(n) not formalized separately (only the q1q^1 term checked)exact multiplication of truncated power series
Appendix Bthe two sides of the three identities are equalthe Monster dimensions d1,…,d4d_1,\dots,d_4 (ATLAS)exact computation
Appendix Cthis integer has 54 digits; the 15 numbers are all prime and all divide it; no other prime below 72 divides it; 47⋅59⋅71=19688347\cdot59\cdot71=196883; 37∤∣M∣37\nmid\lvert M\rvertthe factorization of ∣M∣\lvert M\rvert (ATLAS)exact computation
Appendix Cthe discriminants −11,−44,−148-11,-44,-148 have 1,3,21,3,2 reduced primitive quadratic forms respectively”number of reduced forms = class number” (classical reduction theory)enumeration
Appendix C full recomputation44 primes with 5≤p<2005\le p<200; g+(p)g^+(p) all integers; g+=0g^+=0 exactly for the 13 on the list; when the h(−p)h(-p) term is left out, 23 of the 44 go wrongthe genus formula for X0(p)X_0(p), the formula for the fixed points of the Fricke involution, Riemann–Hurwitzexact computation
Appendix Fthe 22 starred rows are pairwise distinct; 150+22=172150+22=172, 150+22×2=194150+22\times2=194, 172−1=171172-1=171the list of starred rows (transcribed from Conway–Norton Table 2)exact computation

Seven of the key computations are each paired with a counterexample, to confirm that the check itself will report an error: change 744744 to 743743, change the number of forms of discriminant −148-148 to 33, change the number of starred rows to 2121, and Lean rejects each.

The parts not formalized: the stabilizers of the two elliptic points in A.2; all of A.4 (the valence formula, jj a bijection, genus 00, hauptmodul, j(i)=1728j(i)=1728, j(ρ)=0j(\rho)=0), because Mathlib currently has no valence formula; the step in A.3 “the product of the truncated power series is the function jj‘s qq-expansion”; the rest of Ogg’s classification in Appendix C (p=2,3p=2,3 and p≥200p\ge200), and the equivalence of the two definitions of “supersingular”; Appendices D, E (which only cite and do not reprove in the first place); the pair-by-pair verification of “mutually inverse” in Appendix F.

Result: within the range checked in the table above, Lean and the numbers and statements of the appendices are not inconsistent in a single place.


Sources

The source book (narrative skeleton)

Moonshine · observation and conjecture

The moonshine module · vertex operator algebras

The proof · string theory · the Fields Medal

After the book (2006–2026)

Ogg · supersingular primes

People

Cited in the appendices (each entry is marked with the level to which it was checked: [registered] = the record was retrieved from Crossref or arXiv on 2026-10-09 and compared item by item; [secondary] = copied from the reference list of another work, the original not seen)

Epigraph