SYNTOLOGY HomeExplorerAtlasCodeMethodologyAboutDevelopersFeedPricing
Paper · 2504.16891 · 2025

AIMO-2 Winning Solution: Building State-of-the-Art Mathematical Reasoning Models with OpenMathReasoning dataset

arXiv · PDF · Open in the Atlas

Code that ran

We lifted 15 functions out of this paper's own repositories and ran 12 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
kipok/nemo-skills canonical 12 of 15
FunctionStatusWhere it lives
calculate_chunk_indices Ran kipok/nemo-skills/nemo_skills/file_utils.py
code served (permissive licence) · get_code("2e7aafbc230cb972")
determine_proof_status Ran kipok/nemo-skills/nemo_skills/code_execution/proof_utils.py
code served (permissive licence) · get_code("dfb61cd2ac2b564a")
extract_code_output Ran kipok/nemo-skills/nemo_skills/code_execution/utils.py
code served (permissive licence) · get_code("b4bbfbf06bb92de6")
extract_code_to_execute Ran kipok/nemo-skills/nemo_skills/code_execution/utils.py
code served (permissive licence) · get_code("b75a1053974f21ce")
extract_proof_only Ran kipok/nemo-skills/nemo_skills/code_execution/proof_utils.py
code served (permissive licence) · get_code("df5a88c92c8f57ce")
format_code_output Ran kipok/nemo-skills/nemo_skills/code_execution/utils.py
code served (permissive licence) · get_code("b2186409cb2b7dfb")
get_logger_name Ran kipok/nemo-skills/nemo_skills/utils.py
code served (permissive licence) · get_code("364d75dfb259e939")
import_score_module Ran kipok/nemo-skills/nemo_skills/evaluation/compute_group_score.py
code served (permissive licence) · get_code("28ecc1878ccced7c")
init_wandb Ran kipok/nemo-skills/nemo_skills/utils.py
code served (permissive licence) · get_code("a2afdfc356abe1d1")
jload Ran kipok/nemo-skills/nemo_skills/file_utils.py
code served (permissive licence) · get_code("8c48543062658550")
load_metric_files Ran kipok/nemo-skills/nemo_skills/evaluation/compute_group_score.py
code served (permissive licence) · get_code("6f55869f2815d973")
setup_logging Ran kipok/nemo-skills/nemo_skills/utils.py
code served (permissive licence) · get_code("4261064eb4ec7756")
count_newlines Not yet run kipok/nemo-skills/nemo_skills/file_utils.py
code served (permissive licence) · get_code("5b3c40e3214faf87")
load_config Not yet run kipok/nemo-skills/nemo_skills/conversion/hf_to_nemo_llama.py
code served (permissive licence) · get_code("e74354657e62b51d")
load_config Not yet run kipok/nemo-skills/nemo_skills/conversion/hf_to_nemo_qwen.py
code served (permissive licence) · get_code("de5cce096268a65e")

Repositories linked to this paper

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

Abstract

This paper presents our winning submission to the AI Mathematical Olympiad - Progress Prize 2 (AIMO-2) competition. Our recipe for building state-of-the-art mathematical reasoning models relies on three key pillars. First, we create a large-scale dataset comprising 540K unique high-quality math problems, including olympiad-level problems, and their 3.2M long-reasoning solutions. Second, we develop a novel method to integrate code execution with long reasoning models through iterative training, generation, and quality filtering, resulting in 1.7M high-quality Tool-Integrated Reasoning solutions. Third, we create a pipeline to train models to select the most promising solution from many candidates. We show that such generative solution selection (GenSelect) can significantly improve upon majority voting baseline. Combining these ideas, we train a series of models that achieve state-of-the-art results on mathematical reasoning benchmarks. To facilitate further research, we release our code, models, and the complete OpenMathReasoning dataset under a commercially permissive license.

For agents

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

get_harvested_code_for_paper("2504.16891")
get_code_for_paper("2504.16891")
have("2504.16891")

Connect an agent — have() is free.