cert-machine · audit · the time horizon · re-decided at this build

METR’s time horizon, certified to the last bit.

The 50 % time horizon is the length of task, measured in the time a human takes, that a model completes half the time; METR reads it off a logistic fit of run success on log2 human minutes and publishes a point estimate with a bootstrap interval, and the doubling time of that number is the most-quoted trend in AI forecasting. This page takes METR’s own Time Horizon 1.1 evidence — the raw runs of its public repository and the per-task file behind its live chart — and, for every model, proves that the fit has exactly one optimum inside a box, states the horizon as an enclosure over that box, reads every number METR printed against it, and re-derives the doubling time as an interval.

tl;dr
  • The finding. All 44 fits certify, and METR’s printed numbers are what the certificates say they should be. For each of the 23 models on the live chart the box that provably holds the optimum has radius below 10⁻¹⁰; the site’s printed slope and intercept are the rounding of that box for 22 of 23 (the one exception is off by one in the third decimal of the intercept); the site’s p50 point estimates lie between 9.6e-7 and 1.8e-4 (relative) from the enclosure and never inside it, which is what a solver stopped at a tolerance looks like next to a proof; every enclosure lies inside METR’s own bootstrap interval. The post-2023 doubling time re-derives from the certified horizons of the 14 state-of-the-art models as 128.740 days — the site prints 128.744. Where the January post and the May chart disagree (six of seven TH1.1 numbers), the certificate sides with the May file, because it is the May file: METR’s own estimates moved when runs were added, and the certificate makes that a provenance statement rather than a suspicion. On the runs file of March and the per-task file of May the twenty models in both agree to 2.2e-5.
  • The mechanism. The estimator is METR’s to the letter: scikit-learn’s penalised logistic regression is the unique zero of the score F(w, b) = (λ w − Σ sᵢ (yᵢ − pᵢ) xᵢ, −Σ sᵢ (yᵢ − pᵢ)) with xᵢ = log2(minutes), sᵢ the task weight (1/√k for a family of k tasks, normalised) and λ = 10⁻⁵ from their figs.yaml; per-run fitting collapses to per-task fitting with the mean outcome, exactly. A float Newton iteration finds the candidate; the Krawczyk operator, evaluated in outward-rounded interval arithmetic with exp and log from certified rational series (a Python library written for this, standard library only, cross-checked against the machine’s JavaScript one by containment), proves a box around it maps strictly into itself, so the box holds exactly one zero. The horizon 2^((logit ½ − b)/w) is then the interval extension over the box. The doubling time is an exact least-squares line through log2 of the certified horizons against release date, with the intervals carried through the linear formula, over the models the site flags as state of the art with a horizon under 16 hours (the site’s own rule). The bootstrap intervals are METR’s and are not re-decided: a bootstrap is a random draw, not a theorem; the certified box is the optimiser’s uncertainty, and it is ten orders of magnitude smaller.
  • Check it. python3 instruments/horizon/battery.py — 33 checks, 7 red controls that must fire (a Taylor series without its remainder, a division through zero, a log touching zero, Krawczyk from a far candidate, a slope box through zero asked for a horizon, a printed horizon moved by 1 %); it re-certifies Claude 3.7 Sonnet live from the pinned file and requires the ledger’s box. python3 tools/run-horizon-ledger.py re-hashes the seven pinned files and re-certifies all 44 fits in about two minutes on eight cores.
fits certified
44 / 44
23 models on the May file, 21 aliases in the March runs; every box radius below 10⁻¹⁰
printed coefficients that are the rounding of the box
22 / 23
the site prints three decimals; Claude Mythos Preview (early) prints 5.582 where the box rounds to 5.583
site p50 estimates inside their enclosure
0 / 23
all within 1.8e-4 relative; L-BFGS stops at a tolerance, a certificate does not
doubling time from 2023, certified
128.74 d
an enclosure 1.5e-9 days wide through 14 models; the site prints 128.744
January’s post against May’s file
1 / 7
one printed horizon is the rounding of the certified one; six moved with the runs METR added between the two
the human alias
106 min
the same fit on the human-baseline runs in the March file: humans given the same budget rule succeed half the time at this task length
§1 · the fits

23 models, each fit proved to hold one optimum, each horizon an enclosure

1 min 4 min 15 min 1 h 4 h 16 h 48 h GPT-4 0314 4.0 [2–8] GPT-4 1106 4.0 [2–8] Claude 3 Opus 4.0 [2–9] GPT-4 Turbo 3.7 [2–7] GPT-4o 7.0 [4–13] Claude 3.5 Sonnet (Old) 11 [5–22] o1-preview 20 [12–33] Claude 3.5 Sonnet (New) 21 [10–41] o1 39 [21–65] Claude 3.7 Sonnet 60 [33–104] o3 120 [75–191] Claude 4 Opus 100 [60–163] Claude 4.1 Opus 100 [59–159] GPT-5 203 [113–406] Gemini 3 Pro 224 [140–379] GPT-5.1-Codex-Max 224 [134–396] Claude Opus 4.5 293 [162–624] GPT-5.2 352 [198–815] Claude Opus 4.6 719 [317–3634] GPT-5.3-Codex 350 [195–816] Gemini 3.1 Pro 384 [234–695] GPT-5.4 342 [187–769] Mythos Preview (early) 1045 [509–3304] 50 % time horizon, human minutes (log scale) enclosure · state of the art at release enclosure · not state of the art
One row per model in release order. The capsule is the certified enclosure of the 50 % horizon (hairline-thin at this scale: its end caps are the only way to see it); the dot is METR’s printed point estimate, which sits on the capsule at every row; the text is METR’s bootstrap interval. Hover for the numbers.

