Skip to content

Signals/ Claude & Anthropic/ Reel /

Claude Just Proved 123 Code Libraries Won't Crash (Not Tested. Proved.)

Anthropic and Theorem had Claude write machine-checked proofs that 239 fuzz tests across 123 open-source libraries can't crash. What was proved, the bugs it found on the way, the limits, and how maintainers can sign up.

Cover of the free Proof-Checked Code Guide

Free guide · 7 pages · PDF

Proof-checked code, in plain English

What a formal proof is, what this one does and doesn't promise, how to check whether a library you use is covered, and how a maintainer signs a project up.

⬇ Download the PDF

On October 22, 2026, Anthropic published a research write-up with a strong claim: Claude wrote machine-checked proofs that 239 fuzz tests across 123 open-source libraries can never crash, for any input under 64 MB. The proofs work on the compiled machine code itself, and a separate proof checker confirms every line, so nobody has to take Claude’s word for it.

Illustration: a glowing cube holding firm while a storm of sharp shards explodes around it

Tests vs proofs

Software is usually checked with tests. A fuzzer is a test engine that throws huge numbers of random and mutated inputs at a program, looking for one that makes it crash. It finds a lot, but it can only try the inputs it happens to generate. Anthropic’s write-up notes that fuzzers usually cap inputs around 1 MB and can’t promise they’ve reached every path through the code.

A formal proof is different. It’s a mathematical argument that the program behaves correctly for every input in a defined range, not just the ones someone tried. Proofs have always been slow and expensive to write: Anthropic points out that the seL4 operating system kernel took 2 person-years to build and 20 person-years to verify. That cost is why formal verification has mostly been used for things like aircraft software.

What Claude proved

Illustration: a glowing chain of links stretching down into a dark circuit board

Anthropic worked with Theorem (theorem.dev), its collaborator on the project. They took fuzz tests from Google’s OSS-Fuzz project, compiled the libraries to RISC-V machine code, and turned each test into a statement to prove: “this test never crashes for any input under 64 MB.”

Anthropic: over a few weeks Claude patched the bugs it found and proved there are no crashes on any input up to 64 MB for 239 entry points across 123 OSS-Fuzz libraries, about 180 million lines of Rocq

Over a few weeks, Claude:

  • proved no crashes for 239 entry points across 123 libraries
  • wrote about 180 million lines of proof in Rocq, a proof language, with a typical proof around 600,000 lines
  • covered binaries with a median of 18,000 RISC-V instructions

Proving “this test never crashes” can prove more than it sounds. Some fuzz tests check that compressing and then decompressing gives back the original. If that test can never crash, the round trip always works.

The bugs it found

Illustration: a magnifying glass over a dusty circuit board revealing a glowing hidden bug

A proof only goes through if the code is actually correct, so every failed attempt points at a possible bug. When Claude hit one, it patched the code and kept proving. Anthropic says these attempts surfaced hundreds of bugs, including ones a fuzzer would be unlikely to find: an out-of-bounds write in a decompressor that only showed up on about 20 MB inputs with one rare layout, and an image-decoder read that needed a 64 MB input and over 2 GB of memory.

Anthropic: in one critical application they discovered a previously unknown logic bug that had been latent for more than a decade; on a widely used PDF reader they found as many security bugs in one week as are usually reported in a year

In separate verification experiments described in the same post, Claude found a logic bug in a widely used application that had gone unnoticed for more than a decade, and turned up as many security bugs in a PDF reader in one week as usually get reported in a year.

Why you don’t have to trust Claude

Nobody reads 180 million lines of proof. They don’t need to. The Rocq proof checker mechanically checks that each proof really proves the statement. What you still have to trust is short: the models of RISC-V and Linux, the exact statements that were proved, and the checker itself.

Anthropic: virtually none of the proof code needs to be manually reviewed; the Rocq proof checker ensures the spec is satisfied by the proof

The catch

The guarantee is real but narrow, and Anthropic says so plainly: this “doesn’t mean these libraries contain no bugs.”

  • It covers inputs under 64 MB, and assumes a single-threaded static program with a fixed memory budget on a RISC-V CPU running Linux, as modeled. That isn’t the exact build most people run.
  • It proves “no crash” for the fuzz tests that were proved. Not every entry point was, and a logic bug that never crashes can still be there.
  • These are Anthropic’s and Theorem’s own research results. They’ve published a subset of the proofs so others can check them, and held back proofs that could reveal unpatched bugs.
  • It still doesn’t replace testing. Keep your tests and your fuzzers.
Anthropic: proofs assume the program runs as a single-threaded static binary with a fixed memory budget on a RISC-V CPU using Linux

How to try it

Illustration: a relaxed maintainer beside a glowing gold seal with a check mark

If you maintain an open-source project, Theorem is offering to run the same pipeline for other projects, and it published a Claude Code skill called add-project in its oss-verify repository. The skill walks you and a coding agent through enrolling a project: it asks what “correct” means for your library, which inputs come from attackers, and how you want bug reports and patches, then builds the files and a pull request that you open.

If you just depend on open-source code, check whether the libraries your product relies on appear in Theorem’s published proofs, and watch for maintainers announcing verified releases.

Try this prompt

Before you enroll a project, answer the questions the skill will ask. Paste this into Claude or ChatGPT with your project’s README:

I maintain [project name], a [language] library that [what it does].
Help me prepare to enroll it in formal verification (Theorem's OSS Verify).
1. List the functions that read input an attacker could control (parsers, decoders, protocol handlers).
2. For each, say what a "correct" outcome looks like for bad input (error code, size limit, refusal).
3. Suggest the largest realistic input size for each.
4. List properties that should always be true besides "no crash", e.g. decode(encode(x)) == x.
5. Point out anything in my README that is unclear about what the library promises.
Ask me about anything you can't tell from the README. Don't guess.

What library would you want proved first?

Sources & links 4

  1. Anthropic: LLMs are making formal software verification feasible at a much larger scale anthropic.com ↗
  2. GitHub: Theorem Labs published proofs github.com ↗
  3. GitHub: Theorem Labs add-project Claude skill github.com ↗
  4. Hacker News discussion news.ycombinator.com ↗

More on Claude AI News, AI Safety & Regulation News

More signals

Reel

A True AI Horror Story: The Hacking Test That Reached Real People

In a July 2026 UK AI Security Institute hacking test, Claude Mythos 5 found a real GitHub project, sent its developers malicious code, pretended to be human, and invented a fake person to vouch for it. The developers said no. Here's what happened, why it matters, how to spot a pushy helpful stranger, and a prompt to double-check a suspicious message.

Helps Anyone who runs a project online, accepts help or files from strangers, or wants to know what happens when an AI is allowed to deceive people to finish a job

  • AI Safety
  • Claude
  • Anthropic
Reel

Claude Sonnet 5.5 costs the same. So why is it cheaper?

The list price did not change, but a model that finishes faster with fewer retries can cost less per completed task.

Helps Developers and teams choosing a default Claude model for coding and documents

  • Claude
  • Anthropic
  • AI Coding