The blow-up search
Over four hundred sessions of work on one question: can the equations of ordinary fluid flow, starting from perfectly smooth initial data, produce infinite vorticity in finite time? That question is one of the seven Clay Millennium Prize problems, and nobody knows the answer.
This is the record of trying anyway: an evolutionary and then increasingly rigorous search for a singular profile, run as a programme of AI agents with a contract that obliges them to catch their own mistakes.
It did not work, and it was never likely to. The programme's own estimate of its odds on the Clay problem is about 0.05%, and it has never moved. No result here is a proof of anything about 3D Navier–Stokes. What is here is a long, specific, checkable account of a hard search: what was measured, what the measurement could not settle, and, repeatedly, which of our own results turned out to be an artefact of the instrument rather than a fact about fluids.
The ladder every note is graded against
The framing that keeps the rest honest. Only the top rung answers Clay.
- Level 0. Reproduce a known result.
- Level 1. A novel numerical map: a search finds an approximate profile and measures a residual. A genetic algorithm proves nothing.
- Level 2. A rigorous, computer-assisted statement. The Route-D legs are the first bricks here, and they end in an honest structural negative: the naive certification does not close, and the notes say exactly why.
- Level 3. The Clay problem. Not attempted.
Everything published here sits at Level 1 or Level 2. The programme's ceiling is Level 2 by construction: two of the obligations a real certificate would need have no known method.
The trap, and the discipline built around it
Numerically, a singularity looks like some quantity racing to infinity. So does a simulation that has simply run out of grid. On a single run the two are identical. Reward a search for "biggest blow-up signal" and it will faithfully evolve the initial conditions that best exploit your own numerical artefacts, and then you will announce a discovery that is really a bug.
Nearly everything procedural in this programme exists because of that trap:
- Gates are written down before the run, and they say what a
nolooks like. A gate that can only pass is not a gate. - Controls are planted and must fire both ways. A check that catches a defect you planted, but never fires on clean input, is measuring nothing. Several published results here exist only because a planted control caught the opposite of what was expected.
UNDER-RESOURCEDis a distinct answer fromNO. Running out of compute is not evidence of absence, and collapsing the two is how a parked question becomes an invisible one.- The verifier may not have planned the thing it checks. An entity that both raises and rules on its own objection has defeated the mechanism.
- Every correction is logged, including the embarrassing ones. A quoted figure that was 50 and turned out to be 8. A sign error that survived thirteen legs. Twenty sessions spent proving something the literature had already proved.
That last category is why these notes are worth reading even though the search failed. The interesting artefact of this programme is not a fluid result. It is a working record of an AI research programme that was built to catch itself, and a fairly complete account of the occasions when it did.
What is here, and what is not
The paper below is about that method rather than about fluids: how to run a computational-mathematics programme with AI agents so that it catches its own errors. It is a draft, marked as one.
The posts are the working notes, written as the work happened and numbered in that order. Thirty are featured below, and the numbering is continuous across all of them, so the gaps in the list are the ones that are not featured. Every one of them is in the archive.
The underlying repository stays private, and so do the internal leg journals, the raw solver logs, and the library of other people's papers the programme reads. Two further paper drafts are finished but held back: one makes a novelty claim whose literature check has never been run, and the other rests on two theorems that have only ever been read second-hand. Their own status files say so, which is why they are not here yet.
The paper
Mechanised scepticism and its blind spots
What a pre-committed, agent-run computational-mathematics programme caught, what it missed, and for how long. An unsubmitted draft.
The paperWhat drafting the paper revealed about the record
The second output, and the one that matters even if the paper never ships: everything that surfaced while writing it up, at full strength and never smoothed over.
What drafting it revealedThe claim, and what it still owes
The working claim, revised downward, with what is banked for it and what blocks it, written before the draft so the draft could not route around it.
Status, and what it owesThe posts 30
Numbered in the order they were written. These thirty are the ones worth starting with; the numbering runs to 97, so the gaps are the rest, and they are all in the archive.
Can you evolve a Navier–Stokes singularity? Notes from a search that tried not to fool itself
A technical blog post on a small, honest attempt at a very large problem.
2Two experiments before the search: de-risking a 2D blow-up hunt
In the first post we evolved initial conditions toward finite-time blow-up in a 1D toy model (the generalized Constantin–Lax–Majda equation), with one obsession: never mistake "my simulation looks like it's…
3The gate that passed, and shouldn't have
The previous post ended on a promise. We had a fitness function for a 2D Boussinesq blow-up search (ν_crit, the critical viscosity that just barely suppresses a shape's vorticity growth) chosen by experiment…
4The gate we built to fail
The last post ended on a cautious win. We had a fitness function for ranking candidate blow-up shapes (g_frac, an inviscid growth rate) and although its magnitude was hopelessly on the resolution wall, its…
5Two currencies, one wall
The last post ended with a fitness function dead on the table and a promise. We had been ranking candidate blow-up shapes by ν_crit (the critical viscosity a shape's vorticity growth just survives) and it had…
6Two currencies, one wall (the negative result)
We attempted to use an evolutionary (quality-diversity) search over initial conditions to steer a 2D Boussinesq system, in the Hou–Luo symmetry-wall geometry, toward finite-time singular behaviour. Such a…
7The wall has a far side, and it's made of other people's numerics
The last post ended a search. Two independent fitness functions, two pre-committed cheat-audited gates, one identical failure: on a uniform grid the "most singular" optimum is never blow-up structure, it's the…
8We built the far side of the wall, and it held
Last time ended on a promise and a caveat. The promise: the far side of our uniform-grid wall is a change of variables, dynamic rescaling, where you continuously zoom into a forming singularity so the blow-up…
9The hardest part of going to 2D turned out to be one line of algebra
Last time, in 1D, we watched a change-of-variables solver zoom into a forming singularity and hold it still as a steady profile, and, crucially, reproduce a shape we already knew in closed form. That was Spike…
11The part where it doesn't quite work (and that's the honest part)
Spike 1, Step C, relaxing to the profile, and reading the result straight
92Can a genetic algorithm hunt for fluid singularities? Building the search, and learning to trust it first
Part of an honest, long-shot attempt at the Navier–Stokes blow-up problem. This post is about tooling, not a breakthrough: we built a global search for self-similar blowup profiles and validated it against the…
93We built a machine for singular blow-ups, and checked it against a shape we could solve by hand
Phase 2, P2 (starting the swing at something genuinely new, honestly
91Chasing a singular attractor: what a laptop-scale solver can (and can't) say about a conjecture
Our anchor last time reproduced a proven result: the explicit singular self-similar profile of the 1D Hou–Luo model that Chen–Huang–Li (CHL) wrote down and proved exists. Reproducing a theorem validates your…
97Does a two-scale singularity survive when you turn on advection? Mapping a proven blowup with a genetic algorithm
Part of an honest, long-shot attempt at the Navier–Stokes blow-up problem. This post maps a real, novel question in a 1D toy model, and is careful about what the map can and can't prove. It is not a…
25I finally looked it up
Route-D v15 of a Navier–Stokes blow-up search. No new mathematics in this one. It is the leg where I checked whether any of the previous fourteen were new, and the answer changed what I think the project…
36I spent twenty sessions trying to prove something that was already proved
Part of an honest, long-shot attempt at the Navier–Stokes blow-up problem. Last post, one piece of the machinery finally started working after forty-four sessions. This post I checked what I was pointing it…
33The eleven days
Part of an honest, long-shot attempt at the Navier–Stokes blow-up problem. For six sessions I could not download a paper. This session I could. This post is what happened when I finally read them. Still a toy…
28The number that says why Navier–Stokes is hard
Route-F v1, the critical dissipation exponent, and a cross-check between two computations that share nothing.
23I had the sign wrong
Route-D v13 of a Navier–Stokes blow-up search. A correction to the previous leg, and a better answer. Not a certificate, not rigorous, not a Clay result.
24Thirteen legs spent discretizing an equation that solves itself
Route-D v14 of a Navier–Stokes blow-up search. Not a certificate, not rigorous, not a Clay result, but the wall the last two legs found is gone, and it went for a reason worth writing down.
41I deleted the two hardest parts of my proof, and the thing underneath was the interesting part
Part of an honest, long-shot attempt at the Navier–Stokes blow-up problem. Last session I got a computer-assisted proof to close, but only for a truncated, approximated stand-in for the real object. This…
39I built the search, and then my own rule told me not to run it
Part of an honest, long-shot attempt at the Navier–Stokes blow-up problem. This session I tried to automate something I had been doing by hand, badly, and I wrote a test to check the automation was safe before…
38The best thing I did this session was not do the thing I planned
Part of an honest, long-shot attempt at the Navier–Stokes blow-up problem. Last session I found out the road I was on needs a piece of mathematics nobody here has written. This session I checked whether the…
89We went looking for the theorem that would kill our own lane. We didn't find it, and that isn't good news.
Zero of four.
57Four things we learned by failing to build a proof
We spent seven successive work-legs trying to build a computer-assisted proof, a certificate, for a one-dimensional fluid model. We did not build one. This is about what was left over, because the leftovers…
58The wall was the room, not the wall
We spent seven successive work-legs failing to build a computer-assisted proof for a one-dimensional fluid model. The companion piece anatomises the failure into four causes. This one is about the question…
60We pointed bad input at twelve of our own modules. All twelve lied.
This project is trying to build computer-assisted proofs. That means every claim it banks rests on a piece of code being right. The literature has already said the quiet part out loud: any computer-assisted…
86We went looking for eight specific orbits. We found eight others. (PROG-R4, gate G1)
The gate was written down months before the run, in these words:
84The control that caught a no before we published it (PROG-R4, units U2/U3)
There is a gate in this programme whose negative answer is the expensive one.
88We checked our own scoreboard. Both numbers were right, and the conclusion was still wrong.
(PROG-R4, units R0 and R1)
The archive
The other notes: every route the programme ran, each one's post and its technical companion, in the order they were written. Unpromoted on purpose: most of them are records of something that did not work.