The Riemann hypothesis is one of mathematics' most famous unsolved problems. If an AI proves it tomorrow, correctness will be the first evaluation criterion. In his conversation with Dwarkesh Patel, Grant Sanderson asks what else such a proof would give us. Every step could be valid while the proof introduces no reusable definition, method, or connection to another field.
Galois changed the representation of the problem
In school, we learn one formula that solves every quadratic equation. For centuries, mathematicians searched for a similar recipe for equations whose highest power is five. Niels Henrik Abel eventually proved that no such recipe could be built from addition, subtraction, multiplication, division, and roots, which answered the headline question.
Évariste Galois did something harder to grade. Instead of hunting for another recipe, he looked at the possible answers to an equation and asked which ones could trade places without changing their relationships; those legal swaps formed a structure, and we now call this way of studying symmetry group theory. Mathematicians did not yet have standard terms for this structure.
His manuscripts were rejected or went unreported, and in a preface written in Sainte-Pélagie prison, Galois complained that Poisson had not understood the work. He urged future mathematicians to look beneath long calculations and classify operations by their structure, but the importance of that shift took decades to become clear.
Galois died in 1832, long before Joseph Liouville announced that he had found deep results in the manuscripts in 1843 and published them in 1846. Camille Jordan's 1870 book later helped make these structures part of mainstream mathematics.
An evaluator reading only the original submission would have struggled to assess it. The manuscript was difficult to read, incomplete in places, and appeared to arrive after Abel had resolved the original question. Most unclear work is simply unclear. Later mathematicians used Galois's representation to consolidate arguments and formulate questions that had not existed when he submitted it. By the time a definition proves useful that way, its terminology may already be standard within the field.
Tests cover only specified behavior
A unit test specifies expected behavior for a defined case: given this input, return that output; if the request is malformed, fail in this particular way. A test runner can check those conditions after every code change. It cannot evaluate a requirement that nobody encoded.
Consider two programs that convert text into structured data. One implements a separate parser for every known format. The other defines a shared representation for the properties common to those formats. Both pass the current tests. The first may be shorter and lower risk, so an agent optimizing for the current issue will probably choose it. When a sixth format arrives, the shared representation may make the change small, or it may turn out to be unnecessary abstraction. The original test suite cannot distinguish those outcomes because the next requirement has not been encoded.
A benchmark with follow-up tasks
Give two agents the same initial task, then reveal follow-up requests neither could see. Measure how much code moves and how often old behavior breaks.
Coding agents get an immediate evaluation signal when a failing test starts passing. Architectural quality often shows up later, perhaps when a module boundary contains a defect or a domain term makes a previously implicit distinction explicit.
I do not know how to keep agents from optimizing for this benchmark. Sequential tasks would still measure whether an initial patch reduces the cost and failure rate of later changes rather than only closing the first ticket.
Length is not a useful proxy for explanatory value. A strong abstraction compresses many separate facts into one representation, which is why Galois described mathematical elegance as grasping many operations "with a single glance."
