explainx.ai0k
TrendingAI News TodayPathwaysSkills
Pricing
explainx.ai

Upskill in AI — 16 free pathways, live workshops & bootcamps, and 50+ courses from practitioners. Plus the skills, tools, and MCP servers to practice on.

follow us

follow on google

Add explainx.ai as a preferred source

corporate training

support@explainx.ai

get started

Find your pathTake Free Evaluation

community

Join the community

learn

mind: share how you thinkpathways — start freeworkshopsbootcampscoursescompare Explainxcertificationsmock testsexplainx universitycorporate traininglearn skills & mcp

discover

skillsmcp serversexplainx mcptoolsmdx readeragentsllmsdesignsdictionarypeopleagi trackerfelony benchranks

company

aboutvisionmissionteaminstructorsteach on explainxpartnershipscommunityhackathonscareers

content

daily AI newsstate of AI — live resultsblogreleasespromptsgeneratorsresource libraryfor LLMsexplainx.ai kids

solutions

all solutionsdeveloper upskillingmarketing upskillingproduct manager upskillingleadership upskilling

newsletter · weekly

Get AI news, tools, and insights in your inbox.

supportcontactprivacytermsdata rightshow we create contentsubmission guidelines

© 2026 AISOLO Technologies Pvt Ltd

explainx.ai

On this page

  • Formal verification by Claude: the short version
  • Why formal verification has been so expensive
  • How the OSS-Fuzz verification worked
  • The bugs: what proof found that fuzzing did not
  • Other case studies: zlib, a Python interpreter and a PDF reader
  • The honest limits Anthropic lists
  • What it costs: tokens, reuse and Opus 5.5
  • How this fits Anthropic's security push
  • What this means if you ship software
  • Our read
  • Related reading
← Back to blog

explainx / blog

Anthropic: Claude Proved 123 Libraries Crash-Free With Formal Verification

Anthropic, Claude, AI Security, Formal Verification, Research

Part of Anthropic and Claude

Anthropic used Claude to write Rocq proofs for 239 OSS-Fuzz entry points in 123 libraries. What was proved, the bugs found, and what it does not guarantee.

Oct 22, 2026·9 min read·Yash Thakker
add explainx.ai
go deep
Anthropic: Claude Proved 123 Libraries Crash-Free With Formal Verification

Anthropic's Frontier Red Team has published research arguing that large language models are making formal software verification feasible at a much larger scale. In its post, LLMs are making formal software verification feasible at a much larger scale, Anthropic says Claude proved security properties at the RISC-V assembly level for 123 open-source libraries, covering 239 OSS-Fuzz entry points, in a few weeks. The work was done with Theorem, a formal-methods company, and found hundreds of bugs along the way.

The headline is not "AI proved software correct." It is narrower and more interesting: a proof-writing job that used to cost person-years can now be attempted by agents, and the checker, not the model, decides whether the result counts. This post covers what was proved, the numbers, the bugs, the caveats Anthropic itself lists, and what it means if you ship code.

Formal verification by Claude: the short version

table · 2 cols
QuestionAnswer (per Anthropic)
What was proved?Compiled programs never crash on any input under 64 MB
How much?239 entry points in 123 open-source libraries
Proof system?Rocq (formerly Coq), checked by the Rocq kernel
Level?RISC-V assembly, with a model of running binaries on Linux
Size?About 180 million lines of Rocq; typical proof about 600,000 lines
Time?A few weeks
Bugs found?Hundreds, plus an unexploitable corner case in about six zlib-style libraries
Biggest caveat?Proof is only as good as the spec, machine model and trusted components
Is anything released?A subset of proofs, the semantics, and specs for unproven entry points
Weekly digest3.6k readers

Catch up on AI

Curated AI updates on agents, skills, and MCP — delivered to your inbox. Unsubscribe anytime.

Why formal verification has been so expensive

Formal verification means proving, with mathematical rigor, that code satisfies a specification. Unlike testing, which samples inputs, a proof covers all of them. The catch has always been labor. Anthropic points to seL4, the verified microkernel, where two person-years of implementation needed roughly 20 person-years of verification. We covered the latest seL4 proof effort in seL4 AArch64 confidentiality proofs, and the economics there are exactly what Anthropic says is changing.

