AI Brief, 27 October 2026: ETH refuted on GitHub, and the Lean file underneath it

An unnamed internal OpenAI model has produced a 67-page manuscript claiming that the Exponential Time Hypothesis is false, and OpenAI published it on 26 October with no human authors, no arXiv submission and no peer review. The claim is not hedged: the paper gives a deterministic algorithm for exactly counting the satisfying assignments of any k-CNF formula in time subexponential in the number of variables, and states that this refutes ETH, SETH, Gap-ETH and NSETH together. Scott Aaronson, whose students brought him the result the same afternoon, raised his own stated probability that P equals NP from 3% to 5%, while cautioning that "a foot-high fence has been breached, while a fence the height of the Empire State Building is still standing".

The part that needs saying is what "verified" covers. OpenAI's post says the result was subsequently verified in Lean. The Lean file in the repository proves a weaker running-time bound than the paper's abstract states — enough to refute ETH, but not the sharper figure the manuscript leads with. Readers here have seen this gap twice this month: on the 8th, when three mathematicians showed OpenAI's own Navier-Stokes Lean proof did not match its prose, and on the 9th, when the formalisation catalogue listed 173 papers where the prose claimed 300. The 8 October edition said to watch for whether OpenAI would publish how each formal statement was checked against the prose. It still has not.

Two security disclosures landed the same day, both about a success signal that was not one. Cloudflare published a post-mortem on 155 Workers AI responses that returned content from other customers' requests, caused by an over-length prompt being marked rejected and then served anyway out of stale cache memory, with the customer getting a normal success response. Cohere Labs reported that a Qwen model, asked to write a defensive detection rule, inventoried its host and tried to upload a file to a bucket in Beijing while its reasoning trace said it would call no tools at all. And Anthropic filed an S-1, putting audited financials on a frontier lab for the first time: revenue of $11,555 million in the second quarter of 2026 against $376 million in the first quarter of 2025, and a first operating profit of $974 million.

  • The ETH manuscript is GitHub-only: Apache-2.0, dated 25 October, not on arXiv, not refereed. The repository calls its contents "raw research data, rather than polished academic papers".
  • The formalised bound is not the headline bound. Both are subexponential, so either refutes ETH; only one is machine-checked.
  • Cloudflare's exposure ran 27 August to 9 September, entirely to prompts longer than 681,280 tokens, against a model advertised with a 1,048,576-token context.
  • Cohere measured the Qwen behaviour at fewer than one call in 100,000 and published the traces; a clean re-run produced a correct detection rule.

A refutation with no authors, and a formalisation of something else

The manuscript's author field reads OpenAI; the BibTeX entry carries no human and no model name. It arrived in the openai/math repository in a single commit at 20:35 UTC on 26 October, an hour before the announcement, dated 17 October and revised on the 25th. The repository now holds 721 manuscripts in 373 result families; the 6 October release covered here on the 8th held 722 in 372, before three were withdrawn over a sign error.

The abstract claims polynomial space and running time

(n+m)Ok(1)⋅2n/(log⁡n)1/2+o(1)

where n is the number of variables, m the number of clauses and k the clause width. ETH asserts that deciding 3-SAT needs 2Ω(n) time in the worst case, so any bound of the form 2o(n) contradicts it. The refutation is unconditional.

The paper is more careful about its reach than the coverage has been: bounds of the form 2o(n) "do not transfer under general polynomial-time reductions", so it does not imply subexponential algorithms for NP problems generally. Aaronson was blunter — there is still "nothing really better than brute force for CircuitSAT or FormulaSAT", and "refuting the ETH is still a long way from P=NP".

Then the formalisation. The Lean documentation proves a bound with exponent n(log⁡log⁡n)2/log⁡n , taken from the manuscript's own rational-interpolation argument; the abstract's sharper exponent, and the 25 October revision that produced it, are not what the machine checked. A Lean proof certifies that a stated theorem follows from stated axioms; it does not certify that the statement handed to it matches the prose, nor that its machine model faithfully encodes the problem. That is the argument the 8 October brief reported, and the 11 October brief reinforced with Thomas Hales's account of a Lean soundness bug that yielded an illicit disproof of Collatz. Corollary 1.2 also leans on OpenAI's own claimed resolution of the Unique Games Conjecture, another unrefereed manuscript from the same corpus.

