Goedel-Prover - Automated formal proof generation of mathematical problems and open-source inference models
Goedel-Prover is an open-source large-scale language model (LLM) developed by Princeton University, Tsinghua University, and other institutions. It is used to automate the generation of formal proofs for mathematical problems. Based on natural language processing...
What is Goedel-Prover?
Goedel-Prover is an open-source large-scale language model (LLM) developed by Princeton University, Tsinghua University, and other institutions for automating the generation of formal proofs for mathematical problems. It addresses the scarcity of formal mathematical statements and proofs by translating natural language mathematical problems into formal languages (such as Lean 4). Goedel-Prover is trained using an expert iterative method, continuously expanding its formal proof dataset to progressively improve its proof capabilities. It has demonstrated outstanding performance across multiple benchmarks, achieving a 57.6% success rate in the miniF2F benchmark, significantly outperforming previous open-source models. Goedel-Prover has successfully solved seven problems in PutnamBench and generated nearly 30,000 formal proofs for the Lean Workbook, representing a major breakthrough in the field of automated theorem proving.
Main functions of Goedel-Prover
- Formal translationThe goal is to convert natural language mathematical problems into formal language, ensuring the accuracy and completeness of the translation.
- Proof generationIt automatically generates complete proofs and supports complex mathematical reasoning.
- Performance optimizationThe proof capability is continuously optimized based on the expert iterative method, thereby improving the proof success rate.
- Large-scale data processingIt processes and generates large-scale formal statements and proof datasets to improve the generalization ability of models.
The technical principles of Goedel-Prover
- Formal translation:
- Natural language mathematical problems are translated into Lean 4 formal languages using two formalizers (Formalizer A and Formalizer B). The two formalizers are trained on different datasets to increase the diversity of formalization styles.
- The quality of formal statements is evaluated based on compilation correctness (CC) tests and fidelity and completeness (FC) tests to ensure that they conform to Lean syntax and accurately capture the meaning of the original problem.
- Expert IterationIn the initial stage, multiple proof candidates are generated for each formal statement using existing provers (such as DeepSeek-Prover-V1.5-RL), and the correctness of the proofs is verified using the Lean compiler. The verified proofs are collected and used as training data to perform supervised fine-tuning of the base model (such as DeepSeek-Prover-V1.5-Base), generating new provers. This process is repeated, with each iteration generating more proofs using the new provers and adding them to the training data, gradually improving the model's proving ability.
- Dataset ExpansionIn addition to using the publicly available Numina dataset, Goedel-Prover formalizes a large number of privately collected mathematical problems and merges them with existing statements in the Lean Workbook to form a large-scale dataset of formalized statements. During training, external datasets such as Mathlib4 are gradually added to enhance the model's adaptability to different mathematical domains.
Goedel-Prover project address
- GitHub repository:https://github.com/Goedel-LM/Goedel-Prover
- HuggingFace model library:https://huggingface.co/Goedel-LM/Goedel-Prover
- arXiv technical paper:https://arxiv.org/pdf/2502.07640v1
Application scenarios of Goedel-Prover
- Mathematical researchIt helps mathematicians quickly verify the proofs of complex theorems, accelerating the research process.
- Mathematics teachingIt provides teachers with detailed proofs to help students understand mathematical concepts and logic.
- Software verificationTo verify the logical correctness of software algorithms and improve the reliability and security of software.
- AI algorithm verificationTo verify the theoretical basis of AI algorithms and ensure their logical correctness and performance.
- Interdisciplinary researchTo verify the theoretical connections between different disciplines and provide theoretical support for interdisciplinary research.