LLM-Assisted Synthesis of High-Assurance C Programs
Prasita Mukherjee, Minghai Lu, Benjamin Delaware
Abstract
We present SYNVER -a novel, general purpose synthesizer for C programs equipped with machine-checked proofs of correctness using the Verified Software Toolchain. To do so, SYNVER employs two Large Language Models (LLMs): the first generates candidate programs from user-provided specifications, and the second helps automatically construct formal proofs of their correctness in the Rocq proof assistant. To facilitate verification, SYNVER places a set of syntactic restrictions on candidate programs that make them amenable to automated reasoning. SYNVER uses a hybrid verification strategy that combines symbolic reasoning with LLM-powered proof generation to discharge proof obligations that the symbolic engine cannot handle on its own. We demonstrate the applicability of SYNVER using a diverse set of benchmarks drawn from the program synthesis and verification literature. Index Terms-Formal Verification, Automatic Programming, and Large Language Models / * h1 → l1 * h2 → l2 * / 2 struct sll * append(struct sll * h1, struct sll * h2) 3 4 struct sll * current = h1;
Ask about this paper
Your agent reads all of it.
Lune indexed this paper to the last equation, along with the top-tier papers that cite it. Ask a question and the answer quotes them.
Builds on15
- miniF2F: a cross-system benchmark for formal Olympiad-level mathematicsKunhao Zheng, Jesse Michael Han, Stanislas PoluICLR 2022 · 342 citations
- Thor: Wielding Hammers to Integrate Language Models and Automated Theorem ProversAlbert Qiaochu Jiang, Wenda Li, Szymon Tworkowski, Konrad Czechowski et al.NeurIPS 2022 · 154 citations
- Baldur: Whole-Proof Generation and Repair with Large Language ModelsEmily First, Markus N. Rabe, Talia Ringer, Yuriy BrunFSE 2023 · 89 citations
- Verus: Verifying Rust Programs using Linear Ghost TypesAndrea Lattuada, Travis Hance, Chanhee Cho, Matthias Brun et al.OOPSLA 2023 · 86 citations
- RefinedC: automating the foundational verification of C code with refined ownership typesMichael Sammler, Rodolphe Lepigre, Robbert Krebbers, Kayvan Memarian et al.PLDI 2021 · 83 citations
Related papers
- Cobblestone: A Divide-and-Conquer Approach for Automating Formal VerificationSaketh Ram Kasibatla, Arpan Agrawal, Yuriy Brun, Sorin Lerner et al.ICSE 2026 · 3 citations
- SL-VC: A Benchmark and Automated Framework for Separation Logic Verification Condition ProvingHanyang Wang, Xiwei Wu, Qinxiang CaoICML 2026
- Planning to Hammer: Difficulty-Aware Decomposition for Automating Rocq ProofsNing Zhang, Nongyu Di, Zenan Li, Yuan Yao et al.OOPSLA 2026
- Agentic Verification of Software SystemsHaoxin Tu, Huan Zhao, Yahui Song, Mehtab Zafar et al.FSE 2026 · 1 citation
- Enchanting Program Specification Synthesis by Large Language Models Using Static Analysis and Program VerificationCheng Wen, Jialun Cao, Jie Su, Zhiwu Xu et al.CAV 2024 · 60 citations
