ImProver: Agent-Based Automated Proof Optimization
Riyaz Ahuja Jeremy Avigad Prasad Tetali Sean Welleck
Large language models (LLMs) have been used to generate formal proofs of mathematical theorems in proofs assistants such as Lean.
However, we often want to optimize a formal proof with respect to various criteria, depending on its downstream use.
For example, we may want a proof to adhere to a certain style, be declaratively structured, or concise. Having suitably optimized proofs is also important for learning tasks, especially since human-written proofs may not optimal for that purpose.
To this end, we study a new problem of automated proof optimization: rewriting a proof so that it is correct and optimizes for an arbitrary criterion, such as length or declarativity.
As a first method for automated proof optimization, we present ImProver, a large-language-model agent that rewrites proofs to optimize arbitrary user-defined metrics in Lean.
We find that naively applying LLMs to proof optimization falls short, and we incorporate various improvements into ImProver, such as the use of symbolic Lean context in a novel Chain-of-States technique, as well as error-correction and retrieval. We test ImProver on rewriting real-world undergraduate, competition, and research-level mathematics theorems, finding that ImProver is capable of rewriting proofs so that they are substantially shorter and more declarative in structure.
Automated Proof Optimization, Neural Theorem Proving, Formal Mathematics, Lean Theorem Prover, Proof Generation, Large Language Models, Symbolic Reasoning, Interactive Theorem Proving
ImProver optimizes formal mathematical proofs for arbitrary metrics using LLM agents, automatically improving proof readability and length in Lean as well as generalizing NTP.