SYNTOLOGY HomeExplorerAtlasCodeMethodologyAboutDevelopersFeedPricing
Paper · 2410.15700 · 2024

InternLM2.5-StepProver: Advancing Automated Theorem Proving via Critic-Guided Search

arXiv · PDF · Open in the Atlas

Code that ran

We lifted 8 functions out of this paper's own repositories and ran 1 of them in a sandbox. "Ran" means the function executed on a synthesized input and returned a value. It is not a reproduction of the paper's results.

RepositoryRoleRan
internlm/internlm-math canonical 1 of 8
FunctionStatusWhere it lives
last_boxed_only_string Ran internlm/internlm-math/agent/math_agent.py
code served (permissive licence) · get_code("90b5c896e5eaea5e")
chat_template_to_prompt Not yet run internlm/internlm-math/minif2f/proofsearch_internLM2-StepProver.py
code served (permissive licence) · get_code("18f7e366cfc06dcf")
extract_answer Not yet run internlm/internlm-math/agent/math_agent.py
code served (permissive licence) · get_code("6cd811d1cce3b5e7")
prompt_style_internlm_chat_0522_extractor Not yet run internlm/internlm-math/minif2f/proofsearch_internLM2-plus.py
code served (permissive licence) · get_code("456a2964e717bec5")
prompt_style_internlm_chat_stepprover_extractor Not yet run internlm/internlm-math/minif2f/proofsearch_internLM2-StepProver.py
code served (permissive licence) · get_code("8714ac414e59c631")
prompt_style_internlm_chat_stepprover_extractor Not yet run internlm/internlm-math/minif2f/proofsearch_internLM2.5-StepProver.py
code served (permissive licence) · get_code("0bb1f90bd9143446")
resume_from Not yet run internlm/internlm-math/minif2f/proofsearch_internLM2.py
code served (permissive licence) · get_code("f227a3efda0fb0e6")
strip_string Not yet run internlm/internlm-math/agent/math_agent.py
code served (permissive licence) · get_code("d80926644fbab50a")

Repositories linked to this paper

Some links come from the archived Papers with Code dataset (CC BY-SA 4.0): attribution and licence.

Abstract

Large Language Models (LLMs) have emerged as powerful tools in mathematical theorem proving, particularly when utilizing formal languages such as LEAN. A prevalent proof method involves the LLM prover iteratively constructing the proof tactic by tactic, typically following a best-first search scheme. However, this method often ignores the critical preference information inside the existing tactic trajectories, hindering the search for deeper proofs. We propose an intuitive yet effective method, which utilizes a critic model to capture the preference information and to guide the search of the prover model at runtime. Given the prover-critic framework, a large-scale expert iteration with more than 20,000 CPU days is then applied to further fine-tune the prover and the critic. The trained InternLM2.5-StepProver critic significantly boosts the performance of the prover model (59.4% to 65.9%). We also analyze the impact of the critic on various aspects of the theorem proving process during expert iteration, providing insights into its effectiveness. We open-source our models and searched proofs at https://github.com/InternLM/InternLM-Math and https://huggingface.co/datasets/internlm/Lean-Workbook.

For agents

The same record, over MCP at https://syntology.ai/mcp:

get_harvested_code_for_paper("2410.15700")
get_code_for_paper("2410.15700")
have("2410.15700")

Connect an agent — have() is free.