Baldur: Whole-Proof Generation and Repair with Large Language Models
Authors: Emily First, Markus N. Rabe, Talia Ringer, Yuriy Brun
AI-generated Key Points
- Introduction of a novel method for automating formal verification in software properties
- Proposal of leveraging large language models trained on natural language text, code, and fine-tuned on proofs
- Generation of whole proofs for theorems at once instead of step-by-step generation
- Combination of proof generation model with a fine-tuned repair model to fix issues in generated proofs
- Demonstration that whole-proof generation using transformers is as effective as search-based techniques without costly search operations
- Introduction of additional context to the learned model, such as prior failed proof attempts and associated error messages, leading to improved proof repair and automated proof generation
- Establishment of a new state-of-the-art for fully automated proof synthesis
- Development and evaluation of a prototype called Baldur on a benchmark comprising 6,336 Isabelle/HOL theorems and their corresponding proofs
- Comparison with an existing tool called Thor, showing that Baldur can automatically generate proofs for an additional 8.7% of the theorems compared to Thor
- Achievement of full automation in proving 65.7% of the considered theorems by combining Baldur and Thor
- Opening up new avenues for utilizing large language models in automating formal verification and streamlining software development processes.
Abstract: Formally verifying software properties is a highly desirable but labor-intensive task. Recent work has developed methods to automate formal verification using proof assistants, such as Coq and Isabelle/HOL, e.g., by training a model to predict one proof step at a time, and using that model to search through the space of possible proofs. This paper introduces a new method to automate formal verification: We use large language models, trained on natural language text and code and fine-tuned on proofs, to generate whole proofs for theorems at once, rather than one step at a time. We combine this proof generation model with a fine-tuned repair model to repair generated proofs, further increasing proving power. As its main contributions, this paper demonstrates for the first time that: (1) Whole-proof generation using transformers is possible and is as effective as search-based techniques without requiring costly search. (2) Giving the learned model additional context, such as a prior failed proof attempt and the ensuing error message, results in proof repair and further improves automated proof generation. (3) We establish a new state of the art for fully automated proof synthesis. We reify our method in a prototype, Baldur, and evaluate it on a benchmark of 6,336 Isabelle/HOL theorems and their proofs. In addition to empirically showing the effectiveness of whole-proof generation, repair, and added context, we show that Baldur improves on the state-of-the-art tool, Thor, by automatically generating proofs for an additional 8.7% of the theorems. Together, Baldur and Thor can prove 65.7% of the theorems fully automatically. This paper paves the way for new research into using large language models for automating formal verification.
Tools for this paper
Ask questions about this paper to our AI assistant
You can also chat with multiple papers at once here.
⚠The license of the paper does not allow us to build upon its content and the AI assistant only knows about the paper metadata rather than the full article.
The previous summary was created more than a year ago and can be re-run (if necessary) by clicking on the Run button below.
⚠The license of this specific paper does not allow us to build upon its content and the summarizing tools will be run using the paper metadata rather than the full article. However, it still does a good job, and you can also try our tools on papers with more open licenses.
Similar papers summarized with our AI tools
Navigate through even more similar papers through a
tree representationLook for similar papers (in beta version)
We compare the title and abstract with papers indexed in our database. For arXiv papers, we search within the same category; for DOI and other sources, we search across sources and subjects. You can rerun the search as our database grows.
Disclaimer: The AI-based summarization tool and virtual assistant provided on this website may not always provide accurate and complete summaries or responses. We encourage you to carefully review and evaluate the generated content to ensure its quality and relevance to your needs.