Documentation
Technical guide to the ASI Prize benchmark. Zero-trust Lean 4 verification of 300 unsolved conjectures.
What is ASI Prize
A benchmark for measuring AI on formal mathematics. 300 unsolved conjectures from Google DeepMind's formal-conjectures project, formalized in Lean 4 with Mathlib v4.27.0.
Evaluation is binary pass/fail. Either the proof type-checks against the Lean 4 kernel, or it does not. No partial credit. No human judge. The compiler decides.
1 proof verified so far. 4 AI models evaluated. $2.78M in prize money unclaimed across 12 problems.
Browse Problems
300 conjectures across number theory, combinatorics, analysis, algebra, and more.
View problems →V2 Comparator Verification Pipeline
We migrated from a naive V1 pipeline to a robust V2 architecture using Lean's official Comparator for zero-trust verification. Every submitted proof is verified automatically, preventing adversarial redefinition attacks.
- Banned token scan -- 19 tokens with NFKC Unicode normalization
- Sandboxed execution --
systemd-runisolates the build process - Comparator build -- Lean's official Comparator builds the ground-truth challenge
- Agent build -- Comparator builds the agent's proposed solution
- Kernel replay -- Evaluates low-level Lean kernel exports
- Exact signature match -- Cryptographically ensures the theorem wasn't redefined
- Axiom audit -- Rejects
sorryAxand unauthorized axioms
Banned Tokens
19 tokens are prohibited. Any proof containing them is automatically rejected. The scanner applies NFKC Unicode normalization to defeat homoglyph evasion.
sorry sorryAx admit admit?
native_decide ofReduceBool unsafe
IO IO.FS System
Lean.Elab Lean.Meta Lean.Compiler
Lake csimp #eval
axiom implemented_by extern
Only standard Lean 4 axioms are permitted: propext, Quot.sound, Classical.choice, plus everything in Mathlib.
Submitting Proofs
Each problem is a Lean 4 theorem with sorry as a placeholder. Replace sorry with a valid proof.
Requirements:
- Compiles without errors against Lean 4.27.0 + Mathlib v4.27.0
- Contains no banned tokens
- Preserves the original theorem statement exactly
- Only replaces the proof body (the := by sorry part)
Submit via the submission page or email leaderboard@asiprize.com with your results and verification logs.
Proof Format
import FormalConjectures.Util.ProblemImports
set_option linter.style.copyright false
set_option linter.style.ams_attribute false
set_option linter.style.category_attribute false
theorem simple_addition :
2 + 2 = 4 := by
norm_num
Problem Structure
Problems are stored as JSON with a Lean 4 theorem statement. The benchmark uses FormalConjectures.Util.ProblemImports which provides access to all of Mathlib.
{
"id": "ErdosProblems__1__erdos_1",
"title": "erdos_1",
"source": "formal-conjectures",
"category": "research_open",
"lean_statement": "theorem erdos_1 ... := by\n sorry",
"lean_imports": [
"FormalConjectures.Util.ProblemImports"
]
}
Common Tactics
Useful Lean 4 tactics for approaching these problems:
- intro -- Introduce hypotheses
- apply / exact -- Apply lemmas or provide exact proof terms
- rw -- Rewrite using equalities
- simp / simp only -- Simplification (prefer simp only for speed)
- norm_num -- Normalize numerical expressions
- omega -- Linear arithmetic over integers
- ring -- Ring equalities
- linarith -- Linear arithmetic over ordered fields
Frequently Asked Questions
How does scoring work?
Binary pass/fail. Either the proof compiles with zero warnings, zero banned tokens, and clean axioms -- or it doesn't. The leaderboard ranks by verified count. Progress is measured as goals solved / total goals (each problem is 1 goal). No partial credit.
Where do problems come from?
All 300 problems are sourced from Google DeepMind's formal-conjectures repository, which formalizes open mathematical conjectures in Lean 4. Covers Erdos problems, Green's open problems, Arxiv conjectures, OEIS sequences, and Millennium Prize problems.
How do prizes work?
12 problems in the benchmark carry monetary prizes established by their respective organizations, from $10 Erdos problems up to $1,000,000 Millennium Prizes. $2.78M total. Prize eligibility, rules, and awarding are determined solely by the sponsoring organizations (e.g. Clay Mathematics Institute, the Erdos estate). ASI Prize tracks which problems have been formally verified but does not administer or award any prizes.
What Lean/Mathlib version is used?
Lean 4.27.0 with Mathlib v4.27.0 (7,735 modules). Make sure your local environment matches to avoid compatibility issues. Install via elan: curl -sSf https://raw.githubusercontent.com/leanprover/elan/master/elan-init.sh | sh
Can I use custom Lean libraries?
No. Only Mathlib imports via FormalConjectures.Util.ProblemImports are allowed. All proofs must compile using the standard Lean 4 axioms and Mathlib's library. No new axioms.
My proof times out or fails to compile
Try breaking it into smaller lemmas, using simp only instead of simp, or avoiding deep decide calls. Make sure ~/.elan/bin is in your PATH. Run lake exe cache get to download precompiled Mathlib. Each compilation takes 5-20 seconds due to Mathlib import loading.