Files
lean-standard-prover-qwen3-…/example_output.json
ModelHub XC cb4cf95a97 初始化项目,由ModelHub XC社区提供模型
Model: EPFL-LARA/lean-standard-prover-qwen3-8b-reasoning-grpo
Source: Original Platform
2026-10-25 01:40:19 +08:00

36 lines
4.7 KiB
JSON
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

{
"model_id": "EPFL-LARA/lean-standard-prover-qwen3-8b-reasoning-grpo",
"backend": "transformers",
"input": "import Mathlib\n\ntheorem demo (n : ℕ) : n + 0 = n := by sorry\n",
"prompt": "Solve the following problem with Lean 4 code and explanatory comments:\n\n```lean4\nimport Mathlib\n\n\ntheorem demo (n : ℕ) : n + 0 = n := by sorry\n```\n\nReplace every sorry statement with an appropriate proof. Before writing any Lean code, give an informal solution with the sections [Problem Restatement], [Useful Observations], [Reasoning Path], [Key Derivation], [Proof Type], [Formal Anchors] and [Final Solution]. Then provide the complete solution in the lean4 code block. If a previous attempt failed, first give [Error Analysis], [Revised Reasoning] and [Updated Proof Plan], then provide the corrected solution.\n",
"response": "[Problem Restatement]\n\nFor every natural number \\(n\\), adding zero to \\(n\\) leaves \\(n\\) unchanged. In symbols, the claim is\n\n\\[\nn + 0 = n.\n\\]\n\nThis is one of the basic properties of addition on the natural numbers.\n\n[Useful Observations]\n\n1. **Zero is the additive identity.** In any algebraic structure with addition, the element \\(0\\) is defined by the property that adding it to any element does not change that element. For natural numbers, this is exactly the statement \\(n + 0 = n\\).\n\n2. **Natural numbers are built recursively.** The natural numbers are generated from \\(0\\) by repeatedly applying the successor operation. This means any proof about all natural numbers can be reduced to checking the base case \\(n = 0\\) and then verifying that the property is preserved when moving from \\(n\\) to \\(n+1\\).\n\n3. **The successor case is immediate.** If we already know \\(n + 0 = n\\), then adding one more zero gives \\((n+1) + 0 = n+1\\). This is just the same identity applied to the successor of \\(n\\).\n\n[Reasoning Path]\n\nTo prove \\(n + 0 = n\\) for all natural numbers, we use the recursive definition of the natural numbers.\n\n- **Base case:** When \\(n = 0\\), the statement becomes \\(0 + 0 = 0\\), which is true by the definition of addition.\n\n- **Inductive step:** Assume the statement holds for some natural number \\(n\\), i.e., \\(n + 0 = n\\). We must show it holds for \\(n+1\\), i.e., \\((n+1) + 0 = n+1\\). But \\((n+1) + 0\\) is just \\(n+1\\) by the definition of addition, so the statement is true for \\(n+1\\) as well.\n\nSince both the base case and the inductive step are immediate, the identity holds for every natural number \\(n\\).\n\n[Key Derivation]\n\nThe entire derivation is captured by the two equations:\n\n\\[\n0 + 0 = 0,\n\\]\n\nand\n\n\\[\n(n+1) + 0 = n+1.\n\\]\n\nThese are exactly the base and successor cases of the recursive definition of addition on natural numbers.\n\n[Proof Type]\n\nThis is a direct proof by induction on the natural number \\(n\\).\n\n[Formal Anchors]\n\nThe Lean proof uses induction on \\(n\\):\n\n```lean4\ninduction n with\n| zero => rfl\n| succ n ih => ...\n```\n\nThe base case is closed by reflexivity (`rfl`), and the successor case follows from the induction hypothesis (`ih`) together with the simplifier (`simp`), which uses the recursive definition of addition.\n\n[Final Solution]\n\nWe prove that \\(n + 0 = n\\) for every natural number \\(n\\) by induction.\n\n- For \\(n = 0\\), we have \\(0 + 0 = 0\\), which is true.\n- Assume \\(n + 0 = n\\). Then \\((n+1) + 0 = n+1\\), which is also true.\n\nBy induction, \\(n + 0 = n\\) for all natural numbers \\(n\\).\n\nThe complete typechecked Lean 4 proof is:\n\n```lean4\nimport Mathlib\n\n\ntheorem demo (n : ℕ) : n + 0 = n := by\n induction n with\n | zero => rfl\n | succ n ih => simp_all\n```\n",
"lean_code": "import Mathlib\n\n\ntheorem demo (n : ℕ) : n + 0 = n := by\n induction n with\n | zero => rfl\n | succ n ih => simp_all",
"generation": {
"seed": 0,
"temperature": 0.3,
"top_p": 0.95,
"top_k": 0,
"min_p": 0.0,
"max_new_tokens": 2048,
"add_special_tokens": false
},
"environment": {
"torch": "2.9.0+cu129",
"transformers": "4.57.3",
"gpu": "NVIDIA H100 80GB",
"dtype": "bfloat16"
},
"verification": {
"lean_version": "4.15.0",
"compiled": true,
"original_theorem_type_checked": true,
"contains_sorry": false
},
"weight_sha256": {
"model-00001-of-00004.safetensors": "d79d2c92edf0e7eb3a6464b7ce9e001a84cb447af3febbfdb008e5988c1aa2ba",
"model-00002-of-00004.safetensors": "01991c30312fda63ec2aa9347f92482830cadfbba036d015626ddbb2eaca14e7",
"model-00003-of-00004.safetensors": "ce8d19bbbae39f2899b439d8f82288f6900dd22c8b486c3b138e4a4a81d9eb47",
"model-00004-of-00004.safetensors": "dbc2edab062ddf3620a7a0b9dcc69bac434441f638f7de1acfe1f8c1ab7f7043"
}
}