The argument is that LLMs are now good at writing the long, tedious, mechanical proofs, and a proof checker cannot be fooled by a confident-sounding model. If the proof does not check, it does not count. That asymmetry is why this is a better fit for LLMs than most "AI writes code" tasks: the verification is free and exact. The same logic drove the math results we have covered, from Claude's Lean proof work on Fermat's Last Theorem to the collapse in Lean proof costs.

Puzzle pieces fitting around a green seal, a picture of formal verification proofs that a checker acceptsPuzzle pieces fitting around a green seal, a picture of formal verification proofs that a checker accepts

How the OSS-Fuzz verification worked

Anthropic's pipeline reused something the open-source world already has: fuzz tests. Each OSS-Fuzz entry point was converted into a specification. The spec says the compiled program never crashes for any input under 64 MB, in a model of executing RISC-V binaries on Linux. Claude then wrote the proofs in Rocq, and the Rocq kernel checked them.

When Claude hit a real bug, it did not stop. It patched the code, regenerated the spec and continued proving. The result, per Anthropic, is proofs for 239 entry points across 123 libraries after patching what it found.

The scale is worth sitting with. About 180 million lines of Rocq is far beyond what a human team could review, and a typical proof of roughly 600,000 lines covers a binary of a median 18,000 instructions. Nobody reads these proofs. People trust the kernel that checks them and read the spec, which is short.

The bugs: what proof found that fuzzing did not

Anthropic lists several examples, and they share a theme: the triggering input is unusual enough that fuzzers rarely reach it.

  • A counter underflow in a decompressor leading to an out-of-bounds write, triggered only by roughly 20 MB inputs with one rare layout.
  • An out-of-bounds read in an image decoder that needed a 64 MB input and more than 2 GB of memory.
  • An out-of-bounds read in another library needing a specific sequence of calls across two handles to the same file.
  • A rediscovery of CVE-2026-56132 in libexpat, which required deeply nested input.
  • A logic bug where a file-restriction feature was not always enforced, with no crash involved.

Anthropic notes that fuzzers typically cap input size around 1 MB, which is one reason these survive fuzzing. A proof has no such cap by construction. In one case, verifying cpp-httplib meant proving that libc++'s red-black tree keeps its depth logarithmically bounded, which rules out a stack overflow in the std::set destructor. That is the kind of fact nobody writes a test for.

Other case studies: zlib, a Python interpreter and a PDF reader

The post goes beyond the OSS-Fuzz run.

zlib. Claude wrote a formal spec from RFC 1950 and proved the Linux kernel's zlib implementation meets it, at the x86 binary level, using Claude-generated x86 semantics. Repeating the exercise for about six other libraries turned up minor, unexploitable corner-case bugs.

A Python interpreter in Rust. Claude built an interpreter for a large Python subset and used Verus to prove it follows CPython semantics taken from an academic paper. Testing 1.7 million random programs, behavior matched CPython 99.95 percent of the time. That figure is a test result, not a proof, and it is worth keeping the two apart.

A PDF reader. Attempts to verify simple security properties found, in one week, as many security bugs as are typically reported in a year, according to Anthropic.

The honest limits Anthropic lists

The research is unusually direct about what "verified" does not mean, and a reader should hold these next to the headline.

  • A proof is relative to a spec. A checker cannot confirm the spec matches what you wanted. Bugs can live in the spec, the machine model, or trusted pieces: Rocq itself, the RISC-V and Linux semantics, the hardware, and the OCaml compiler Rocq relies on.
  • Environment mismatch. The proofs cover single-threaded static RISC-V binaries linked against musl libc. Most users run x86 or ARM builds dynamically linked against glibc.
  • Incomplete coverage. AddressSanitizer does not catch every memory-safety bug, not all entry points were verified, dead code is not covered, and a caller that misuses a library can still corrupt memory.
  • Reward hacking. Claude could satisfy a "never crashes" proof by rewriting the program so it never does anything risky. Anthropic penalized patches, gave extra credit for characterizing which inputs a patch changes, and audited patches. We looked at the broader problem in Anthropic's work on reward hacking.

What it costs: tokens, reuse and Opus 5.5

Proofs can take hundreds of millions of tokens. Anthropic reports that on 36 small verification tasks, Opus 5.5 used about 40 percent fewer tokens than Opus 5. When agents shared a workspace, they needed 17 percent fewer tokens on average, and some succeeded where solo attempts failed. In the OSS-Fuzz effort, teams often copied and adapted finished proofs, since much of each proof covers shared runtime code such as libc.

