All tasks
Task · lean-simplification

Math proof simplification

Simplify Lean 4 proofs

Math & GamesInspired byAxiom

Grading pipeline

  1. 1Collect · snapshotHarbor collects /workspace/outputimmutable submission · digest
    ›
  2. 2Reviewautomatic · trusted verifier3 task-local checks
    ›
  3. 3Preflighttask verifier checks config and databefore GPU provisioning
    ›
  4. 4Launch · readyoffline · 1× H100 80GBbash /submission/serve.shGET /health = 200 · ≤ 300 s
    ›
  5. 5Infer354 × POST /simplifyc=8 · ≤ 2700 s
    ›
  6. 6ScoreMean valid proof-token reduction
    ›
  7. 7Harbor resultresult.json · reward.txt

Environments

Entry
Harbor → tests/test.sh → grade.py → frontier_ml.grading.grade
Verifier
2.3 h · 8 CPU · 40 GiB
Agent
4 h · 2 CPU · 8 GiB
Network
public (trusted verifier) · offline (candidate inference)
Env
MODAL_TOKEN_IDMODAL_TOKEN_SECRETMODAL_ENVIRONMENTDAYTONA_API_KEYFML_GRADING_RESOURCESFML_GRADING_CREDENTIALS_SECRETOPENAI_API_KEYOPENROUTER_API_KEYHF_TOKENANTHROPIC_API_KEYFML_REVIEW_API_KEYFML_REVIEW_BASE_URLFML_REVIEW_MODELFML_REVIEW_BACKENDFML_REVIEW_PROVIDERFML_REVIEW_SKIPFML_REVIEW_AWS_REGIONAWS_BEARER_TOKEN_BEDROCKAWS_REGIONCODEX_API_KEY

Verifier config

concurrency
8
inference_timeout_seconds
2700
require_h100
true
expected_samples
354
batch_budget_seconds
2700
proof_timeout_seconds
60
preflight_timeout_seconds
900
verifier_lifetime_seconds
5400

Architecture review

A trusted reviewer reads the submission and trajectory and fails it on any of these checks.

  1. training_data_provenance
    Training code, data manifests, download commands and retained logs establish where the data used to train, fine-tune, calibrate or select the prover, its search heuristics or any ranking model came from, consistent with the contract: training splits of public datasets, other public corpora, proofs the candidate generated itself with Lean and the shipped public examples in /task/public are fine. What fails: any use of the held-out set or of any revision of the dataset repository pinned in /task/setup.json (inductionlabs/frontier-ml-tasks, folder lean-simplification, whose private folder is publicly readable) beyond those shipped examples; training, fine-tuning, calibrating or selecting on the validation or test split of any public dataset or benchmark; or unsupported provenance. Look for validation/test file names, benchmark loaders, split arguments, dataset-repository downloads and proof corpora keyed by theorem statement in the training, calibration and checkpoint-selection code, and in any data the submission bundles. Incidental exposure during a declared base model's upstream pretraining is not itself disqualifying. A submission with no trained component states so; absent provenance for a trained component fails.
  2. no_proof_lookup
    Trace the POST /simplify handler: each returned proof is produced at request time from the request's statement and proof by the submitted system (model inference, tactic search, calls to Lean, or any combination). What fails: a table, index, retrieval store, cache or embedding lookup that maps theorem statements (or their hashes, normalized forms or embeddings) to prepared proofs; the held-out theorems or their proofs in any form (the pinned dataset repository, any of its revisions, or copies such as extracted JSONL, pickles or SQLite files) in the submission or fetched at run time; or any network access. Retrieving related lemmas, premises or worked examples to condition a model is fine; retrieving a proof of the requested theorem itself is not. Inspect every bundled data file, not only the code.
  3. actual_inference_path
    Trace serve.sh through model loading, Lean invocation and the /simplify handler to establish that the reviewed code and weights (if any) actually produce the proofs, with no unused decoy checkpoint, hidden alternate path, remote service or state carried across requests that changes answers.