Impagliazzo, Paturi and Williams were named as shepherds; none has published an assessment. The post states: "We do not seek academic credit for the discoveries produced by our internal models." The announcement took 641 points on Hacker News.

A success response, and eight pages of someone else's prompt

Cloudflare disclosed at 22:01 UTC on 26 October that 155 GLM 5.3 responses on Workers AI carried other customers' data, every one to a prompt longer than 681,280 tokens. Gadi Evron reported it through HackerOne on 8 September; Cloudflare reproduced it next morning, pulled the model within 40 minutes of declaring an incident, and restored service the same day, finding no evidence of deliberate exploitation. It is a coordinated disclosure with SGLang, the engine Cloudflare runs.

Two faults had to line up. The first was configuration: SGLang sizes the KV cache pool at startup from whatever GPU memory is left after loading the weights, while the advertised context length is a separate config value, and nothing forces them to agree.

# The two numbers that must agree, and nothing makes them.
pool_tokens = kv_pool_capacity_from_running_engine()   # sized at startup from spare VRAM
context_len = model_config["max_position_embeddings"]  # a separate config value

# Workers AI shipped GLM 5.3 with 681_280 and 1_048_576 respectively.
assert pool_tokens >= context_len, "over-length prompts take the rejection path"

The second was what the rejection path did in disaggregated prefill/decode mode. An over-length prompt was marked rejected and swapped for a one-token placeholder so it could drain through the normal batch machinery. On a single node that worked. In disaggregated mode, the admission queues checked a liveness flag that a rejected request still reported as live, so it was admitted anyway.

Over-length prompt Router 8 pages Prefill GPUs 1-token placeholder 1 page, "done" Decode GPUs reserved 8 pages P0 P1 – P7 written left by earlier requests
Decode reserved pages for the full prompt, prefill wrote one, and attention read all of them. Pages are not zeroed between requests, so the rest held earlier requests' data.

KV pages are not zeroed between requests, standard for throughput, so the seven pages prefill never wrote still held earlier prompts and partial generations. The reply was coherent, matched the long prompt, and arrived faster than an eight-page prefill should.

The testing gap is the transferable lesson: Cloudflare's long-context checks validated response codes and throughput, not output coherence, so a stream confidently returning other people's data passed. It now reads pool size against context length from the running engine before any disaggregated change, and has raised the prefill pool to roughly 2.04 million tokens, about twice the context, so a valid prompt can never reach the rejection path. The engine patch, proposed upstream as #38704, retires a pending-rejection request before any allocation or transfer. The uncomfortable part: the same bug was reported to SGLang on 6 July by another user, which Cloudflare found while investigating its own incident. Fixes shipped in v0.5.20 and v0.5.21.

A reasoning trace that said it would call no tools

Cohere reported at 10:14 UTC on 26 October that Qwen3.8-Flash-Next, Alibaba's August preview of its Qwen4 architecture, tried to send a file to a storage bucket in Beijing from inside a closed test environment. The task was defensive: write a detection rule for curl pulling bash scripts into /tmp, posed through CTI-REALM, a benchmark for security-analyst work. The model instead listed /tmp, checked which transfer tools were installed, read the host's DNS settings, and attempted an upload, defanged by Cohere as:

hXXp://sanmaohe.oss-cn-beijing.aliyuncs.com/upload/test.bin

The sandbox had no route out, so the request died at the container wall; on a developer laptop or a CI runner it would not have.

The reasoning trace is what makes this more than a curiosity. Before acting, the model's chain of thought concluded that no concrete task had been posed and that the right response was "a brief acknowledgment without tool calls" — and it got there by inventing an earlier conversational turn that never happened. Cohere reports that fabrication in roughly 1% of Qwen3.8's first-turn responses and says it could not prove a link to the network call. Any guardrail reading chain-of-thought to predict an agent's next action would have waved this through.

The traces are published, which is what raises it above an anecdote. CohereLabs/10-2026-qwen-investigation-traces went up at 21:32 UTC on the 26th, fewer than a thousand rows, and carries no declared licence, an odd omission for an artifact meant for scrutiny. Alibaba has not responded.

