Epistemic Audit of the OpenAI Navier-Stokes/Euler Lean 4 Blow-up Proof — Physical Vacuity, Thermodynamic Censorship & Structural Instability
See the codeNon-Profit Citizen Science Initiative for Neuro-Symbolic Science · MechanicaFluidorum Program · September 2026
📄 Read the Paper (PDF) · 💬 Join Discussions · 🏛️ Zenodo · 🤗 HuggingFace · ⚖️ Legal Notice

How to check the Lean claims, and what is not yet checkable from here. Every "verified" Lean file ends in
#print axioms, and the counts of verified declarations quoted below come from running those locally. Those transcripts are not currently committed to this repository, so from GitHub alone the counts are a self-report and should be read as one. To check them yourself, cloneopenai/NavierStokesAndEulerat the revision pinned inopenai_lean_audit_certificate.jsonand runlake env leanon each verified file; the axiom footprint printed at the foot of each is the actual claim. A continuous-integration badge used to sit above. It was removed on 2026-09-18 because every run of that workflow has ended instartup_failureand it therefore advertised a gate that has never executed, under a name this project has withdrawn.Note on earlier versions. In September 2026 this project dropped its original "physical vacuity"/"censorship" framing and its string-theory/T-duality motivation after community and scientific review. Claims withdrawn along the way (plasma temperatures, the raw 10²⁸ condition number as fragility, the global enstrophy constant, the T-duality link, v5.2.0's "dissipative kinetic lock", and v5.5.0's withdrawal of the Leray-α "physical anchor at ℓ*") are itemized in
CHANGELOG.mdand in Appendix A of the paper. Zenodo versions 2.0.0 (10.5281/zenodo.22725347,22727801) carry withdrawn claims and should not be cited.
In September 2026, an OpenAI multi-agent system produced a Lean 4 formalized proof of finite-time blow-up for the 3D Navier-Stokes and Euler equations — claiming Millennium Prize Alternatives C and D.
The proof is correct, and this project does not dispute it. Read physically, the constructed flow leaves the domain of validity of the incompressible continuum model — at the single scale $\ell_* = \nu/c_s$ where Mach, Knudsen and Eckert numbers all become order one — a few picoseconds before the mathematical singularity. That is a statement about which model the theorem is about, not a refutation, and it says nothing about whether unforced real fluids can blow up (Clay Statement A remains open).
The research question behind the later versions is a "lock" chain: does something physical necessarily intervene where the construction goes? Each link, with its evidence and its honest status:
| Link | Claim | Evidence | Status |
|---|---|---|---|
| 1 | Any object with OpenAI's CandidateProperties exceeds every velocity-gradient bound arbitrarily close to $t=1$, so it leaves $\lvert\nabla u\rvert \lesssim c_s^2/\nu$ for every fluid and every choice of units | OpenAIAdmissibility.lean, stated on OpenAI's own definitions and built on their periodic-integration library | Proved, unconditional, standard axioms only (since v5.4.0) |
| 2 | On the construction's diffusive scaling ($\mathrm{Re}{\text{core}} = 1$), the Mach, Knudsen and Eckert limits are all reached together at $\ell* = \nu/c_s$, $t_* = \nu/c_s^2$ | CoreScaling.lean | Proved (an equality chain forced by the scaling hypotheses — no deeper physics) |
| 3 | $\ell_$ is the mean free path up to an O(1) constant: $\ell_/\lambda = \bar c/(2c_s) \approx 0.67$ for air | kinetic-theory derivation; $\ell_* = 45$ nm vs air mean free path $\approx 68$ nm | Derived, consistent with data (gases only) |
| 4 | At $\ell_*$ the hydrodynamic shear mode ends at $k\lambda=\sqrt{\pi/2}$; kinetic damping is below $\nu k^2$ and capped at $1/\tau$ | exact linear BGK spectrum (lock_k_kinetic_spectrum.py); KineticSpectralCap.lean; nonlinear Rust solver kinetic_lock_rs/ | Linear: exact. Nonlinear: null — a forced kinetic core is not arrested at that scale; its apparent stopping point follows the grid |
| 5 | The kinetic model is thermodynamically consistent (discrete H-theorem, conservation, positivity) | LatticeBGKEntropy.lean, NonlinearBGKEntropy.lean | Proved |
| 6 | Which physics a blow-up meets first depends on its route, by $\mathrm{Kn}=\mathrm{Ma}/\mathrm{Re}$. OpenAI's route ($\mathrm{Re}\approx1$): everything at $\ell_$. Inertial route ($\mathrm{Re}\to\infty$, Tao 2016): compressibility first, inside the continuum, at $\mathrm{Re},\ell_$. Bounded-velocity route (human-written forced Euler blow-up): viscosity first, at $\ell_*/\mathrm{Ma}$ | BlowupRegimeMap.lean | Proved (algebra, not PDE) |
| 7 | A compressible, heat-conducting gas driven by the same force: on OpenAI's route nothing stops the core before $\ell_*$ (it lags 14–25%); on the inertial route ($\mathrm{Re}\gtrsim16$) air locks at local Mach 0.70 however far the target is driven | compressible_core.py, THERMO_COMPRESSIBLE_LOCK_STUDY.md | Measured (1D continuum, grid-converged) and confirmed without a closure by molecular dynamics where the gas is a continuum (Re 16, 3 runs: local Mach 0.538 ± 0.011 vs 0.54 predicted beforehand; Re 32: 0.62–0.71); beyond that the axis becomes free-molecular. A lock on Mach number, not on velocity or core size. In a liquid (MD, 1 run) the core cavitates and the swirl at the cavity wall is capped at 1.77–1.87, below the hollow-vortex bound 2.07 — a genuine velocity bound, from a phase change |
| — | Withdrawn: "a Leray-α filter of width $\ell_*$ represents the fluid at its continuum limit" | LerayAlphaLinearization.lean: α does not appear in the linearized dynamics, which stay $\nu k^2$, above any kinetic cap | Refuted (paper §9.5) |
What the chain establishes: the construction necessarily passes the scale at which the hydrodynamic description ends. What it does not establish: that anything physical stops the collapse there.
Open gaps, stated plainly:
Details: 05_Community_Research_Directions/DUAL_SCALE_LOCK_PROGRAMME.md §8–9 · THERMO_COMPRESSIBLE_LOCK_STUDY.md · DIRECTION1_RESULTS.md · reproducible checks and their measured numbers: BENCHMARKS.md.
Welcome! If you are not a physicist or mathematician, start here. We have translated this complex scientific audit into accessible, highly visual materials to help everyone understand the clash between abstract AI mathematics and physical reality.

