UGMathBench Undergraduate Math Reasoning Benchmark
Source, license and coverage
Supplier documentation. These claims are separate from the automated sample score. A listing edit date is not a data freshness date.
- License
- gpl-3.0
- Source / creator
- UGMathBench/ugmathbench
- Collection method
- The authors curated problems from undergraduate mathematics course materials covering 16 subjects and 111 topics, then generated three randomized versions of each problem (varying numerical values or surface form) to mitigate test-set memorization and enable robustness evaluation. Answers are typed into 10 categories to support automated grading. See the paper for full curation and randomization protocol.
- Coverage start
- Not documented
- Coverage end
- Not documented
- Data last updated
- Not documented
- Update schedule
- Not documented
English-only. Coverage is undergraduate-level and may not represent graduate research mathematics or competition math. The three randomized versions are derived from the same source problem, so they are not statistically independent samples. The GPL-3.0 license is share-alike and copyleft — downstream derivative datasets may inherit GPL obligations. Source does not document demographic or institutional sampling biases; buyers should validate empirically for their use case.
Sample structure score: 100 / 100
This automated check describes the inspected sample, not factual accuracy, legal rights, representativeness, or the quality of the entire dataset. It is not a customer rating.
Assessed 10 sample records (JSON) on 2026-10-09. All records in the provided sample were checked.
| Check | Points | Evidence |
|---|---|---|
| Populated cells | 50 / 50 | 180 of 180 top-level cells contain a value. Null, absent and blank values count as missing; zero and false count as populated. |
| Consistent value types | 30 / 30 | 180 of 180 populated cells match their column's most common observed type. Types are inferred, not checked against real-world truth. |
| Consistent record shape | 20 / 20 | 10 of 10 records have the expected fields. CSV/TSV use the header width; JSON uses the union of observed keys. |
Field-level findings and improvements
Check missing cells and mixed types below. Document intentional missing values or mixed types in your field descriptions. Do not fill legitimate unknowns with invented values just to increase this score.
| Field | Missing cells | Most common type | Other populated types |
|---|---|---|---|
| id | 0 / 10 | string | 0 / 10 |
| subject | 0 / 10 | string | 0 / 10 |
| topic | 0 / 10 | string | 0 / 10 |
| subtopic | 0 / 10 | string | 0 / 10 |
| level | 0 / 10 | number | 0 / 10 |
| keywords | 0 / 10 | object | 0 / 10 |
| problem_v1 | 0 / 10 | string | 0 / 10 |
| answer_v1 | 0 / 10 | object | 0 / 10 |
| answer_type_v1 | 0 / 10 | object | 0 / 10 |
| options_v1 | 0 / 10 | object | 0 / 10 |
| problem_v2 | 0 / 10 | string | 0 / 10 |
| answer_v2 | 0 / 10 | object | 0 / 10 |
| answer_type_v2 | 0 / 10 | object | 0 / 10 |
| options_v2 | 0 / 10 | object | 0 / 10 |
| problem_v3 | 0 / 10 | string | 0 / 10 |
| answer_v3 | 0 / 10 | object | 0 / 10 |
| answer_type_v3 | 0 / 10 | object | 0 / 10 |
| options_v3 | 0 / 10 | object | 0 / 10 |
About this data
Undergraduate-level math problems spanning 16 subjects and 111 topics with 10 answer types. Designed for evaluating LLM mathematical reasoning capabilities.
Retrieve with your agent or Python
Create an account and configure DATABAZAAR_API_KEY. This example retrieves free or already purchased data; it never makes a purchase. For a multi-file dataset, choose a file index from the manifest.
Download the Python examplepython3 retrieve-dataset.py 7365810b-f9f6-453b-a8f0-1e378c4ea823 --output dataset.bin
Full supplier documentation
Schema
| Name | Type | Description |
|---|---|---|
| id | VARCHAR | Unique problem identifier combining subject and numeric code |
| subject | VARCHAR | Undergraduate math subject; one of 16 values (e.g., Complex_analysis, Linear_algebra) |
| topic | VARCHAR | Finer-grained topic within subject; one of 111 values |
| subtopic | VARCHAR | Specific skill or concept area within the topic |
| level | VARCHAR | Difficulty level; integer 1–4 representing undergraduate year or complexity |
| keywords | VARCHAR[] | Array of searchable tags describing problem domain and techniques |
| problem_v1 | VARCHAR | Natural-language problem statement for variant 1, with LaTeX notation and [ANS] placeholders |
| answer_v1 | VARCHAR[] | Array of ground-truth answers for variant 1, one per [ANS] placeholder |
| answer_type_v1 | VARCHAR[] | Array of answer format codes for variant 1 (e.g., NV=numeric value, MC=multiple choice) |
| options_v1 | VARCHAR[][] | Array of answer choice arrays for variant 1; empty if answer_type is not multiple-choice |
| problem_v2 | VARCHAR | Natural-language problem statement for variant 2, with LaTeX notation and [ANS] placeholders |
| answer_v2 | VARCHAR[] | Array of ground-truth answers for variant 2, one per [ANS] placeholder |
| answer_type_v2 | VARCHAR[] | Array of answer format codes for variant 2 (e.g., NV=numeric value, MC=multiple choice) |
| options_v2 | VARCHAR[][] | Array of answer choice arrays for variant 2; empty if answer_type is not multiple-choice |
| problem_v3 | VARCHAR | Natural-language problem statement for variant 3, with LaTeX notation and [ANS] placeholders |
| answer_v3 | VARCHAR[] | Array of ground-truth answers for variant 3, one per [ANS] placeholder |
| answer_type_v3 | VARCHAR[] | Array of answer format codes for variant 3 (e.g., NV=numeric value, MC=multiple choice) |
| options_v3 | VARCHAR[][] | Array of answer choice arrays for variant 3; empty if answer_type is not multiple-choice |
Sample Data
Preview a sample of the data before downloading.
Public sample only. Sign in to retrieve the full dataset, including free datasets.
For AI Agents
# 1. Add to your agent's MCP config (claude_desktop_config.json or similar):
{
"mcpServers": {
"databazaar": { "command": "npx", "args": ["databazaar-mcp"] }
}
}
# 2. Your agent can then call:
search_datasets({ query: "UGMathBench Undergraduate Math" })
// Found: 7365810b-f9f6-453b-a8f0-1e378c4ea823
get_download_url({ dataset_id: "7365810b-f9f6-453b-a8f0-1e378c4ea823" }) // free — sign in with MCP OAuth first# Free dataset — sign in or use your account API key: curl https://api.databazaar.io/datasets/7365810b-f9f6-453b-a8f0-1e378c4ea823/download-url -H "Authorization: Bearer $DATABAZAAR_API_KEY"