That reuse point is the strategic one. Verify a widely shared library once and every project that depends on it benefits. Anthropic compares this to Mathlib, which holds nearly 300,000 theorems from over 700 contributors, and notes that Theorem has published a roadmap for verifying the Nix ecosystem. For background on Claude's proof tooling, see Boris Cherny on Opus 5.5 with Lean and TLA+.

How this fits Anthropic's security push

This is the latest in a run of Anthropic security work. The company has opened OSS Scanner for free vulnerability scans of open-source projects, a tiered cyber verification program, and published a Frontier Red Team study of a self-replicating AI botnet. Scanning finds bugs; verification proves their absence for a stated property. They are complementary: a scanner that finds nothing is weak evidence, a checked proof is strong evidence about exactly what it states.

If you worry about what AI coding agents do to your own systems while they work, AgentBeam, the agent security platform from the explainx.ai team, stops AI agents before they take dangerous actions. It is a different layer from proofs about library code, but the same goal: not trusting output you have not checked.

What this means if you ship software

  • If you maintain a C or C++ library with OSS-Fuzz coverage, your fuzz harness is now a ready-made spec. That is the cheapest on-ramp.
  • If you write Rust, the Verus result suggests proof-carrying code for core modules is becoming plausible, not just academic.
  • If you depend on libraries, treat "formally verified" as a claim with a scope. Ask what property, which binary, which semantics.
  • If you use AI to write code, the lesson is to pair generation with an exact checker. Tests are a weak checker; types and proofs are stronger.

Anthropic and Theorem say they are ready to help. Theorem will run the pipeline for other open-source projects, and a Claude skill is available for developers verifying their own code. Anthropic's closing prediction is that formal verification will become as routine as fuzzing, and it encourages developers who gave up on earlier models to try again. That is a forecast, not a result: nothing in the post shows a project adopting this in production yet.

Our read

The strongest part of the post is its restraint. It does not claim bug-free software; it claims machine-checked no-crash proofs for named binaries under named assumptions, and then lists the assumptions. The weakest part is that the code and proofs released are a subset, so independent readers cannot yet re-check the whole 180 million lines. Watch for third-party audits of the spec and the RISC-V and Linux semantics, because that is the small trusted core everything else rests on.

For readers learning AI, this is a clean example of verification asymmetry: when an answer can be checked cheaply and exactly, models can be pushed much harder, with far less trust required. That pattern explains why math and proofs have moved faster than open-ended tasks.

Related reading

  • Theorem OSS Verify: free crash-freedom proofs for open-source projects

  • seL4 AArch64 confidentiality proofs

  • Claude and the Fermat's Last Theorem Lean proof

  • Lean 4 formal proof cost collapse

  • Boris Cherny on Opus 5.5, Lean and TLA+

  • Anthropic OSS Scanner

  • Anthropic cyber verification program

  • Anthropic reward hacking research

  • Official: Anthropic's formal verification post and Theorem

Figures and claims are from Anthropic's post as of October 22, 2026 and may be revised.

Spotted something out of date? Let us know.

People in this article

  • Boris Cherny →Head of Claude Code at Anthropic
Explore people in AI →
Yash Thakker

Written by

Yash Thakker

Yash is an AI expert with over 300K learners. Join his workshops →

View Yash Thakker in People in AI →

Related posts

Oct 22, 2026

Anthropic Signs All Internal Token Traffic: Frontier Safety Roadmap Update

Anthropic updated its Frontier Safety Roadmap on October 19, 2026. The buried details: signing on all internal token traffic, a prototype that checks outputs come from specific model weights, and an automated red team that beat human bounty submissions.

Oct 21, 2026

Claude Attack Surface Reduction: 493 Issues in 25 Projects, and 4,500 Unneeded Lines in OpenSSH

Anthropic published research on using Claude to shrink the code an attacker can reach, instead of hunting bugs one by one. Across 25 open-source projects it found 493 issues, and its OpenSSH case study led to fixes shipped in version 10.6.

Oct 8, 2026

Anthropic Cyber Mission: Critical Infrastructure Defense Program Explained

On October 8, 2026 Anthropic announced the Cyber Mission, a long-term defender-first effort that starts with a Critical Infrastructure Defense Program for operational technology and the free OSS Scanner for open source. explainx.ai breaks down who is in, what they get, and what is still unknown.