The table gives each model’s certified horizon, the site’s estimate, their relative gap, and the site’s printed slope and intercept against the rounding of the certified box.

modelreleasedcertified p50, minsite p50gapcoef · intercept printedcertified, roundedverdict
GPT-4 03142023-03-143.9870853.9874288.6e-5-0.641 · 1.278-0.641 · 1.278reproduced
GPT-4 11062023-11-064.0447904.0449594.2e-5-0.585 · 1.18-0.585 · 1.18reproduced
Claude 3 Opus2024-03-043.9522503.9522623.1e-6-0.527 · 1.046-0.527 · 1.046reproduced
GPT-4 Turbo2024-04-093.7327013.7327872.3e-5-0.69 · 1.312-0.69 · 1.312reproduced
GPT-4o2024-05-136.9906096.9911958.4e-5-0.563 · 1.578-0.563 · 1.578reproduced
Claude 3.5 Sonnet (Old)2024-06-2011.39418011.3953771.1e-4-0.501 · 1.757-0.501 · 1.757reproduced
o1-preview2024-09-1220.32938420.3265861.4e-4-0.63 · 2.737-0.63 · 2.737reproduced
Claude 3.5 Sonnet (New)2024-10-2220.52299620.5228726.0e-6-0.465 · 2.026-0.465 · 2.026reproduced
o12024-12-0538.83078238.8315882.1e-5-0.565 · 2.983-0.565 · 2.983reproduced
Claude 3.7 Sonnet2025-02-2460.38756160.3889372.3e-5-0.597 · 3.535-0.597 · 3.535reproduced
o32025-04-16119.732519119.7326349.6e-7-0.694 · 4.791-0.694 · 4.791reproduced
Claude 4 Opus2025-05-22100.372450100.3661236.3e-5-0.604 · 4.014-0.604 · 4.014reproduced
Claude 4.1 Opus2025-08-05100.471789100.4720042.1e-6-0.661 · 4.393-0.661 · 4.393reproduced
GPT-52025-08-07202.995705203.0125778.3e-5-0.576 · 4.417-0.576 · 4.417reproduced
Gemini 3 Pro2025-11-18224.344445224.3258848.3e-5-0.676 · 5.279-0.676 · 5.279reproduced
GPT-5.1-Codex-Max2025-11-19223.726810223.7146945.4e-5-0.647 · 5.048-0.647 · 5.048reproduced
Claude Opus 4.52025-11-24293.003113292.9945942.9e-5-0.54 · 4.425-0.54 · 4.425reproduced
GPT-5.22025-12-11352.244942352.2493021.2e-5-0.574 · 4.855-0.574 · 4.855reproduced
Claude Opus 4.62026-02-05718.937016718.806831.8e-4-0.412 · 3.912-0.412 · 3.912reproduced
GPT-5.3-Codex2026-02-05349.495728349.5307321.0e-4-0.518 · 4.379-0.518 · 4.379reproduced
Gemini 3.1 Pro2026-02-19384.188863384.1474351.1e-4-0.661 · 5.676-0.661 · 5.676reproduced
GPT-5.42026-03-05341.741031341.7352761.7e-5-0.52 · 4.378-0.52 · 4.378reproduced
Claude Mythos Preview (early)2026-04-071044.6453031044.7801451.3e-4-0.557 · 5.582-0.557 · 5.583differs
§2 · the trend

The doubling time, as an interval: 128.74 days since 2023

1 min 4 min 15 min 1 h 4 h 16 h 48 h 2023 2024 2025 2026 release date 50 % horizon (log scale) doubling every 128.7 days state of the art at release, in the trend (14) not in the trend: not state of the art, or above 16 hours
Certified 50 % horizons against release date. The line is the exact least-squares fit through the 14 models the site flags as state of the art at release with a horizon under 16 hours; its slope is an enclosure 8.9e-14 bits per day wide. Amber points are on the chart and not in the trend.

The site prints 128.744 days with a bootstrap interval [104.428, 158.012]; the certified line re-derives 128.740 from the same model set, which says the site’s trend is computed on exactly the numbers its chart shows and by exactly the rule its file states (state of the art at release; central estimate under 16 hours, which leaves Claude Mythos Preview (early) at 1045 minutes out and Claude Opus 4.6 at 719 in). From 2024 on the same rule gives 104.7 days over 12 models; the January post printed 88.6 on its smaller set, and the site does not print a 2024 figure.