| # | Finding | Key Metric / Exponent |
|---|---|---|
| 1 | Intensive Local Energy Density Divergence: $e_{\text{local}} = \frac{1}{2}\rho|u|^2 \sim \tau^{-1.010}$ and global enstrophy $\Omega \sim \tau^{-0.515}$ diverge without bound | $\Delta T = u^2/c_p \sim \tau^{-1.010}$ — about 48 K at $Ma = 0.3$ and 540 K at $Ma = 1$ (not plasma): the decoupled-temperature assumption fails, no thermodynamic law is violated |
| 2 | Mach Number Self-Invalidation: incompressible NSE invalidate themselves when $Ma \ge 0.3$ | about 6.7 picoseconds before mathematical blow-up (dimensionless $\tau \approx 6.7 \times 10^{-14}$, physical $t = T\tau$ with $T = \ell_0^2/\nu = 100$ s; unit-free estimate $\nu/(0.3,c)^2 \approx 5$ ps). Compressibility, rarefaction and heating all become order one at a single scale $\ell_* = \nu/c \approx 0.7$ nm in water |
| 3 | Force without independent physical origin: the force is the smooth remainder of a co-designed $(u,p)$ — OpenAI's force_eq_activated_residual — after shear-amplified pulses have cancelled the singular part of the residual | The force seeds the pulses, it does not drive the collapse; a legitimate existence-proof technique, not a plain manufactured solution |
| 4 | Matrix Scaling & Non-Dimensionalization: moment-matching matrix $A = D B D$ has bounded non-dimensional condition number $\kappa(B) \approx 4.11 \times 10^5$ | $\kappa(B) \sim O(10^5)$ — raw $\kappa \sim 10^{28}$ was an unscaled dimensional artifact |
| 5 | Sub-Molecular Coherent Fine-Tuning (open question): Euler initial conditions would require implausibly fine-tuned coherence far below the molecular mean-free-path scale (~10⁻¹⁰–10⁻⁷ m), i.e. far below anything physically meaningful — not, as earlier drafts claimed, at the Planck scale (~10⁻³⁵ m, a quantum-gravity scale unrelated to fluid discreteness) | Whether such phased fluctuations survive molecular/thermal noise is an open question, not a demonstrated result |
Model-validity (admissibility) condition — The continuum, incompressible description of a real fluid holds only while the local vorticity stays below $|\omega| \lesssim c^2/\nu$ (about $2 \times 10^{12}\ \text{s}^{-1}$ in water, $8 \times 10^{9}\ \text{s}^{-1}$ in air): this single bound is equivalent to $Ma \lesssim 1$ together with $Kn \lesssim 1$. A solution that satisfies it on $[0,T)$ cannot blow up at $T$ — that is the Beale–Kato–Majda theorem, not a new axiom. The AI's construction has $|\omega| \sim \tau^{-1.005} \to \infty$ and crosses this bound a few picoseconds before the singularity. The formal counterpart is now proved in Lean on OpenAI's own objects with no extra hypothesis: every object with their
CandidatePropertiesexceeds every bound on $|\nabla u|$ arbitrarily close to $t=1$ (link 1 above). (An earlier version of this README quoted a global enstrophy ceiling "$\Omega_{\max} \approx 1.13 \times 10^{13}$"; that constant has no derivation and has been withdrawn.)
This analysis uses a Dual-Framework: Lean 4 for the mathematics, and explicit physical-validity predicates (Mach, Knudsen, Eckert bounds) for the physics. While the formal derivation is flawless, the flow it describes leaves the constitutive assumptions of the incompressible model (low Mach, continuum, decoupled temperature) a few picoseconds before the blow-up time.
| Criterion | Expected | Found |
|---|---|---|
sorry / admit in core proof | 0 | ✅ 0 |
Custom axiom bypasses in physics | 0 | ✅ 0 (the constructed flow is non-trivial: checked) |
| Force smoothness type | ContDiff ℝ ∞ | ✅ ContDiff ℝ ∞ |
| Sobolev weakening | None | ✅ None |
| Global L² energy bound | Uniform | ✅ ∃ E, ∀ t, kineticEnergy u t ≤ E |
These rows describe OpenAI's formalization. This project's own Lean files (ten files, 85 declarations checked with #print axioms, no sorry) are listed in 03_Lean4_Topological_Censorship/README.md.
Conclusion: The AI accurately and brilliantly navigated the Millennium Prize rulebook. The gap highlighted here is strictly physical, shedding light on the boundary between abstract mathematical exploration and real-world fluid dynamics.
OpenAI-NSE-Epistemic-Audit/
├── 01_Verification_Paper/ # Flagship paper (v5.8.0, 32 pp) + open peer review
│ ├── OpenAI_NSE_Verification.pdf
│ ├── OpenAI_NSE_Verification.tex
│ ├── PEER_REVIEW_2026-09-15.md
│ └── zenodo_push.py
├── 02_Empirical_Observation/ # Early Python/Rust toy models & DNS comparisons
│ ├── simu_sign_fragility_1D.py
│ ├── simu_frustration_Z3.py
│ ├── euler_counterdetonation/
│ └── DNS_Turbulence_Verification/
├── 03_Lean4_Topological_Censorship/ # Lean 4 (name kept for history) — see its README
│ └── src/
│ ├── OpenAIAdmissibility.lean # link 1, on OpenAI's own definitions (unconditional)
│ ├── CoreScaling.lean # link 2
│ ├── KineticSpectralCap.lean # link 4 (linear cap)
│ ├── LatticeBGKEntropy.lean # link 5
│ ├── NonlinearBGKEntropy.lean # link 5 (nonlinear step)
│ ├── BlowupRegimeMap.lean # regime map Kn = Ma/Re (OpenAI / Tao / forced Euler routes)
│ ├── LerayAlphaLinearization.lean # why the Leray-α "anchor at ℓ*" claim is withdrawn
│ ├── LerayAlphaFilter.lean, AlphaEnergyIdentity.lean
│ ├── TopologicalCensorship.lean, NSECensorship.lean, LeanMasterBridge.lean # legacy toys
│ └── drafts/ # unverified drafts (contain sorry/axiom)
├── 04_Thermodynamic_Censorship_Paper/ # Sept-12 draft, SUPERSEDED — kept for the record
├── 05_Community_Research_Directions/ # Lock programme, experiments, workstreams — see its README
│ ├── DUAL_SCALE_LOCK_PROGRAMME.md
│ ├── DIRECTION1_RESULTS.md
│ ├── THERMO_COMPRESSIBLE_LOCK_STUDY.md # regime map, compressible/thermal core, Mach lock
│ ├── experiments/ # 3D spectral solver, forced-core bed, compressible core, results/
│ └── kinetic_lock_rs/ # Rust discrete-velocity BGK solver (link 4 nonlinear test)
├── BENCHMARKS.md # Reproducible checks with measured numbers (54/54 at v5.5.0)
├── CHANGELOG.md # Versions, corrections and withdrawn claims
├── LEGAL_NOTICE_AND_CITIZEN_SCIENCE_DISCLAIMER.md
├── scripts/ # Directives 2–7 analyses & Extractors
│ ├── extract_limits_to_latex.py # Automated physical limit LaTeX extractor
│ ├── directive2_thermodynamic_paradox.py
│ ├── directive3_jacobian_instability.py
│ ├── directive4_gevrey_regularity.py
│ ├── directive5_mach_divergence.py
│ ├── directive6_thermal_instability.py
│ └── directive7_pre_singularity_simulation.py
├── dataset/ # Dataset artifacts
│ └── animations/ # Pre-singularity vortex animations
├── AUDIT_AND_IMPROVEMENT_PLAN.md # Historical working plan (Sept 2026); current state in CHANGELOG
└── .github/ # CI/CD Workflows for automated physical testing
👉 01_Verification_Paper/OpenAI_NSE_Verification.pdf
git clone https://github.com/xaviercallens/OpenAI-NSE-Epistemic-Audit
cd OpenAI-NSE-Epistemic-Audit/scripts
pip install numpy scipy sympy mpmath matplotlib
python directive5_mach_divergence.py # Mach number trajectory (Ma = 0.3 about 6.7 ps before blow-up)
python directive2_thermodynamic_paradox.py # Intensive scaling (-1.010 exponent)
python directive3_jacobian_instability.py # Non-dimensionalization (kappa ~ 4.11e5)
python directive4_gevrey_regularity.py # Analytical Gevrey index (s = 1.5)
python directive7_pre_singularity_simulation.py # Pre-singularity animated plots
All verified files use Lean v4.34.0-rc2 / Mathlib. The simplest route is OpenAI's own project, which has the matching toolchain and Mathlib cache:
git clone https://github.com/openai/NavierStokesAndEuler && cd NavierStokesAndEuler
lake exe cache get
lake build NavierStokes.PeriodicUniqueness # only needed for OpenAIAdmissibility.lean (3 files)
for f in CoreScaling LerayAlphaFilter LatticeBGKEntropy AlphaEnergyIdentity \
NonlinearBGKEntropy KineticSpectralCap OpenAIAdmissibility BlowupRegimeMap LerayAlphaLinearization; do
lake env lean <repo>/03_Lean4_Topological_Censorship/src/$f.lean # prints #print axioms
done
Do not build OpenAI's full library (~580 files); nothing here needs it. Expected output: no errors, and every #print axioms line reads [propext, Classical.choice, Quot.sound].
python3 -m pytest tests/ -q # Python solvers, forced-core bed, compressible core, kinetic spectrum
cd 05_Community_Research_Directions/kinetic_lock_rs && cargo test --release
scripts/run_benchmarks.sh --full # re-runs everything and compares with the committed numbers
See BENCHMARKS.md for every check with its expected number.
Left: enstrophy scaling of the construction against a dissipative reference — an illustration of the exponents, not a simulation of the construction, and no quantity in it is capped by physics. Right: animated collapse on the analytic scaling.
| Dimensionless τ (physical time $t = T\tau$, $T = \ell_0^2/\nu = 100$ s for water, $\ell_0 = 1$ cm) | Velocity |u| (m/s) | Mach Ma | Regime | |---|---|---|---| | 10⁰ (t = 100 s) | 10⁻⁴ | 6.7×10⁻⁸ | ✅ Incompressible | | 10⁻¹² (t = 100 ps) | 115 | 0.077 | ✅ Incompressible | | 6.7×10⁻¹⁴ (t ≈ 6.7 ps) | 450 | 0.30 | ❌ Limit breached | | 6.2×10⁻¹⁵ (t ≈ 0.6 ps) | 1500 | 1.00 | ❌ Transonic | | 9.0×10⁻¹⁶ (t ≈ 90 fs) | 3960 | 2.64 | ❌ Core radius ≈ molecular spacing (Kn ≈ 1) |
The velocity and Mach columns depend on $\ell_0$ only through a factor $(\ell_0^2/\nu t)^{1/200} \approx 1.2$; in unit-free form $u \simeq \sqrt{\nu/t}$, so $Ma = 0.3$ is reached at $t \simeq \nu/(0.3,c)^2 \approx 5$ ps whatever the initial vortex size.
| X_R | κ(A) [Raw Unscaled] | κ(B) [Non-Dimensionalized] | Status |
|---|---|---|---|
| 1 | 4.11 × 10⁵ | 4.11 × 10⁵ | Bounded |
| 100 | 2.36 × 10²⁰ | 4.11 × 10⁵ | Bounded |
| 1000 | 1.78 × 10²⁸ | 4.11 × 10⁵ | Bounded & Scale-Invariant |
To illustrate the dual-framework, we contrast the AI's scaling limits with a physical turbulence spectrum. The figures below are schematic: the "OpenAI snapshot" curve is a hand-placed spike drawn from the scaling exponents, not a computed spectrum of the construction (no numerical implementation of the 166-page construction exists).
05_Community_Research_Directions/experiments/noise_and_monitor.py) with one data point; it does not yet test the construction's own phase-locked pulses.simu_sign_fragility_1D.py), wide random phase jitter delays the cascade but does not arrest it; only a complete local decoupling of one shell arrests it. So the toy model does not, by itself, support the claim that thermal noise destroys the mechanism. Whether it does in the real construction (under Landau–Lifshitz fluctuating hydrodynamics) remains open and is not yet established.OpenAI's multi-agent formalization of the Navier-Stokes blow-up is a staggering computational achievement. It proves that Reinforcement Learning (RL) agents can navigate hyper-dimensional combinatorial search spaces and act as flawless syntactic compilers in Lean 4. They brilliantly solved the mathematician's problem.
However, unconstrained optimization in abstract mathematics will happily explore the edges of a model — producing theorems that hold for the equations while lying outside the equations' domain of physical validity. To advance from Automated Mathematics to true Scientific AI, we must anchor these massive theorem solvers to the phenomenological constraints of physical reality.
Inspired by Fields Medalist Terence Tao's vision of AI as a collaborative "gadgeteer" rather than an infallible oracle, we propose upgrading the current Bipartite (Neural ↔ Symbolic) loop to a Tripartite Neuro-Symbolic Architecture:
mathlib) verifies topological limits, norm bounds, and $C^\infty$ syntax.physlib / LeanFlow, only partially built) evaluates where a construction sits relative to the model's validity range.The Modus Operandi: If a proposed mathematical step compiles in Lean 4 but leaves the validity range of the model (Mach, Knudsen or Eckert bounds — equivalently $|\omega| \lesssim c^2/\nu$), the Empirical Engine labels the result as a statement about the mathematical model rather than about a physical fluid. It does not reject the proof, which remains correct; it records which model it is about. (Earlier drafts called this flagging proofs as "physically ill-typed"; that framing is withdrawn.)
We invite OpenAI, DeepMind, and the open-source community to pivot these massive multi-agent swarms toward physically grounded challenges:
(Read our full strategic manifesto: TAO_NEUROSYMBOLIC_SCIENTIFIC_AI_MANIFESTO.md)
To make our scientific audit more tangible (and entertaining), we've built a suite of visual tools and conceptual CFD simulations.
DUALSCALE_ASSESSMENT_AND_NEXT_DIRECTIONS.md. The validated 3D solver and its Taylor–Green benchmark are in 05_Community_Research_Directions/experiments/.scripts/pyfr_lobster_visualization.py is an illustrative visualization, not a physical result: no solver "shields" reality from a blow-up, and a regularized solver changes the model rather than testing it.Discussions are open to everyone — mathematicians, physicists, engineers, students, science journalists, and curious minds.
Whether you want to debate the boundary between abstract Sobolev spaces and fluid mechanics, report a local GPU simulation run, or ask a question about Lean 4 formal logic, you are welcome here!
| Thread Category | Discussion Thread | Focus & Topics |
|---|---|---|
| 🚀 Welcome | 🚀 Welcome Post & Overview | Research overview, resources, & paper links |
| 💬 Community | 💬 Community Introductions | Introduce yourself & your research background |
| ❓ Q&A | ❓ Q&A Megathread (Reddit & Community FAQs) | Community feedback (r/physics, r/math, r/MachineLearning) & answers |
| 💡 Challenges | 💡 Open Challenges (thread title predates the withdrawal of the "censorship" framing) | Lean 4 and physics challenges: validity bounds vs blow-up |
| 🎉 Showcase | 🎉 Show & Tell: Reproductions & OpenFOAM Runs | Share local GPU benchmarks, certificates, & visualizations |
All community members are invited to participate in the open GitHub Discussions above.
@misc{callens2026nse,
author = {Callens, Xavier and {MechanicaFluidorum Program}},
title = {The OpenAI Navier-Stokes and Euler Blow-Up Proofs:
A Physical Reading, Not a Physical Refutation},
year = {2026},
month = sep,
version = {5.8.0},
publisher = {Zenodo},
doi = {10.5281/zenodo.22838708},
url = {https://doi.org/10.5281/zenodo.22838708},
note = {SocrateAI Lab, MechanicaFluidorum Program. Concept DOI
10.5281/zenodo.22696717 resolves to the latest version.
Versions 2.0.0 (10.5281/zenodo.22725347, 22727801) carry
withdrawn claims; see CHANGELOG.md}
}
This work is licensed under Creative Commons Attribution 4.0 International (CC BY 4.0).
You are free to share and adapt the material for any purpose, provided appropriate credit is given.
"The AI has not solved the physicist's problem. It has solved the mathematician's problem and, in doing so, illuminated the precise location of the gap between them."
MechanicaFluidorum Program · SocrateAI Lab · 2026
Python
50.7%
TeX
16.3%
Lean
13.2%
Rust
13.2%
Jupyter Notebook
5.8%
Epistemic Audit of the OpenAI Navier-Stokes/Euler Lean 4 Blow-up Proof — Physical Vacuity, Thermodynamic Censorship & Structural Instability
See the codeNon-Profit Citizen Science Initiative for Neuro-Symbolic Science · MechanicaFluidorum Program · September 2026
📄 Read the Paper (PDF) · 💬 Join Discussions · 🏛️ Zenodo · 🤗 HuggingFace · ⚖️ Legal Notice

How to check the Lean claims, and what is not yet checkable from here. Every "verified" Lean file ends in
#print axioms, and the counts of verified declarations quoted below come from running those locally. Those transcripts are not currently committed to this repository, so from GitHub alone the counts are a self-report and should be read as one. To check them yourself, cloneopenai/NavierStokesAndEulerat the revision pinned inopenai_lean_audit_certificate.jsonand runlake env leanon each verified file; the axiom footprint printed at the foot of each is the actual claim. A continuous-integration badge used to sit above. It was removed on 2026-09-18 because every run of that workflow has ended instartup_failureand it therefore advertised a gate that has never executed, under a name this project has withdrawn.Note on earlier versions. In September 2026 this project dropped its original "physical vacuity"/"censorship" framing and its string-theory/T-duality motivation after community and scientific review. Claims withdrawn along the way (plasma temperatures, the raw 10²⁸ condition number as fragility, the global enstrophy constant, the T-duality link, v5.2.0's "dissipative kinetic lock", and v5.5.0's withdrawal of the Leray-α "physical anchor at ℓ*") are itemized in
CHANGELOG.mdand in Appendix A of the paper. Zenodo versions 2.0.0 (10.5281/zenodo.22725347,22727801) carry withdrawn claims and should not be cited.
In September 2026, an OpenAI multi-agent system produced a Lean 4 formalized proof of finite-time blow-up for the 3D Navier-Stokes and Euler equations — claiming Millennium Prize Alternatives C and D.
The proof is correct, and this project does not dispute it. Read physically, the constructed flow leaves the domain of validity of the incompressible continuum model — at the single scale $\ell_* = \nu/c_s$ where Mach, Knudsen and Eckert numbers all become order one — a few picoseconds before the mathematical singularity. That is a statement about which model the theorem is about, not a refutation, and it says nothing about whether unforced real fluids can blow up (Clay Statement A remains open).
The research question behind the later versions is a "lock" chain: does something physical necessarily intervene where the construction goes? Each link, with its evidence and its honest status:
| Link | Claim | Evidence | Status |
|---|---|---|---|
| 1 | Any object with OpenAI's CandidateProperties exceeds every velocity-gradient bound arbitrarily close to $t=1$, so it leaves $\lvert\nabla u\rvert \lesssim c_s^2/\nu$ for every fluid and every choice of units | OpenAIAdmissibility.lean, stated on OpenAI's own definitions and built on their periodic-integration library | Proved, unconditional, standard axioms only (since v5.4.0) |
| 2 | On the construction's diffusive scaling ($\mathrm{Re}{\text{core}} = 1$), the Mach, Knudsen and Eckert limits are all reached together at $\ell* = \nu/c_s$, $t_* = \nu/c_s^2$ | CoreScaling.lean | Proved (an equality chain forced by the scaling hypotheses — no deeper physics) |
| 3 | $\ell_$ is the mean free path up to an O(1) constant: $\ell_/\lambda = \bar c/(2c_s) \approx 0.67$ for air | kinetic-theory derivation; $\ell_* = 45$ nm vs air mean free path $\approx 68$ nm | Derived, consistent with data (gases only) |
| 4 | At $\ell_*$ the hydrodynamic shear mode ends at $k\lambda=\sqrt{\pi/2}$; kinetic damping is below $\nu k^2$ and capped at $1/\tau$ | exact linear BGK spectrum (lock_k_kinetic_spectrum.py); KineticSpectralCap.lean; nonlinear Rust solver kinetic_lock_rs/ | Linear: exact. Nonlinear: null — a forced kinetic core is not arrested at that scale; its apparent stopping point follows the grid |
| 5 | The kinetic model is thermodynamically consistent (discrete H-theorem, conservation, positivity) | LatticeBGKEntropy.lean, NonlinearBGKEntropy.lean | Proved |
| 6 | Which physics a blow-up meets first depends on its route, by $\mathrm{Kn}=\mathrm{Ma}/\mathrm{Re}$. OpenAI's route ($\mathrm{Re}\approx1$): everything at $\ell_$. Inertial route ($\mathrm{Re}\to\infty$, Tao 2016): compressibility first, inside the continuum, at $\mathrm{Re},\ell_$. Bounded-velocity route (human-written forced Euler blow-up): viscosity first, at $\ell_*/\mathrm{Ma}$ | BlowupRegimeMap.lean | Proved (algebra, not PDE) |
| 7 | A compressible, heat-conducting gas driven by the same force: on OpenAI's route nothing stops the core before $\ell_*$ (it lags 14–25%); on the inertial route ($\mathrm{Re}\gtrsim16$) air locks at local Mach 0.70 however far the target is driven | compressible_core.py, THERMO_COMPRESSIBLE_LOCK_STUDY.md | Measured (1D continuum, grid-converged) and confirmed without a closure by molecular dynamics where the gas is a continuum (Re 16, 3 runs: local Mach 0.538 ± 0.011 vs 0.54 predicted beforehand; Re 32: 0.62–0.71); beyond that the axis becomes free-molecular. A lock on Mach number, not on velocity or core size. In a liquid (MD, 1 run) the core cavitates and the swirl at the cavity wall is capped at 1.77–1.87, below the hollow-vortex bound 2.07 — a genuine velocity bound, from a phase change |
| — | Withdrawn: "a Leray-α filter of width $\ell_*$ represents the fluid at its continuum limit" | LerayAlphaLinearization.lean: α does not appear in the linearized dynamics, which stay $\nu k^2$, above any kinetic cap | Refuted (paper §9.5) |
What the chain establishes: the construction necessarily passes the scale at which the hydrodynamic description ends. What it does not establish: that anything physical stops the collapse there.
Open gaps, stated plainly:
Details: 05_Community_Research_Directions/DUAL_SCALE_LOCK_PROGRAMME.md §8–9 · THERMO_COMPRESSIBLE_LOCK_STUDY.md · DIRECTION1_RESULTS.md · reproducible checks and their measured numbers: BENCHMARKS.md.
Welcome! If you are not a physicist or mathematician, start here. We have translated this complex scientific audit into accessible, highly visual materials to help everyone understand the clash between abstract AI mathematics and physical reality.

| # | Finding | Key Metric / Exponent |
|---|---|---|
| 1 | Intensive Local Energy Density Divergence: $e_{\text{local}} = \frac{1}{2}\rho|u|^2 \sim \tau^{-1.010}$ and global enstrophy $\Omega \sim \tau^{-0.515}$ diverge without bound | $\Delta T = u^2/c_p \sim \tau^{-1.010}$ — about 48 K at $Ma = 0.3$ and 540 K at $Ma = 1$ (not plasma): the decoupled-temperature assumption fails, no thermodynamic law is violated |
| 2 | Mach Number Self-Invalidation: incompressible NSE invalidate themselves when $Ma \ge 0.3$ | about 6.7 picoseconds before mathematical blow-up (dimensionless $\tau \approx 6.7 \times 10^{-14}$, physical $t = T\tau$ with $T = \ell_0^2/\nu = 100$ s; unit-free estimate $\nu/(0.3,c)^2 \approx 5$ ps). Compressibility, rarefaction and heating all become order one at a single scale $\ell_* = \nu/c \approx 0.7$ nm in water |
| 3 | Force without independent physical origin: the force is the smooth remainder of a co-designed $(u,p)$ — OpenAI's force_eq_activated_residual — after shear-amplified pulses have cancelled the singular part of the residual | The force seeds the pulses, it does not drive the collapse; a legitimate existence-proof technique, not a plain manufactured solution |
| 4 | Matrix Scaling & Non-Dimensionalization: moment-matching matrix $A = D B D$ has bounded non-dimensional condition number $\kappa(B) \approx 4.11 \times 10^5$ | $\kappa(B) \sim O(10^5)$ — raw $\kappa \sim 10^{28}$ was an unscaled dimensional artifact |
| 5 | Sub-Molecular Coherent Fine-Tuning (open question): Euler initial conditions would require implausibly fine-tuned coherence far below the molecular mean-free-path scale (~10⁻¹⁰–10⁻⁷ m), i.e. far below anything physically meaningful — not, as earlier drafts claimed, at the Planck scale (~10⁻³⁵ m, a quantum-gravity scale unrelated to fluid discreteness) | Whether such phased fluctuations survive molecular/thermal noise is an open question, not a demonstrated result |
Model-validity (admissibility) condition — The continuum, incompressible description of a real fluid holds only while the local vorticity stays below $|\omega| \lesssim c^2/\nu$ (about $2 \times 10^{12}\ \text{s}^{-1}$ in water, $8 \times 10^{9}\ \text{s}^{-1}$ in air): this single bound is equivalent to $Ma \lesssim 1$ together with $Kn \lesssim 1$. A solution that satisfies it on $[0,T)$ cannot blow up at $T$ — that is the Beale–Kato–Majda theorem, not a new axiom. The AI's construction has $|\omega| \sim \tau^{-1.005} \to \infty$ and crosses this bound a few picoseconds before the singularity. The formal counterpart is now proved in Lean on OpenAI's own objects with no extra hypothesis: every object with their
CandidatePropertiesexceeds every bound on $|\nabla u|$ arbitrarily close to $t=1$ (link 1 above). (An earlier version of this README quoted a global enstrophy ceiling "$\Omega_{\max} \approx 1.13 \times 10^{13}$"; that constant has no derivation and has been withdrawn.)
This analysis uses a Dual-Framework: Lean 4 for the mathematics, and explicit physical-validity predicates (Mach, Knudsen, Eckert bounds) for the physics. While the formal derivation is flawless, the flow it describes leaves the constitutive assumptions of the incompressible model (low Mach, continuum, decoupled temperature) a few picoseconds before the blow-up time.
| Criterion | Expected | Found |
|---|---|---|
sorry / admit in core proof | 0 | ✅ 0 |
Custom axiom bypasses in physics | 0 | ✅ 0 (the constructed flow is non-trivial: checked) |
| Force smoothness type | ContDiff ℝ ∞ | ✅ ContDiff ℝ ∞ |
| Sobolev weakening | None | ✅ None |
| Global L² energy bound | Uniform | ✅ ∃ E, ∀ t, kineticEnergy u t ≤ E |
These rows describe OpenAI's formalization. This project's own Lean files (ten files, 85 declarations checked with #print axioms, no sorry) are listed in 03_Lean4_Topological_Censorship/README.md.
Conclusion: The AI accurately and brilliantly navigated the Millennium Prize rulebook. The gap highlighted here is strictly physical, shedding light on the boundary between abstract mathematical exploration and real-world fluid dynamics.
OpenAI-NSE-Epistemic-Audit/
├── 01_Verification_Paper/ # Flagship paper (v5.8.0, 32 pp) + open peer review
│ ├── OpenAI_NSE_Verification.pdf
│ ├── OpenAI_NSE_Verification.tex
│ ├── PEER_REVIEW_2026-09-15.md
│ └── zenodo_push.py
├── 02_Empirical_Observation/ # Early Python/Rust toy models & DNS comparisons
│ ├── simu_sign_fragility_1D.py
│ ├── simu_frustration_Z3.py
│ ├── euler_counterdetonation/
│ └── DNS_Turbulence_Verification/
├── 03_Lean4_Topological_Censorship/ # Lean 4 (name kept for history) — see its README
│ └── src/
│ ├── OpenAIAdmissibility.lean # link 1, on OpenAI's own definitions (unconditional)
│ ├── CoreScaling.lean # link 2
│ ├── KineticSpectralCap.lean # link 4 (linear cap)
│ ├── LatticeBGKEntropy.lean # link 5
│ ├── NonlinearBGKEntropy.lean # link 5 (nonlinear step)
│ ├── BlowupRegimeMap.lean # regime map Kn = Ma/Re (OpenAI / Tao / forced Euler routes)
│ ├── LerayAlphaLinearization.lean # why the Leray-α "anchor at ℓ*" claim is withdrawn
│ ├── LerayAlphaFilter.lean, AlphaEnergyIdentity.lean
│ ├── TopologicalCensorship.lean, NSECensorship.lean, LeanMasterBridge.lean # legacy toys
│ └── drafts/ # unverified drafts (contain sorry/axiom)
├── 04_Thermodynamic_Censorship_Paper/ # Sept-12 draft, SUPERSEDED — kept for the record
├── 05_Community_Research_Directions/ # Lock programme, experiments, workstreams — see its README
│ ├── DUAL_SCALE_LOCK_PROGRAMME.md
│ ├── DIRECTION1_RESULTS.md
│ ├── THERMO_COMPRESSIBLE_LOCK_STUDY.md # regime map, compressible/thermal core, Mach lock
│ ├── experiments/ # 3D spectral solver, forced-core bed, compressible core, results/
│ └── kinetic_lock_rs/ # Rust discrete-velocity BGK solver (link 4 nonlinear test)
├── BENCHMARKS.md # Reproducible checks with measured numbers (54/54 at v5.5.0)
├── CHANGELOG.md # Versions, corrections and withdrawn claims
├── LEGAL_NOTICE_AND_CITIZEN_SCIENCE_DISCLAIMER.md
├── scripts/ # Directives 2–7 analyses & Extractors
│ ├── extract_limits_to_latex.py # Automated physical limit LaTeX extractor
│ ├── directive2_thermodynamic_paradox.py
│ ├── directive3_jacobian_instability.py
│ ├── directive4_gevrey_regularity.py
│ ├── directive5_mach_divergence.py
│ ├── directive6_thermal_instability.py
│ └── directive7_pre_singularity_simulation.py
├── dataset/ # Dataset artifacts
│ └── animations/ # Pre-singularity vortex animations
├── AUDIT_AND_IMPROVEMENT_PLAN.md # Historical working plan (Sept 2026); current state in CHANGELOG
└── .github/ # CI/CD Workflows for automated physical testing
👉 01_Verification_Paper/OpenAI_NSE_Verification.pdf
git clone https://github.com/xaviercallens/OpenAI-NSE-Epistemic-Audit
cd OpenAI-NSE-Epistemic-Audit/scripts
pip install numpy scipy sympy mpmath matplotlib
python directive5_mach_divergence.py # Mach number trajectory (Ma = 0.3 about 6.7 ps before blow-up)
python directive2_thermodynamic_paradox.py # Intensive scaling (-1.010 exponent)
python directive3_jacobian_instability.py # Non-dimensionalization (kappa ~ 4.11e5)
python directive4_gevrey_regularity.py # Analytical Gevrey index (s = 1.5)
python directive7_pre_singularity_simulation.py # Pre-singularity animated plots
All verified files use Lean v4.34.0-rc2 / Mathlib. The simplest route is OpenAI's own project, which has the matching toolchain and Mathlib cache:
git clone https://github.com/openai/NavierStokesAndEuler && cd NavierStokesAndEuler
lake exe cache get
lake build NavierStokes.PeriodicUniqueness # only needed for OpenAIAdmissibility.lean (3 files)
for f in CoreScaling LerayAlphaFilter LatticeBGKEntropy AlphaEnergyIdentity \
NonlinearBGKEntropy KineticSpectralCap OpenAIAdmissibility BlowupRegimeMap LerayAlphaLinearization; do
lake env lean <repo>/03_Lean4_Topological_Censorship/src/$f.lean # prints #print axioms
done
Do not build OpenAI's full library (~580 files); nothing here needs it. Expected output: no errors, and every #print axioms line reads [propext, Classical.choice, Quot.sound].
python3 -m pytest tests/ -q # Python solvers, forced-core bed, compressible core, kinetic spectrum
cd 05_Community_Research_Directions/kinetic_lock_rs && cargo test --release
scripts/run_benchmarks.sh --full # re-runs everything and compares with the committed numbers
See BENCHMARKS.md for every check with its expected number.
Left: enstrophy scaling of the construction against a dissipative reference — an illustration of the exponents, not a simulation of the construction, and no quantity in it is capped by physics. Right: animated collapse on the analytic scaling.
| Dimensionless τ (physical time $t = T\tau$, $T = \ell_0^2/\nu = 100$ s for water, $\ell_0 = 1$ cm) | Velocity |u| (m/s) | Mach Ma | Regime | |---|---|---|---| | 10⁰ (t = 100 s) | 10⁻⁴ | 6.7×10⁻⁸ | ✅ Incompressible | | 10⁻¹² (t = 100 ps) | 115 | 0.077 | ✅ Incompressible | | 6.7×10⁻¹⁴ (t ≈ 6.7 ps) | 450 | 0.30 | ❌ Limit breached | | 6.2×10⁻¹⁵ (t ≈ 0.6 ps) | 1500 | 1.00 | ❌ Transonic | | 9.0×10⁻¹⁶ (t ≈ 90 fs) | 3960 | 2.64 | ❌ Core radius ≈ molecular spacing (Kn ≈ 1) |
The velocity and Mach columns depend on $\ell_0$ only through a factor $(\ell_0^2/\nu t)^{1/200} \approx 1.2$; in unit-free form $u \simeq \sqrt{\nu/t}$, so $Ma = 0.3$ is reached at $t \simeq \nu/(0.3,c)^2 \approx 5$ ps whatever the initial vortex size.
| X_R | κ(A) [Raw Unscaled] | κ(B) [Non-Dimensionalized] | Status |
|---|---|---|---|
| 1 | 4.11 × 10⁵ | 4.11 × 10⁵ | Bounded |
| 100 | 2.36 × 10²⁰ | 4.11 × 10⁵ | Bounded |
| 1000 | 1.78 × 10²⁸ | 4.11 × 10⁵ | Bounded & Scale-Invariant |
To illustrate the dual-framework, we contrast the AI's scaling limits with a physical turbulence spectrum. The figures below are schematic: the "OpenAI snapshot" curve is a hand-placed spike drawn from the scaling exponents, not a computed spectrum of the construction (no numerical implementation of the 166-page construction exists).
05_Community_Research_Directions/experiments/noise_and_monitor.py) with one data point; it does not yet test the construction's own phase-locked pulses.simu_sign_fragility_1D.py), wide random phase jitter delays the cascade but does not arrest it; only a complete local decoupling of one shell arrests it. So the toy model does not, by itself, support the claim that thermal noise destroys the mechanism. Whether it does in the real construction (under Landau–Lifshitz fluctuating hydrodynamics) remains open and is not yet established.OpenAI's multi-agent formalization of the Navier-Stokes blow-up is a staggering computational achievement. It proves that Reinforcement Learning (RL) agents can navigate hyper-dimensional combinatorial search spaces and act as flawless syntactic compilers in Lean 4. They brilliantly solved the mathematician's problem.
However, unconstrained optimization in abstract mathematics will happily explore the edges of a model — producing theorems that hold for the equations while lying outside the equations' domain of physical validity. To advance from Automated Mathematics to true Scientific AI, we must anchor these massive theorem solvers to the phenomenological constraints of physical reality.
Inspired by Fields Medalist Terence Tao's vision of AI as a collaborative "gadgeteer" rather than an infallible oracle, we propose upgrading the current Bipartite (Neural ↔ Symbolic) loop to a Tripartite Neuro-Symbolic Architecture:
mathlib) verifies topological limits, norm bounds, and $C^\infty$ syntax.physlib / LeanFlow, only partially built) evaluates where a construction sits relative to the model's validity range.The Modus Operandi: If a proposed mathematical step compiles in Lean 4 but leaves the validity range of the model (Mach, Knudsen or Eckert bounds — equivalently $|\omega| \lesssim c^2/\nu$), the Empirical Engine labels the result as a statement about the mathematical model rather than about a physical fluid. It does not reject the proof, which remains correct; it records which model it is about. (Earlier drafts called this flagging proofs as "physically ill-typed"; that framing is withdrawn.)
We invite OpenAI, DeepMind, and the open-source community to pivot these massive multi-agent swarms toward physically grounded challenges:
(Read our full strategic manifesto: TAO_NEUROSYMBOLIC_SCIENTIFIC_AI_MANIFESTO.md)
To make our scientific audit more tangible (and entertaining), we've built a suite of visual tools and conceptual CFD simulations.
DUALSCALE_ASSESSMENT_AND_NEXT_DIRECTIONS.md. The validated 3D solver and its Taylor–Green benchmark are in 05_Community_Research_Directions/experiments/.scripts/pyfr_lobster_visualization.py is an illustrative visualization, not a physical result: no solver "shields" reality from a blow-up, and a regularized solver changes the model rather than testing it.Discussions are open to everyone — mathematicians, physicists, engineers, students, science journalists, and curious minds.
Whether you want to debate the boundary between abstract Sobolev spaces and fluid mechanics, report a local GPU simulation run, or ask a question about Lean 4 formal logic, you are welcome here!
| Thread Category | Discussion Thread | Focus & Topics |
|---|---|---|
| 🚀 Welcome | 🚀 Welcome Post & Overview | Research overview, resources, & paper links |
| 💬 Community | 💬 Community Introductions | Introduce yourself & your research background |
| ❓ Q&A | ❓ Q&A Megathread (Reddit & Community FAQs) | Community feedback (r/physics, r/math, r/MachineLearning) & answers |
| 💡 Challenges | 💡 Open Challenges (thread title predates the withdrawal of the "censorship" framing) | Lean 4 and physics challenges: validity bounds vs blow-up |
| 🎉 Showcase | 🎉 Show & Tell: Reproductions & OpenFOAM Runs | Share local GPU benchmarks, certificates, & visualizations |
All community members are invited to participate in the open GitHub Discussions above.
@misc{callens2026nse,
author = {Callens, Xavier and {MechanicaFluidorum Program}},
title = {The OpenAI Navier-Stokes and Euler Blow-Up Proofs:
A Physical Reading, Not a Physical Refutation},
year = {2026},
month = sep,
version = {5.8.0},
publisher = {Zenodo},
doi = {10.5281/zenodo.22838708},
url = {https://doi.org/10.5281/zenodo.22838708},
note = {SocrateAI Lab, MechanicaFluidorum Program. Concept DOI
10.5281/zenodo.22696717 resolves to the latest version.
Versions 2.0.0 (10.5281/zenodo.22725347, 22727801) carry
withdrawn claims; see CHANGELOG.md}
}
This work is licensed under Creative Commons Attribution 4.0 International (CC BY 4.0).
You are free to share and adapt the material for any purpose, provided appropriate credit is given.
"The AI has not solved the physicist's problem. It has solved the mathematician's problem and, in doing so, illuminated the precise location of the gap between them."
MechanicaFluidorum Program · SocrateAI Lab · 2026
Python
50.7%
TeX
16.3%
Lean
13.2%
Rust
13.2%
Jupyter Notebook
5.8%