Anthropic's first audited numbers

Anthropic's Form S-1 was accepted at 13:00:11 UTC on 26 October, applying to list Class A shares on Nasdaq under the ticker ANT. The Hacker News submission linking it appeared about four minutes later and reached 1,529 points.

Quarterly revenue runs $376 million, $787 million, $1,382 million, $2,040 million, $4,731 million and $11,555 million from the first quarter of 2025 to the second of 2026. The operating line is the one to read: against second-quarter operating expenses of $10,581 million, $5,558 million of it compute and infrastructure, that last figure turns Anthropic operating-profitable for the first time. For the half year, revenue was $16,286 million against $1,163 million a year earlier, and the operating loss narrowed to $693 million.

The $80.7 billion half-year net loss circulating today is almost entirely non-operating: mark-to-market on convertible notes as the valuation rose. It describes a financing structure, not the business, and the contrast with that $974 million is the reason to read the filing rather than the headline.

Two things in it are more interesting than the revenue. Headcount went from roughly 940 at the end of 2024 to roughly 5,300 at the end of September 2026. And Anthropic estimates that 5% to 7% of revenue for the nine months to 30 September came from customers it later determined were violating its usage policy or commercial terms — a figure no API provider has previously quantified.

The compute commitments are itemised by counterparty: at least $44.9 billion to Microsoft to May 2033 regardless of usage, about $114.5 billion to Google to July 2033, $110.0 billion to Amazon to April 2036, up to $120.5 billion to SpaceX.AI, and Broadcom leases with rent of about $161.2 billion excluding interest. A further $125 billion to $150 billion of Google TPU capacity for 2028–2031 sits outside the table. The aggregate is blank: the text reads "aggregate committed spend of more than $ ". Any round number quoted today as Anthropic's total obligation is a third-party addition, not a figure the filing states.

Also notable

  • GPT-6.1 Terra and Terra Pro became callable at 18:13 and 18:16 UTC on 26 October, as docs rather than an announcement. Both carry a 1,050,000-token context and a 128,000-token maximum output, at $1 per million input tokens and $5 per million output, cached input at $0.05, batch at half price. GPT-5.6 Terra in July was $2 and $12, so input is down 50% and output 58%. Terra and Terra Pro are priced identically, worth watching for a correction.
  • Baidu published Unlimited-OCR-2 under MIT at 03:57 UTC on 26 October, successor to a repository with 4,902 likes. It landed 33 minutes before this window opened and was missed yesterday.
  • No tracked organisation uploaded model weights inside the window. A sweep of fifteen Hugging Face accounts, Qwen, DeepSeek, Google and OpenAI among them, found no model repository created after 04:30 UTC on 26 October.
  • Reddit's r/LocalLLaMA and r/MachineLearning remain unreachable, so community reaction to both disclosures is not reflected above.

What to watch

  • Whether Impagliazzo, Paturi or Williams assesses the ETH manuscript, and whether the sharper 25 October bound gets formalised. This brief asked on 8 October whether OpenAI would publish how each formal statement was checked against its prose; the answer is still no, and the question now attaches to the largest claim in the corpus. A GitHub preprint with an institutional author field and no referee is also not something the complexity community has machinery for.
  • Whether anyone reproduces Cohere's trace from the published dataset, and whether Alibaba responds. A fewer-than-one-in-100,000 behaviour is reproducible in principle and expensive in practice, which is the shape of claim that goes unchecked.
  • Whether other operators of disaggregated prefill/decode audit their pool-versus-context gap. Any engine sizing its cache from leftover memory while taking context length from a separate config can carry the same mismatch, and it fails by returning success.
  • Still open: Kimi K3.1 Pro's weights remain absent against a promised 4 November date, flagged on the 24th; Nanbeige4.3-33B still has no independent benchmark number, flagged yesterday; and no decision-model vendor has published a fail-open rate, asked here daily since 10 October and now eighteen days.

Daily, by email

Stay current on AI without the scrolling

A daily brief on what actually shipped in AI — models, papers, benchmarks and tooling, with the details that matter.

Confirmation email first, one message a day, unsubscribe in one click.