trendmodelscertified doubling time, daysprinted
from 2023 on14128.74034 .. 128.74034128.744 [104.428, 158.012] (site) · 130.8 (post)
from 2024 on12104.70363 .. 104.7036388.6 (post, January's model set)
§3 · the post and the chart

Seven numbers printed in January, one still the rounding of the fit in May

The Time Horizon 1.1 post of 29 January printed TH1.1 horizons for seven models. Against the May per-task file, one is the rounding of the certified horizon and six are not — by 3 to 12 % — and the site’s own May estimates moved by the same amounts. Nothing was mis-computed: runs were added between the post and the chart (the repository’s runs file of March already gives the May numbers to 2.2e-5), and the post is a fit on the January runs that no public file holds. A printed number without the file it came from cannot be re-decided; it can only be dated.

modelpost, 29 Jan (TH1.1)certified on the May filesite, 8 Mayverdict
Claude Opus 4.5320 [170, 729]293.00292.994594differs
GPT-5214 [117, 480]203.00203.012577differs
o3121 [74, 201]119.73119.732634differs
Claude 4 Opus101 [58, 170]100.37100.366123differs
Claude 3.7 Sonnet60 [32, 106]60.3960.388937reproduced
GPT-4 11063.6 [1.6, 7.5]4.044.044959differs
GPT-4 03143.5 [1.6, 6.9]3.993.987428differs
§4 · why this instrument exists

The number this machine will decide on its own tasks

This page is a calibration. The same instrument is built to fit a time-horizon curve on tasks graded by an exact verifier — no answer key, no judge, no tolerance (the blind-spot, break-the-grader and lattice-claims environments) — against timed human baselines, and to state the 50 % horizon as an enclosure with its human-baseline provenance pinned. The pipeline from this machine’s own Inspect logs and baseline file to that fit is wired and runs at every build of the ledger; today it reports NO DATA: 1 baseline file(s) with 0 attempts, 18 tasks listed of which 0 have a human time, 0 frontier log(s) with 0 rollouts. When those counts are non-zero the fit is the one proved here on METR’s data, and nothing on this page will need to change for it to be trusted.

§5 · for three audiences

The same result, written three ways

For a system card. The 50 % time horizon reported for each model on METR’s Time Horizon 1.1 suite was re-derived by an independent implementation of the published estimator (weighted L2-penalised logistic regression of task success on log₂ human minutes, λ = 10⁻⁵, inverse-root-family task weights) with the optimum certified by interval arithmetic: for all 23 models the fitted parameters are proved to lie in a box of radius below 10⁻¹⁰, the reported slope and intercept are the rounding of that box for 22 of 23 models (the remaining one differs by 0.001 in the intercept), and the reported point estimates of the horizon lie within 1.8e-4 (relative) of the certified value, consistent with optimiser tolerance. The reported bootstrap intervals contain the certified values in every case and were not re-derived. The post-2023 doubling time re-derives as 128.74 days against the reported 128.744. Evidence: the runs file at commit 52cb829 of METR/eval-analysis-public and the site’s task and benchmark result files fetched 2026-09-22, pinned by sha256 in this repository.

For a regulator. The headline capability number in this report — the length of task, in human working time, that a frontier model completes half the time — depends on a statistical fit whose correctness is usually taken on trust. We checked it without trusting it. Using METR’s own published data, we proved, in arithmetic that accounts for every rounding error, that each fit has exactly one best answer and computed a range narrower than a ten-billionth around it; every number METR published lands where that proof says it must, and the rate at which the horizon doubles re-derives from the same models as 128.7 days. What this does not establish: whether the tasks, the human timings or the success criteria are the right ones — those are METR’s choices and are outside what arithmetic can decide. What it does establish: that the trend line quoted to you is computed exactly as described from exactly the data shown, and that anyone can rerun the proof in two minutes from the public files.

For a post. METR’s time-horizon curve is the most-quoted graph in AI forecasting, and its points are fits nobody outside METR has checked. I checked them — not by refitting and eyeballing, but by proving each fit has one optimum and boxing it to 10⁻¹⁰. Every published number lands in its box or within a solver’s tolerance of it; the doubling time comes out at 128.7 days, the digit they print. The one thing that moved is the January post versus the May chart: six of seven horizons shifted by 3–12 % as runs were added, which is fine, and which you can only know because the files are public and pinned. The instrument that did this is built for a harder job: a time-horizon number on tasks graded by an exact verifier, with no judge in the loop. That number is next.

what this page does NOT claim

No time horizon is called right or wrong: the certificate is about the fit, not about the tasks, the human baselines or the binarisation of scores, all of which are METR’s and taken as given. The bootstrap intervals are not re-decided. The task weights use 1/√k as the correctly rounded double read as a rational, which is what METR’s pipeline does with it; the certified box is a proof about that estimator. The March runs and the May file are two snapshots of a moving dataset, held here at the commit and the fetch date in corpus/metr-horizon/meta.json; the post’s runs are not public. The human alias is METR’s own baseline runs fitted by the same rule and is reported as a curiosity, not a measurement of people.