Key points
- Problem: Modern AI coding assistants generate plausible code but cannot guarantee correctness; testing detects bugs but never proves their absence.
- Solution space: Formal verification produces machine-checked mathematical proofs that an implementation satisfies a specification, exemplified by CompCert (Coq) and the seL4 microkernel (Isabelle/HOL).
- Vero benchmark: First repository-level, joint implementation-and-proof benchmark; 43 curated instances in Python, Dafny, Verus, and Coq, all reformatted as Lean 4 repositories.
- Each instance provides: predetermined API interfaces, manually curated formal specifications, and reference implementations.
- Two evaluation modes:
- *Proof-only*: given an implementation, the agent produces a proof.
- *Code-and-proof*: the agent jointly generates implementation and matching proof.
- Audit mechanism: Agents may declare a specification unsatisfiable or flag a reference implementation as incorrect, exposing curation errors and rewarding calibration.
- Headline result: The strongest AI agent with Lean toolchain access fully solved only 27 / 43 instances (about 63%) and closed zero specifications on the hardest repository.
- Why it is hard: 1. Technical — dependent type theory, proof tactics, large search/backtracking spaces. 2. Architectural — multi-module consistency, interface alignment, cyclic dependencies. 3. Cognitive — proofs often demand auxiliary constructions, intermediate lemmas, and creative insight rather than pattern matching.
- Significance: Establishes an honest yardstick for trustworthy AI-generated code and a roadmap for human-AI collaborative verification workflows.
Paper reference
Ye, Z., Lou, H., Sun, Y., Song, P., Yan, Z., Kasriel, T., Zhang, Q., Yang, K., Kong, S., He, J., & Song, D. (2026). *Vero: Can AI Agents Build Formally Verified Software Repositories?* arXiv:2608.13522. Code: https://github.com/sunblaze-ucb/vero