What The Claude Fuzz-Test Project Shows—and What It Cannot Show
AIThis post was created with the assistance of artificial intelligence (AI).

🔍 Read the full analysis: What The Claude Fuzz-Test Project Shows—and What It Cannot Show on ThorstenMeyerAI.com

Before you orderOffer from Amazon

Get the latest gadgets delivered free with Prime

  • Fast, free delivery on millions of items
  • Prime Video, Amazon Music and more included
  • Member-only deals all year
Start your free Prime trial Free trial for eligible customers · Cancel anytime
As an affiliate, we earn on qualifying purchases.

TL;DR

Anthropic’s Frontier Red Team and Theorem say Claude produced Rocq-checked proofs that 239 fuzz-test entry points in 123 open-source libraries do not crash under specified conditions. The work also found bugs, but the proofs apply to modeled RISC-V binaries and do not establish that the libraries are bug-free or that other builds are safe.

Anthropic’s Frontier Red Team and its collaborator Theorem reported on October 22 that Claude proved a defined no-crash property for 239 fuzz-test entry points across 123 open-source libraries. The proofs were checked by Rocq against compiled RISC-V programs, and the team says the process also uncovered bugs missed by years of fuzzing; the findings do not establish that the libraries are free of bugs.

The property proved is specific: for each modeled entry point, the compiled program does not crash on any input under 64 megabytes, subject to the project’s stated assumptions. The checks include AddressSanitizer memory errors and failed assertions. The team used each library’s existing fuzz test as a specification, rather than attempting to define every aspect of what the library should do.

In the reported pipeline, a library and its fuzz test were compiled into a RISC-V executable and instrumented with AddressSanitizer. Theorem’s formal models of RISC-V instructions and Linux processes were used to generate specifications. Claude wrote proofs in Rocq, a proof assistant whose checker mechanically verifies whether a proof follows from the specification. When a proof attempt exposed a possible bug, Claude could patch the code, regenerate the specification and try to prove the revised program.

Anthropic says the work took a few weeks and produced about 180 million lines of Rocq proof. A typical proof was about 600,000 lines, for a binary with a median length of 18,000 RISC-V instructions. The source says most of the proof text did not require human review because the checking depends on a smaller set of trusted components, including the models, theorem statements and Rocq checker. The team also reported finding hundreds of bugs, including cases involving large or unusually structured inputs.

At a glance
reportWhen: Reported October 22, 2026; source artic…
The developmentAnthropic and Theorem reported that Claude generated machine-checked no-crash proofs for 239 entry points across 123 open-source libraries.
Thorsten Meyer AI
Anthropic × Theorem · Oct 2026

Infographic 01 · From test to proof

Existing fuzz tests became specifications. Claude proved them.

Over a few weeks, Claude proved at the machine-code level that hundreds of real fuzz entry points can no longer crash, after patching the bugs it found.

239fuzz-test entry points proved crash-free
123open-source libraries from Google’s OSS-Fuzz
~180Mlines of Rocq proof in total
<64 MBevery input below this size is covered

The pipeline

From an existing test to a checked proof

  1. Compile. The library and its existing fuzz test become a RISC-V executable, instrumented with AddressSanitizer.
  2. Specify. Theorem’s RISC-V and Linux process semantics plus the no-crash property mechanically yield the specification.
  3. Prove. Claude writes the proof in Rocq. A failed attempt points at a possible bug; Claude patches it and proves the new spec.
  4. Check. The Rocq proof checker verifies the proof. Virtually none of the proof needs human review.

Fuzzing vs. proof

Same entry point, different guarantee

FuzzingProof
InputsFuzzing: Generated samples, typically capped at 1 MBProof: Every input under 64 MB
PathsFuzzing: Guided by code coverage, no guaranteeProof: Every path reachable from the entry point
ResultFuzzing: Bugs found so farProof: No crash left to find on the modelled system

Typical proof: about 600,000 lines for a binary with a median length of 18,000 RISC-V instructions.

“If Claude can prove this spec, the fuzz test on RISC-V becomes superfluous.”Anthropic, 22 Oct 2026

Source: Anthropic, “LLMs are making formal software verification feasible at a much larger scale” (22 Oct 2026).
Powered by Thorsten Meyer AI

What Machine-Checked Testing Adds

The result matters because fuzzing and formal verification answer different questions. A fuzzer tries many inputs and can expose crashes, but it cannot establish that every possible path has been tested. A proof, if its assumptions and model are sound, can establish a stated property across all inputs in the defined range. That may help teams identify failure cases that ordinary fuzzing rarely reaches.

The report also points to a possible change in the cost of verification. Formal proofs have traditionally required substantial specialist labor; the source cites seL4 as an example, saying its development took two person-years and verification took 20. Here, Claude generated proof text at scale and Rocq checked it. If the approach can be made less costly and applied to more software, developers could gain stronger evidence about selected security properties than testing alone provides.

That possibility should not be confused with proof of general software correctness. The demonstrated result is a narrow no-crash guarantee under stated assumptions, not a blanket security certification. The project’s value for readers and software maintainers lies both in the bugs it reportedly found and in showing how AI-generated proofs can be checked independently by formal tools.

Amazon

software fuzz testing tools

