Claude Formal Verification: 123 Libraries, Proofs and Limits
Claude helped prove no-crash properties across 123 open-source libraries. What the proofs cover, why they do not mean bug-free software, and how maintainers can apply.
Anthropic and verification company Theorem reported on October 22, 2026 that Claude generated machine-checked proofs for 239 fuzz-test entry points across 123 open-source libraries. The result is significant for software security, but it is not a claim that 123 libraries are now universally bug-free. The proofs cover specific properties of specific compiled binaries, with important limits on architecture, execution and input size.
What the researchers actually proved
The team took existing OSS-Fuzz entry points, compiled them as RISC-V Linux binaries and translated their behavior into formal specifications. Claude produced Rocq proofs, which an external proof checker validated against those specifications. The core target was that covered executions would not crash, trigger modeled sanitizer errors or fail assertions for inputs below 64 MB, assuming the modeled operating-system responses, memory budget and single-threaded static-binary setup.
Reported research scope
The 123-library figure comes from Anthropic's broader experiment; it should not be confused with the smaller public release. Theorem's proof repository currently describes 60 entry points across 25 libraries, with Rocq 9.2.0 checks and a documented model of Linux process behavior. That repository allows specialists to inspect proof statements and the exact binaries they concern.
Why this matters beyond another AI coding benchmark
A fuzzer can run millions or trillions of inputs and still miss a rare failure. A proof aims to establish a defined property for every modeled input within its bounds. That changes the role of AI from finding likely bugs to helping produce verifiable evidence about the absence of a particular class of bugs. The practical opportunity is strongest for widely reused parsers, codecs and other critical dependencies, where one carefully scoped proof could benefit many downstream users.
Anthropic also reports that attempting proofs surfaced bugs that fuzzing had missed, including unusual large-input and multi-step cases. The team allowed Claude to patch issues and then regenerate and prove the specification for the changed code. This makes patch review essential: a mathematical proof of the patched program does not by itself establish that the patch preserved every intended product behavior.
What the proof does not cover
- The main OSS-Fuzz proofs concern static, single-threaded RISC-V binaries under a modeled Linux environment, not ordinary x86 or ARM deployments.
- The properties apply to selected fuzz entry points and covered sanitizer or assertion behavior, not every function, business rule or vulnerability class in a library.
- The input bound is below 64 MB, with memory-budget and modeled system-call assumptions; a proof is only as reliable as its specification and trusted execution model.
- Theorem's public repository notes that its published agreement proofs do not establish that a program always terminates.
How maintainers can evaluate the workflow
- Identify a high-impact library with existing fuzz targets and decide which crash or correctness property matters.
- Review the published proof statements and model assumptions before treating the result as a security claim.
- If eligible, follow Theorem's OSS Verify enrollment process using project.yaml, Dockerfile and build.sh; acceptance and timing are not guaranteed.
- Keep fuzzing, conventional tests, patch review and production-architecture validation in place. Treat proofs as an additional layer, not a replacement for the rest of security engineering.
Theorem says its OSS Verify initiative is free for qualifying open-source projects, with priority for established, security-critical dependencies. It asks core maintainers to enroll and warns that generating proofs can take multiple days. That is a concrete route for maintainers to explore the technique, but it is not a general-purpose one-click verification service for arbitrary proprietary applications.
Questions people ask
Did Claude prove 123 open-source libraries are completely bug-free?
No. Anthropic reports proofs for 239 fuzz-test entry points across 123 OSS-Fuzz libraries, not complete verification of every function or deployment of those libraries. The claims concern specified no-crash and sanitizer-detected properties of particular compiled RISC-V binaries, under modeled operating-system behavior and input and memory limits. Other bugs and real-world configurations remain outside those proofs.
How is Claude's formal verification different from ordinary fuzz testing?
Fuzz testing executes many generated inputs and looks for crashes; it cannot exhaust every possible input. In this project, Claude generated mathematical proofs about compiled fuzz targets, and the Rocq checker checked whether those proofs established the specified behavior for all inputs within the model's bounds. A successful proof covers its stated property more broadly than sampled tests, but only under its assumptions.
Do these proofs protect production x86 or ARM applications?
Not directly. The published OSS Verify proofs describe specific static, single-threaded RISC-V Linux binaries linked with musl, not typical x86 or ARM production builds. They also depend on the accuracy of Theorem's Linux process model and the tested entry points. Teams should treat the research as evidence of a verification method, not as certification of their deployed binaries.
Can an open-source maintainer apply for OSS Verify now?
Yes. Theorem says qualifying open-source maintainers can apply at no cost by submitting a project directory with a project.yaml, Dockerfile and build.sh to its OSS Verify repository. The team reviews eligibility, prioritizing widely used security-critical dependencies. Projects need suitable static riscv64 fuzz targets, and proof generation may take days; acceptance or a completed proof is not guaranteed.
Claude's formal-verification research is a meaningful step toward machine-checkable software assurance at scale. Its value is the narrow, inspectable guarantee for particular binaries and properties—not a blanket promise of bug-free software. Teams should adopt the proof mindset while preserving the conventional testing and review layers that cover everything outside the formal model.
Explore related Make Better resources
- PHP2Shell: Critical PHP Fixes and AI Discovery— Related security issue where AI-assisted discovery led to patch coordination
- Anthropic OSS Scanner: free security scans, real triage work— Complementary vulnerability-finding workflow for maintainers
Sources & useful resources
- Anthropic: Formal software verification research— Primary research announcement, October 22, 2026; 239 entry points, 123 libraries, proof assumptions
- Theorem: OSS Verify public proofs— Public machine-checked proof subset and precise limitations; 60 entry points in 25 libraries
- Theorem: OSS Verify eligibility and enrollment— Official free program eligibility, enrollment files and timing