Skip to content

Add Level column to IMO-AnswerBench#6

Open
Ashutosh0x wants to merge 2 commits intogoogle-deepmind:mainfrom
Ashutosh0x:feature/add-level-column-answerbench
Open

Add Level column to IMO-AnswerBench#6
Ashutosh0x wants to merge 2 commits intogoogle-deepmind:mainfrom
Ashutosh0x:feature/add-level-column-answerbench

Conversation

@Ashutosh0x
Copy link

Closes #4

Adds a Level column to answerbench.csv with difficulty classifications (pre-IMO, IMO-Easy, IMO-Medium, IMO-Hard), matching the existing Level column in proofbench.csv. Levels assigned from Source column heuristics.

Changes:

  • answerbench.csv: Added Level column to all 400 problems
  • types.py: Added level field to AnswerBenchProblem
  • loader.py: Added level filter to load_answerbench()
  • validators.py: Added Level to required fields
  • Fixed Python 3.8 compatibility (Dict/List from typing)
  • Added level filter test; all 11 tests pass
tryh4rd-26 and others added 2 commits February 6, 2026 20:19
- Add Level column to answerbench.csv with difficulty levels:
  pre-IMO (36), IMO-Easy (11), IMO-Medium (281), IMO-Hard (72)
- Levels assigned based on Source competition classification:
  * pre-IMO: AIME, AMC, USAMTS, HMMT, Mathcounts, Junior competitions
  * IMO-Easy: Balkan MO, APMO, EGMO, Benelux, Baltic
  * IMO-Medium: IMO Shortlist, national MOs (default)
  * IMO-Hard: TST selections, Putnam, China/Iran competitions
- Update AnswerBenchProblem dataclass with level field
- Update loader.py with level filter support
- Update validators.py with Level in required fields
- Fix Python 3.8 compatibility (Dict/List from typing)
- Add test_load_answerbench_with_level_filter test
- All 11 tests pass
@Ashutosh0x
Copy link
Author

Note: This PR is built on top of the library introduced in PR #5. It adds the 'Level' column and updates the AnswerBench loader/types to support it.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

2 participants