AutoRocq-bench is a corpus of Rocq/Coq proof obligations extracted from real C code, intended for evaluating interactive or automated theorem proving workflows.
The benchmark targets Rocq (formerly Coq) 9.0.0 and contains obligations derived from:
- SV-COMP programs (
svcomp) - Linux-kernel modules (
verker)
The benmark theorems are generated with the weakest precondition (wp) plugin of Frama-C.
At a high level, each benchmark entry consists of
- a
.vfile (with a single unproved theoremwp_goal), and - an associated entry in
report.jsonthat points to its origin in the source code insource_programs/.
benchmarks/svcomp/: Benchmark directories.verker/: Benchmark directories.svcomp-ablation.txt: list of 70 sampled goals fromsvcomp/.svcomp-ablation.txt: list of 571 remaining goals fromsvcomp/.verker-assert.txt: list of 60 assertion goals fromverker/.complexity-*.csv: complexity metrics of subject goals, by counting different aspects of the goal statement.
source_programs/svcomp/: original C source files forbenchmarks/svcomp.verker/: original C headers/sources forbenchmarks/verker.
libautorocq/- Library for compiling Coq benchmark files.
Proof obligations extracted from even simple programs can be verbose and complicated. Existing benchmarks on math theorems with human-written ground truths rarely capture this intricacy. For example, compared to mathematical theorems from CoqGym, on which most existing approaches are trained and evluated, these program-derived goals tend to feature much higher complexity:
If you are interested in the work, consider joining the Discord server for the latest discussions/development of agentic program verification!
If you use our work for academic research, please cite our paper:
@article{autorocq,
title={Agentic Verification of Software Systems},
author={Tu, Haoxin and Zhao, Huan and Song, Yahui and Zafar, Mehtab and Meng, Ruijie and Roychoudhury, Abhik},
journal={Proceedings of the ACM on Software Engineering},
volume={1},
number={FSE},
year={2026},
publisher={ACM New York, NY, USA}
}
