Skip to content

Latest commit

 

History

3 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 

Repository files navigation

UniMath

UniMath-35B-A3B is an open-source olympiad-level mathematical reasoning model with 35 billion total parameters and 3 billion activated per token. Developed by UniPat AI, it is obtained by further post-training Qwen3.6-35B-A3B on fine-grained proof-synthesis data covering the full arc of a proof: initial attempt, self-critique, obstruction diagnosis, targeted repair, and final synthesis. This activates a reusable self-evolving reasoning capability rather than a fixed answer format, and at test time UniMath-35B-A3B spends additional compute auditing, repairing, and reconciling its own proof attempts instead of resampling blindly.

With this test-time self-evolution, UniMath-35B-A3B reaches human gold-medal-contestant level on IMO 2025 (35/42) and USAMO 2026 (36/42), and scores 86.0% on IMO-ProofBench.

More details can be found in our Blog and on Hugging Face.

Key Features

  • Fine-Grained Proof-Evolution Data: Training trajectories supervise how a proof changes, not only what the final proof says — an initial route with visible proof obligations, a critical self-assessment naming the first real obstruction, a targeted repair or reroute that preserves earned mathematics, and a final synthesis that fuses drafts, critiques, and surviving routes into one rigorous argument.
  • Test-Time Self-Evolution: At inference time the model reuses this learned proof-editing loop instead of blind resampling — it samples and self-ranks a pool of candidate proofs, refines the strongest non-perfect candidates by repairing their first real obstruction, and merges surviving proofs so a clean lemma from one route can rescue a stronger route from another.
  • Adaptive Inference Compute: The self-evolution loop short-circuits straight to synthesis once enough self-verified proofs accumulate, so extra inference budget is spent only where a problem is genuinely hard.

Results

Scores use the strict {0, 1, 6, 7} proof rubric; each olympiad is out of 42 points. w/o TTS is avg@8 direct proof attempts; w/ TTS is the final proof produced by the test-time self-evolution loop in tts_eval.

Benchmark w/o TTS w/ TTS
IMO 2025 (/42) 20.25 35 🥇
USAMO 2026 (/42) 17.88 36 🥇
IMO-ProofBench (%) 52.6% 86.0%

See the blog post for the full per-problem breakdown and case studies.

Repository Structure

  • tts_eval/ — self-contained test-time scaling (TTS) evaluation framework used to produce the w/ TTS results above. Implements the pool_refine_tournament strategy (sample & rank → refine the best → merge the survivors) against an OpenAI-compatible API, with bundled IMO 2025 / USAMO 2026 / IMO-ProofBench datasets and independent reference graders.

Quickstart

cd tts_eval
pip install -r requirements.txt
cp .env.example .env      # fill in BASE_URL / API_KEY
./run_tts.sh              # default config, all imo2025 problems

See tts_eval/README.md for the full strategy description, configuration options, and output format.

Download

Model weights are available on Hugging Face; run the inference/evaluation scripts in this repository against them.

Citation

@misc{unipat2026unimath,
  title   = {UniMath: From Proof-Synthesis Data to Test-Time Self-Evolution},
  author  = {UniPat AI},
  year    = {2026},
  url     = {https://unipat.ai/blog/UniMath},
}

About

No description, website, or topics provided.

Resources

Stars

1 star

Watchers

0 watching

Forks

Releases

Packages

Used by

Contributors

Languages