Automated Proof Generation for Rust Code via Self-Evolution
Not on the map. Why?
Abstract (arXiv)
Ensuring correctness is crucial for code generation. Formal verification offers a definitive assurance of correctness, but demands substantial human effort in proof construction and hence raises a pressing need for automation. The primary obstacle lies in the severe lack of data-there is much fewer proofs than code snippets for Large Language Models (LLMs) to train upon. In this paper, we introduce SAFE, a framework that overcomes the lack of human-written proofs to enable automated proof generation of Rust code. SAFE establishes a self-evolving cycle where data synthesis and fine-tuning collaborate to enhance the model capability, leveraging the definitive power of a symbolic verifier in telling correct proofs from incorrect ones. SAFE also re-purposes the large number of synthesized incorrect proofs to train the self-debugging capability of the fine-tuned models, empowering them to fix incorrect proofs based on the verifier's feedback. SAFE demonstrates superior efficiency and precision compared to GPT-4o. Through tens of thousands of synthesized proofs and the self-debugging mechanism, we improve the capability of open-source models, initially unacquainted with formal verification, to automatically write proofs for Rust code. This advancement leads to a significant improvement in performance, achieving a 52.52% accuracy rate in a benchmark crafted by human experts, a significant leap over GPT-4o's performance of 14.39%.
Key facts. Cited by 33 papers in the map (data through 14 Oct 2026). Builds on 32 of its 49 references that are in the map. First posted on arXiv 21 Oct 2024.
Builds on
32 of 49 references.
References · 32
- 2024The Llama 3 Herd of Modelscited by 14,715
- 2021Program Synthesis with Large Language Modelscited by 3,637
- 2023Code Llama: Open Foundation Models for Codecited by 2,139
- 2024DeepSeek-Coder: When the Large Language Model Meets Programming -- The Rise of Code Intelligencecited by 1,181
- 2023Teaching Large Language Models to Self-Debugcited by 988
- 2024StarCoder 2 and The Stack v2: The Next Generationcited by 502
- 2023Reinforced Self-Training (ReST) for Language Modelingcited by 500
- 2023LeanDojo: Theorem Proving with Retrieval-Augmented Language Modelscited by 427
- 2023Llemma: An Open Language Model For Mathematicscited by 388
- 2022CodeT: Code Generation with Generated Testscited by 384
- 2021CodeNet: A Large-Scale AI for Code Dataset for Learning a Diversity of Coding Taskscited by 200
- 2023Is Self-Repair a Silver Bullet for Code Generation?cited by 197
20 more
- 2024CodeGemma: Open Code Models Based on Gemmacited by 150
- 2022Formal Mathematics Statement Curriculum Learningcited by 142
- 2023Baldur: Whole-Proof Generation and Repair with Large Language Modelscited by 119
- 2024A Survey on Self-Evolution of Large Language Modelscited by 91
- 2023Clover: Closed-Loop Verifiable Code Generationcited by 67
- 2024Towards AI-Assisted Synthesis of Verified Dafny Methodscited by 58
- 2023Can Large Language Models Transform Natural Language Intent into Formal Method Postconditions?cited by 57
- 2024DafnyBench: A Benchmark for Formal Software Verificationcited by 57
- 2023Verus: Verifying Rust Programs using Linear Ghost Types (extended version)cited by 53
- 2024SpecGen: Automated Generation of Formal Program Specifications via Large Language Modelscited by 53
- 2022Interactive Code Generation via Test-Driven User-Intent Formalizationcited by 50
- 2024AutoVerus: Automated Proof Generation for Rust Codecited by 49
- 2023Enhancing Large Language Models in Coding Through Multi-Perspective Self-Consistencycited by 46
- 2023ALGO: Synthesizing Algorithmic Programs with LLM-Generated Oracle Verifierscited by 41
- 2023Finding Inductive Loop Invariants using Large Language Modelscited by 36
- 2023Ranking LLM-Generated Loop Invariants for Program Verificationcited by 33
- 2024Towards Neural Synthesis for SMT-Assisted Proof-Oriented Programmingcited by 20
- 2024Evaluating LLM-driven User-Intent Formalization for Verification-Aware Languagescited by 16
- 2024Selene: Pioneering Automated Proof in Software Verificationcited by 12
- 2023Leveraging Large Language Models for Automated Proof Synthesis in Rustcited by 11
Built on by
Citing papers per year: 2024: 1; 2025: 12; 2026: 20.
33 papers.
Sort:
By area:
- 2024AlphaVerus: Bootstrapping Formally Verified Code Generation through Self-Improving Translation and Treefinementcited by 35
- 2025VERINA: Benchmarking Verifiable Code Generationcited by 34
- 2025CLEVER: A Curated Benchmark for Formally Verified Code Generationcited by 29
- 2025VeruSAGE: A Study of Agent-Based Verification for Rust Systemscited by 12
- 2026AlgoVeri: An Aligned Benchmark for Verified Code Generation on Classical Algorithmscited by 12
- 2025Locus: Agentic Predicate Synthesis for Directed Fuzzingcited by 9
- 2026Intent Formalization: A Grand Challenge for Reliable Coding in the Age of AI Agentscited by 9
- 2025OSVBench: Benchmarking LLMs on Specification Generation Tasks for Operating System Verificationcited by 8
- 2025Beyond Correctness: Exposing LLM-generated Logical Flaws in Reasoning via Multi-step Automated Theorem Provingcited by 6
- 2026FM-Agent: Scaling Formal Methods to Large Systems via LLM-Based Hoare-Style Reasoningcited by 6
- 2025RAG-Verus: Repository-Level Program Verification with LLMs using Retrieval Augmented Generationcited by 4
- 2025EditLord: Learning Code Transformation Rules for Code Editingcited by 4
21 more
- 2025Can LLMs Enable Verification in Mainstream Programming?cited by 3
- 2025Agentic Specification Generator for Move Programscited by 3
- 2025SymGPT: Auditing Smart Contracts via Combining Symbolic Execution with Large Language Modelscited by 2
- 2025SysMoBench: Evaluating AI on Formally Modeling Complex Real-World Systemscited by 2
- 2026Doc2Spec: Synthesizing Formal Programming Specifications from Natural Language via Grammar Inductioncited by 2
- 2026Spec-Harness: Assessing and Guiding LLM-Synthesized Formal Specifications Beyond Verifiabilitycited by 2
- 2026Certified Program Synthesis with a Multi-Modal Verifiercited by 2
- 2026Automating Formal Verification with Reinforcement Learning and Recursive Inferencecited by 1
- 2026Formal Disco: Scalable Open-Ended Generation of Formally Verified Programscited by 1
- 2026Provably Complete Generalized Planning with LLMscited by 1
- 2026Can LLMs Reason Like Automated Theorem Provers for Rust Verification? VCoT-Bench: Evaluating via Verification Chain of Thoughtcited by 0
- 2026Teaching LLMs Program Semantics via Symbolic Execution Tracescited by 0
- 2026Agentic Interpretation: Lattice-Structured Evidence for LLM-Based Program Analysiscited by 0
- 2026Viverra: Text-to-Code with Guaranteescited by 0
- 2026AutoACSL: Synthesizing ACSL Specifications by Integrating LLMs with CPG-Based Static Analysiscited by 0
- 2026An Empirical Study of LLM-Generated Specifications for VeriFastcited by 0
- 2026Fine-Tuning Qwen3-27B for C-to-Rust Code Translation: A Three-Stage Curriculum of Pretraining, Debugging-Aware SFT, and Task-Specific SFTcited by 0
- 2026SkillSpec: Intent-Masked Specification Reasoning for Agent Skill Correctnesscited by 0
- 2026OSFoundry: Building and Evolving Operating Systems with Specification-Guided Agentscited by 0
- 2026Fewer Assumptions by Design: A Reusable Skill for LLM-Assisted Verus Verificationcited by 0
- 2026TLA-Verus: Generating and Solving Temporal Proof Obligations with LLM Agentscited by 0
- 2026TLA-Verus: Generating and Solving Temporal Proof Obligations with LLM Agents10 Oct 2026
- 2026Fewer Assumptions by Design: A Reusable Skill for LLM-Assisted Verus Verification28 Sep 2026
- 2026Provably Complete Generalized Planning with LLMs22 Sep 2026
- 2026SkillSpec: Intent-Masked Specification Reasoning for Agent Skill Correctness5 Sep 2026
- 2026Fine-Tuning Qwen3-27B for C-to-Rust Code Translation: A Three-Stage Curriculum of Pretraining, Debugging-Aware SFT, and Task-Specific SFT13 Aug 2026
- 2026OSFoundry: Building and Evolving Operating Systems with Specification-Guided Agents8 Aug 2026
- 2026Formal Disco: Scalable Open-Ended Generation of Formally Verified Programs6 Jul 2026
- 2026An Empirical Study of LLM-Generated Specifications for VeriFast25 Jun 2026
- 2026AutoACSL: Synthesizing ACSL Specifications by Integrating LLMs with CPG-Based Static Analysis18 Jun 2026
- 2026Automating Formal Verification with Reinforcement Learning and Recursive Inference29 May 2026
- 2026Viverra: Text-to-Code with Guarantees14 May 2026
- 2026Agentic Interpretation: Lattice-Structured Evidence for LLM-Based Program Analysis12 May 2026
21 more
- 2026Teaching LLMs Program Semantics via Symbolic Execution Traces7 May 2026
- 2026Certified Program Synthesis with a Multi-Modal Verifier17 Apr 2026
- 2026FM-Agent: Scaling Formal Methods to Large Systems via LLM-Based Hoare-Style Reasoning13 Apr 2026
- 2026Spec-Harness: Assessing and Guiding LLM-Synthesized Formal Specifications Beyond Verifiability31 Mar 2026
- 2026Can LLMs Reason Like Automated Theorem Provers for Rust Verification? VCoT-Bench: Evaluating via Verification Chain of Thought18 Mar 2026
- 2026Intent Formalization: A Grand Challenge for Reliable Coding in the Age of AI Agents17 Mar 2026
- 2026AlgoVeri: An Aligned Benchmark for Verified Code Generation on Classical Algorithms10 Feb 2026
- 2026Doc2Spec: Synthesizing Formal Programming Specifications from Natural Language via Grammar Induction30 Jan 2026
- 2025Beyond Correctness: Exposing LLM-generated Logical Flaws in Reasoning via Multi-step Automated Theorem Proving29 Dec 2025
- 2025VeruSAGE: A Study of Agent-Based Verification for Rust Systems20 Dec 2025
- 2025Agentic Specification Generator for Move Programs29 Sep 2025
- 2025SysMoBench: Evaluating AI on Formally Modeling Complex Real-World Systems27 Sep 2025
- 2025Locus: Agentic Predicate Synthesis for Directed Fuzzing29 Aug 2025
- 2025VERINA: Benchmarking Verifiable Code Generation29 May 2025
- 2025CLEVER: A Curated Benchmark for Formally Verified Code Generation20 May 2025
- 2025OSVBench: Benchmarking LLMs on Specification Generation Tasks for Operating System Verification29 Apr 2025
- 2025Can LLMs Enable Verification in Mainstream Programming?18 Mar 2025
- 2025EditLord: Learning Code Transformation Rules for Code Editing10 Mar 2025
- 2025SymGPT: Auditing Smart Contracts via Combining Symbolic Execution with Large Language Models11 Feb 2025
- 2025RAG-Verus: Repository-Level Program Verification with LLMs using Retrieval Augmented Generation7 Feb 2025
- 2024AlphaVerus: Bootstrapping Formally Verified Code Generation through Self-Improving Translation and Treefinement9 Dec 2024
- 2025VeruSAGE: A Study of Agent-Based Verification for Rust Systemscited by 12
- 2025Locus: Agentic Predicate Synthesis for Directed Fuzzingcited by 9
- 2026Intent Formalization: A Grand Challenge for Reliable Coding in the Age of AI Agentscited by 9
- 2025Agentic Specification Generator for Move Programscited by 3
- 2026Agentic Interpretation: Lattice-Structured Evidence for LLM-Based Program Analysiscited by 0
- 2026OSFoundry: Building and Evolving Operating Systems with Specification-Guided Agentscited by 0
- 2026TLA-Verus: Generating and Solving Temporal Proof Obligations with LLM Agentscited by 0
- 2026TLA-Verus: Generating and Solving Temporal Proof Obligations with LLM Agents10 Oct 2026
- 2026OSFoundry: Building and Evolving Operating Systems with Specification-Guided Agents8 Aug 2026
- 2026Agentic Interpretation: Lattice-Structured Evidence for LLM-Based Program Analysis12 May 2026
- 2026Intent Formalization: A Grand Challenge for Reliable Coding in the Age of AI Agents17 Mar 2026
- 2025VeruSAGE: A Study of Agent-Based Verification for Rust Systems20 Dec 2025
- 2025Agentic Specification Generator for Move Programs29 Sep 2025
- 2025Locus: Agentic Predicate Synthesis for Directed Fuzzing29 Aug 2025
- 2025Beyond Correctness: Exposing LLM-generated Logical Flaws in Reasoning via Multi-step Automated Theorem Provingcited by 6
- 2026FM-Agent: Scaling Formal Methods to Large Systems via LLM-Based Hoare-Style Reasoningcited by 6
- 2026Can LLMs Reason Like Automated Theorem Provers for Rust Verification? VCoT-Bench: Evaluating via Verification Chain of Thoughtcited by 0
- 2026FM-Agent: Scaling Formal Methods to Large Systems via LLM-Based Hoare-Style Reasoning13 Apr 2026
- 2026Can LLMs Reason Like Automated Theorem Provers for Rust Verification? VCoT-Bench: Evaluating via Verification Chain of Thought18 Mar 2026
- 2025Beyond Correctness: Exposing LLM-generated Logical Flaws in Reasoning via Multi-step Automated Theorem Proving29 Dec 2025
- 2025VERINA: Benchmarking Verifiable Code Generationcited by 34
- 2025CLEVER: A Curated Benchmark for Formally Verified Code Generationcited by 29
- 2026AlgoVeri: An Aligned Benchmark for Verified Code Generation on Classical Algorithmscited by 12
- 2025OSVBench: Benchmarking LLMs on Specification Generation Tasks for Operating System Verificationcited by 8
- 2025EditLord: Learning Code Transformation Rules for Code Editingcited by 4
- 2025Can LLMs Enable Verification in Mainstream Programming?cited by 3
- 2025SymGPT: Auditing Smart Contracts via Combining Symbolic Execution with Large Language Modelscited by 2
- 2025SysMoBench: Evaluating AI on Formally Modeling Complex Real-World Systemscited by 2
- 2026Doc2Spec: Synthesizing Formal Programming Specifications from Natural Language via Grammar Inductioncited by 2
- 2026Spec-Harness: Assessing and Guiding LLM-Synthesized Formal Specifications Beyond Verifiabilitycited by 2
- 2026Certified Program Synthesis with a Multi-Modal Verifiercited by 2
- 2026Formal Disco: Scalable Open-Ended Generation of Formally Verified Programscited by 1
12 most cited of 20 All 20 (JSON)
- 2026Fewer Assumptions by Design: A Reusable Skill for LLM-Assisted Verus Verification28 Sep 2026
- 2026Provably Complete Generalized Planning with LLMs22 Sep 2026
- 2026SkillSpec: Intent-Masked Specification Reasoning for Agent Skill Correctness5 Sep 2026
- 2026Fine-Tuning Qwen3-27B for C-to-Rust Code Translation: A Three-Stage Curriculum of Pretraining, Debugging-Aware SFT, and Task-Specific SFT13 Aug 2026
- 2026Formal Disco: Scalable Open-Ended Generation of Formally Verified Programs6 Jul 2026
- 2026An Empirical Study of LLM-Generated Specifications for VeriFast25 Jun 2026
- 2026AutoACSL: Synthesizing ACSL Specifications by Integrating LLMs with CPG-Based Static Analysis18 Jun 2026
- 2026Viverra: Text-to-Code with Guarantees14 May 2026
- 2026Teaching LLMs Program Semantics via Symbolic Execution Traces7 May 2026
- 2026Certified Program Synthesis with a Multi-Modal Verifier17 Apr 2026
- 2026Spec-Harness: Assessing and Guiding LLM-Synthesized Formal Specifications Beyond Verifiability31 Mar 2026
- 2026AlgoVeri: An Aligned Benchmark for Verified Code Generation on Classical Algorithms10 Feb 2026
12 newest of 20 All 20 (JSON)