Integral points, everywhere?
Potential integral density on curve character varieties
Covers result 027 in OpenAI’s catalog: its one paper. See its connections to other results and the work it cites.
6:18. English captions available. The video loads from YouTube when you press play.
Chapters
The claim, in plain words
A representation of a curve’s fundamental group assigns an invertible matrix to every loop, compatibly with how loops combine. Up to change of basis, these form the character variety Mr(X), which has a natural model over the integers. For a torus with one puncture in rank 2 it is all of 3-space, with coordinates x = tr A, y = tr B, z = tr AB; the loop around the puncture has trace x² + y² + z² − xyz − 2.
Result 027 (27 pages) claims: for every smooth connected complex curve X, every rank r, and prescribed puncture classes in SLr whose eigenvalues are roots of unity (non-diagonalizable classes allowed), there is one number field L such that the points of Mr(X) with coordinates in the ring of integers of L are Zariski dense in the locus with exactly those puncture classes, and so in every one of its components. For closed curves, and with prescribed punctures, L is explicit: adjoin √2 and a primitive pq-th root of unity (p ≠ q primes larger than r) to the field of the eigenvalues, then all r-th roots of units. The paper says this answers the SLr form of Daniel Litt’s question for curves.
What it doesn’t claim
Integrality is measured in the full character variety: an integral point’s representation has the exact puncture classes over the complex numbers, but need not keep them after reduction modulo every prime. The result is about curves; higher-dimensional varieties in rank 3 and up are not covered. For punctured curves with no conditions at the punctures, density was already easy over the ordinary integers.
Where it stands
- Posted as a preprint
- OpenAI, dated September 25, 2026, released October 6; 27 pages
- Peer reviewed
- Not yet
- Checked in Lean
- No: OpenAI’s Lean files check supporting steps, not the theorem (scope note)
Last checked October 19, 2026. The claim has not been withdrawn (unlike three other papers in the same release), and we found no public response to it. OpenAI’s Lean statement covers one supporting step of the construction: when a solution is cut open along a nonseparating band, the values built from it satisfy every seam equation. Following its imports gives 79 files and about 27,000 lines, not counting Mathlib, with no unfinished proofs (sorry). OpenAI’s files also contain 13 uncatalogued Lean files (not linked from the collection’s catalog), 2,479 lines excluding Mathlib, with no unproved steps by our search: 12 more files of the same cutting construction (with them, its umbrella file covers 91 files and about 29,600 lines), and one file showing that adjoining r-th roots of all units of a number field gives a finite extension in which those roots are again units, the arithmetic behind the paper’s field L. The main theorem is not formalized, and we have not run any of these files. Correction (October 15, 2026): the video counts only the 79 catalogued files; the uncatalogued ones add supporting steps, not the main theorem.
What was known
- Simpson (1992) conjectured that rigid irreducible representations of fundamental groups of smooth projective varieties are integral. Esnault and Groechenig (2018) proved this for cohomologically rigid ones (with finite determinant and quasi-unipotent boundary). de Jong and Esnault (2024) showed that integral ℓ-adic local systems exist for every prime ℓ, given a complex one.
- Daniel Litt asked whether integral points become Zariski dense after a finite extension; his survey asks whether one number field suffices. Coccia and Litt (2025) proved potential density in rank 2 (SL2 and PGL2), by finding an integral point whose orbit under the mapping class group is Zariski dense.
- Ghosh and Sarnak (2022) studied the Markoff-type surfaces x² + y² + z² − xyz = k: the Hasse principle holds for almost all k but fails for infinitely many, so integer points can be missing without any congruence obstruction.
How the proof goes
- Flags and caps. Work in GLn first. A puncture matrix of given Jordan type preserves a flag on whose layers it acts by roots of unity; capping the puncture with disks carrying those scalars gives a diagram of surfaces of various ranks, glued along flags.
- Rank induction. A top-rank surface with boundary is cut into disks. Their punctures act by scalars, so a subspace taken from a boundary flag is preserved, and each disk splits into a subspace and a quotient of lower rank. The lost gluing data are recovered by linear choices, and integral choices are dense.
- Closed surfaces. Cut along a circle with eigenvalues 1, ζ, …, ζn−1 (ζ a primitive pq-th root of unity, whose differences are units), reglue integrally, and use powers of a Dehn twist to fill in the remaining directions. The closed equation is irreducible in genus at least 2, by counting points over finite fields (the method of Liebeck and Shalev) and the Lang–Weil estimate.
- Determinants and exact classes. Handle determinants are units; by Dirichlet’s unit theorem, adjoining r-th roots of finitely many generators gives one field where everything can be rescaled to determinant one. The unit 1 + √2 has infinite order, which makes integral choices dense. Exact Jordan classes are selected last, on the character variety.
The numbers in the video
- A short Python script checks Fricke’s identity symbolically and on 500 random integer pairs, and the matrices A = (1 1; 1 2), B = (1 −1; −1 2): traces (3, 3, 3) and commutator (−1 0; −6 −1), a non-diagonalizable matrix with eigenvalues −1, −1. The Dehn twist (A, B) ↦ (AB, B) sends (3, 3, 3) to (3, 3, 6), (6, 3, 15), (15, 3, 39), (39, 3, 102).
- Modulo 4, x² + y² + z² − xyz takes only the values 0, 1, 2, so the trace-1 surface has no integer points. Over ℤ[√2], A = (1 1; 1 2) and B = (3+√2 −√2; −1−√2 1) have traces (3, 4+√2, 4−√2) and a commutator of order 6.
- The finite-field chart is the exact count of solutions of [A1, B1][A2, B2] = I in SL2(𝔽q), divided by |SL2(𝔽q)|³, from the Frobenius formula; brute force agrees for q = 3, 5, 7. It falls from 3.86 at q = 3 to 1.005 at q = 199.
Read the source
- Integral points on character varieties of curves (PDF), dated September 25, 2026 (27 pages).
- The Lean statement: CharacterVarietiesAllSeamsSupport.lean, and OpenAI’s scope note.
- The collection’s catalog, where this is result 027.
The paper
OpenAI groups related papers into one result; this one has a single paper.
Transcript
Read the full script
0:00Loops and matrices
Take a torus with one puncture. Two loops, a and b, go around it. A third loop circles the puncture, and going around it is the same as a, then b, then a backwards, then b backwards: the commutator of a and b. A representation assigns an invertible matrix to each loop, consistent with how loops combine. In rank 2 with determinant one, pick matrices A and B, and the puncture loop gets their commutator. Changing basis doesn’t change the representation, so we record traces: x is the trace of A, y of B, and z of A times B. An identity going back to Fricke says the commutator has trace x² + y² + z² − xyz − 2. The triples x, y, z make up the character variety: here, all of three-dimensional space. The same recipe works for any curve and any rank. Fixing the type of the puncture matrix cuts out a smaller piece, here a surface.
1:00Integral points
Say the puncture matrix has both eigenvalues −1, but can’t be diagonalized. The surface is then x² + y² + z² = xyz. These integer matrices give the point (3, 3, 3). A Dehn twist along b replaces A by A times B. On traces, (x, y, z) becomes (z, y, yz − x). So (3, 3, 3) goes to (3, 3, 6), then (6, 3, 15), always with y = 3, on one curve. Twists along other loops branch out into a tree of integer points. They aren’t trapped on any curve. In algebraic terms they’re Zariski dense: the only polynomial equations that hold at all of them are the ones that hold on the whole surface. Now let the puncture matrix have eigenvalues that are primitive sixth roots of unity, so its trace is one. The surface becomes x² + y² + z² − xyz = 3, and no integer triple works: divided by four, the left side never leaves remainder three. But allow the square root of two. These matrices have determinant one, and their commutator has order six. Integral points appear once the integers are enlarged.
2:13The question
Simpson conjectured in 1992 that rigid irreducible representations, ones that can’t be deformed, can be written with integral matrices. Esnault and Groechenig proved it for cohomologically rigid ones, and de Jong and Esnault showed integral ones exist, one prime at a time. Daniel Litt asked for more: after enlarging the integers, do integral points become Zariski dense? His survey asks whether a single number field is enough. In 2025, Simone Coccia and Litt proved this in rank 2, by finding an integral point whose orbit under the twists is Zariski dense. And Ghosh and Sarnak showed that for surfaces of this kind, infinitely many with no congruence obstruction still have no integer points at all.
2:59The claim
Result 027 in OpenAI’s math repository claims the answer for every curve and every rank. The preprint, 27 pages, dated September 25, claims: for a smooth complex curve, any rank r, and prescribed puncture classes whose eigenvalues are roots of unity, including classes that can’t be diagonalized, there is one number field L whose integral points, measured in the full character variety, are Zariski dense in the locus with those classes, in every component. For closed curves and for prescribed punctures, L is explicit: start with the puncture eigenvalues, the square root of two, and a primitive pq-th root of unity, for distinct primes p and q larger than r, then adjoin the r-th roots of every unit. On a punctured curve with no conditions at the punctures, the ordinary integers already suffice. The paper says this answers the SL(r) form of Litt’s question for curves.
3:59How the proof goes
The proof first allows any determinant. A puncture matrix of a given Jordan type keeps a chain of subspaces, a flag, and acts on each layer between steps by a root of unity. The proof caps the puncture with disks carrying those scalars, giving a diagram of surfaces of different ranks, glued along flags. Then comes induction on the largest rank. A top-rank surface with boundary is cut into disks. Their punctures act by scalars, so a subspace taken from a boundary flag is preserved, and the disk splits into a subspace and a quotient, both of lower rank. The lost gluing data come back by choosing linear maps, and integral choices are dense among all choices. Closed surfaces need more. Cut along a circle and fix the eigenvalues there to 1, ζ, ζ² and so on, with ζ a primitive pq-th root of unity: their differences are units, so eigenvectors split off integrally. Powers of a Dehn twist then fill in the remaining directions. And the closed equation has only one piece: counting solutions over finite fields, in the style of Liebeck and Shalev, plus the Lang–Weil estimate, shows it. For SL(2) in genus 2, the count divided by the expected size drops toward one. Last, determinants. Every handle determinant is a unit, and by Dirichlet’s unit theorem the units come from finitely many, so adjoining their r-th roots gives one field L that rescales everything to determinant one. Why the square root of two? Its unit, 1 + √2, has infinite order, which makes integral choices dense. The exact Jordan classes are selected at the very end, on characters.
5:42Where it stands
This is a preprint, not peer reviewed. OpenAI’s Lean files, 79 files and about 27,000 lines, check one supporting step: when a solution is cut open, the values built from it satisfy every seam equation. The main theorem isn’t formalized, and we haven’t run the check. The paper leaves higher-dimensional varieties in rank three and up open. If the proof holds, then for curves in every rank, one enlargement of the integers makes integral points dense.
Spot a mistake?
This episode simplifies on purpose, but it shouldn’t be wrong. If something is, open an issue on GitHub or leave a comment on YouTube. Corrections are noted here with a date.