As an affiliate, we earn on qualifying purchases.

As an affiliate, we earn on qualifying purchases.

From Fuzz Tests to Formal Proofs

A fuzz test supplies a relatively small entry point through which a library receives generated or mutated inputs. If the test crashes, developers can investigate a potential defect. The source says fuzzers often use smaller inputs, commonly capped around 1 MB, and direct testing toward code paths suggested by coverage. This can leave rare combinations or long-input behavior unexplored.

The project reused those tests as specifications for the compiled programs. That choice makes the claim practical but bounded: the proof establishes that the test does not crash under the model, rather than proving every intended behavior of the whole library. The source gives examples of bugs involving a roughly 20 MB input with a rare layout, a 64 MB image input requiring more than 2 GB of memory, and a particular sequence of calls using two handles to the same file. It also describes a rediscovery of CVE-2026-56132 in libexpat and a logic issue involving a file-loading restriction.

Anthropic characterizes the work as, to its knowledge, the first large-scale AI application of formal verification to production software at the assembly-code level. That is the company’s characterization, not an independently established historical finding in the supplied material. The team said it is publishing proofs that did not require patches, previously unavailable trusted components, and specifications for tests it could not prove.

Amazon

machine-checked proof software

As an affiliate, we earn on qualifying purchases.

As an affiliate, we earn on qualifying purchases.

Where the Proofs Stop

The result is limited to single-threaded, static RISC-V binaries linked against musl, according to the source. Most users instead encounter software built for x86 or ARM and linked against glibc. The reported proofs therefore do not automatically establish the same property for those commonly used builds, or for different compiler and runtime configurations.

The guarantee also depends on the formal models, the accuracy of the specifications and the trusted proof-checking components. A proof that a fuzz test does not crash does not rule out every possible security flaw, incorrect result or failure outside the modeled entry point and input range. The source itself gives a logic bug that did not crash as an example of a defect a no-crash property alone cannot fully describe.

Other details remain uncertain from the supplied account: it does not provide a full independently verified breakdown of the reported bugs, a complete accounting of total compute costs, or evidence about how the method performs across other architectures and real deployment settings. It says proofs can take hundreds of millions of tokens, while newer models and shared proofs may reduce that burden; the practical cost and scale of those savings are not specified.

Amazon

RISC-V development kit

As an affiliate, we earn on qualifying purchases.

As an affiliate, we earn on qualifying purchases.

Publication and Broader Testing

The team says it is making selected proofs and related specifications available, including proofs that did not require code patches. Those materials may allow researchers and maintainers to inspect the claims, check assumptions and try the method on additional software. The supplied source does not give a schedule for publication or say that the full proof set is already available.

The next useful evidence would include independent examination of the trusted models and theorem statements, replication of the reported results, and testing across additional architectures and build configurations. Maintainers would also need to judge whether the proof cost can fit their development processes. Until then, the reported work is a substantial demonstration of AI-assisted verification under defined conditions, rather than a guarantee that the covered libraries—or their commonly deployed builds—are secure.

Amazon

AddressSanitizer debugging tools

As an affiliate, we earn on qualifying purchases.

As an affiliate, we earn on qualifying purchases.

Key Questions

What exactly did Claude prove?

For 239 fuzz-test entry points, the project reports proofs that the modeled compiled RISC-V programs do not crash on inputs under 64 MB, including specified AddressSanitizer errors and failed assertions. The claim is limited to each test and its stated assumptions.

Does this show the libraries are bug-free?

No. It establishes a defined no-crash property for particular entry points and modeled binaries. It does not prove that every behavior is correct or that the libraries contain no other security or logic flaws.

Why could the proofs find bugs fuzzing missed?

Fuzzers sample inputs and code paths; they cannot guarantee that every possible path is reached. A formal proof must account for all paths within its modeled conditions, which can expose rare behaviors involving large inputs or unusual call sequences.

Do the results apply to software people commonly run?

Not automatically. The source says the proofs cover single-threaded static RISC-V binaries linked against musl, while common builds use x86 or ARM and glibc. Those builds need their own evidence.

What remains to be checked?

Independent review and replication would help establish how well the results hold up. The proof assumptions, trusted models, costs, and performance across other architectures and deployment configurations remain important open questions.

Source: ThorstenMeyerAI.com

HALLOWEEN

Halloween Picks

As an affiliate, we earn on qualifying purchases.

You May Also Like

YouTrackDB Is A General-use Object-oriented Graph Database

YouTrackDB introduces a new object-oriented graph database designed for versatile data modeling and analysis, aiming to serve various industry needs.

10 Best Soundbars For Clearer TV Audio Across Different Budgets In 2027

A 10-model soundbar roundup compares compact dialogue-focused bars, subwoofer systems and physical surround setups across different budgets.

How To Match A WiFi 7 Router To Your AI Setup: 9 Picks

A buyer’s guide compares nine Wi-Fi 7 router picks for AI workloads, gaming, mesh coverage and multi-gigabit wired connections.

EVE Online’s Carbon Engine Is Now Open Source: Fenris Creations Explains Why

EVE Online’s Carbon game engine is now open source, with Fenris Creations citing collaboration and innovation as key reasons for the decision.