Infinity Machine: a self-improving AI agent for research
Organizations: Independent researcher
Abstract
We present the Infinity Machine, a self-improving AI agent that we use for research on problems whose answers aprogram or data can check. Each candidate solution is produced by a full tool-using agent that works for up to an hour in a fresh sandbox; proposers see only a public score, and a private split decides what counts. The harness itself(prompts, tools, skills, playbook, meta agent) is an editable genome, changed only through a kernel-enforced gate with held-out and cost checks. An autonomous mode goes from a plain-text goal to a verified report with no human step: an agent picks an open problem and writes its verifier, the kernel calibrates it, an adversarial agent audits it, and an agent that never sees the verifier re-checks the result. Across fourteen problems in six days, for about $180 of model usage, the system produced four results beyond the published state of the art on catalogued open problems in quantum information: a certified depolarizing-channel threshold point p = 0.064966, a qutrit positivity frontier of 0.2910672, a 44-gate depth-6 Golay state preparation, and a stabilizer-rank bound chi(T^7) <= 10. It also cut SABRE qubit-routing overhead from 68,559 to 12,087 added gates. In hardware, it cut the energy per MAC of an open 8x8 INT8 systolic tile by 77.7% through a full open RTL-to-GDS flow, bit-exact. Three fully autonomous runs ended in honestties with public records; one audit caught a stale record, and one agent-written score pointing the wrong way went unnoticed. We report the failures as carefully: the one self-derived harness generation was rejected on cost, proposers gamed lenient scorers four times, and operator changes were decisive for several results.
Figures & tables
| Problem | Previous best | Infinity Machine | Verification | Model $ |
| Open problems (catalogued), quantum information | ||||
| Qubit depolarizing threshold (OQP C11) | certified | certified | authors’ exact rational certifier | 1.31 |
| Qutrit depolarizing positivity (zoo) | (hashing) | 50-digit interval certificate | 12.48 | |
| Golay preparation (zoo) | (44, 8), (45, 7) | (44, 6) | tableau + statevector | 19.72 |
| Stabilizer rank (zoo) | exact solve over | 9.62 | ||
| Depolarizing private info., finite (zoo) ‡ | ( ) | ( ) | 30-digit recomputation | 14.06 |
| Run (arm) | fJ/MAC | m 2 | Change |
|---|---|---|---|
| original RTL | 578.9 | 5,559 | – |
| s1 it0-p0 (data structure), v1 | 346.9 | 3,773 | activations broadcast along rows, no output de-skew; per-row partial sums 16–19 bits wide; no datapath resets |
| s1 it0-p0, v2 (s2 seed) | 274.9 | 3,766 | latch+AND clock gates per pipeline depth, enabled from the valid pipe; a gate on the weight registers |
| s2 it0-p0 (conservative) | 252.8 | 2,998 | v2’s gating plus a parallel run’s Baugh–Wooley multiplier, 3:2 carry-save tree with the partial sum folded in, Brent–Kung adder |
| s2 it0-p1 (new neighbourhood) | 188.2 | 2,427 | four PE rows per pipeline stage: a Python generator emits one 33-operand bit-level Dadda tree and one adder per stage; 4 partial-sum stages 2 |
| s2 it2-p0 (new neighbourhood) | 128.8 | 2,507 | activation shift chains replaced by a 13-entry ring buffer with a gated clock per entry; weights written in place per row instead of shifted |
| Phase | $ | Outcome |
|---|---|---|
| Scout, round 0 | 3.14 | Chose the largest binary two-deletion-correcting code of length 16, a maximum independent set in a 65,536-vertex graph (Einstein Arena problem 34). Cited a 2026 paper’s 215 as the record, used the public 208-word code as the seed, and wrote the verifier and calibration cases. |
| Validation | – | Passed: seed and calibration reproduced. |
| Audit, round 0 | 1.32 | Failed. The record was stale. The arena leaderboard already listed public codes of 216–223 words; the auditor downloaded the 223-word code and verified it with the task verifier and its own checker. Kernel replay of 18 exploit files: all rejected. |
| Scout, round 1 | 0.85 | Repaired the task: record 223, seed the 223-word code, score range extended to 228. |
| Audit, round 1 | 0.58 | Passed: open, record current, no exploit accepted. Task installed with automatic approval. |
| Discovery | 3.46 | Three rounds of two proposers. They tried a plateau local search in C ( candidate probes per second per core), an exact large-neighbourhood search that frees 24–60 codewords and re-solves them by branch and bound, and a stock iterated local search. None found a 224-word code. Round 3 drew conservative twice, and both runs were no-ops. |
| Run 2 | Run 3 | |
|---|---|---|
| Chosen problem | Size of a sorting network on 31 inputs; record 180 comparators (Batcher-type, unchanged since 2017), bounds 141–180 | Mixed code , 4 binary and 5 ternary coordinates, distance 3; table 186–216, lower bound from 1998 |
| Why this cell | Its entry is a 32-input merge network minus one wire, never improved by evolutionary search, while –30 were | 16% gap; neighbouring cells were improved in 2010–2013 and this one was not |
| Scout | 2^{31}\approx$ 15 s) | $4.66, 47 min; its own coset-union search reproduced 186 and other table entries; 12 calibration cases |
| Audit | $0.89; pass; 23 exploit files, all rejected on replay | $1.14; pass; 24 exploit files, all rejected on replay |
| Discovery | $4.12, 6 runs: SorterHunter-style evolution, a witness-vector variant, annealing at 179 comparators on the number of unsorted inputs; 2 runs searched nothing | $3.60, 6 runs: coset unions, about 30,000 prescribed automorphism groups, tabu search, LNS from the 186 code |
| Near miss | 179 comparators with one unsorted 0-1 vector | 189 words (63 cosets) with one conflicting pair |
| Outcome | Runs | Notes |
|---|---|---|
| Beat its parent’s public score | 39 | incl. 3 gamed outright (2 AdderBoard, 1 seven-qubit code) and 5 TESS runs scored by referees later found exploitable |
| Matched its parent, no gain | 58 | incl. at least 10 that delivered the parent essentially unchanged, per their own notebooks |
| Worse than its parent | 2 | both TESS, under a stricter referee |
| No valid solution | 5 | 4 stopped by the Modal spend limit (LM), 1 by the step limit (TESS) |
| Hit the per-run spend cap (overlaps the rows above) | 5 | introduced after one run cost $7.15 |
| Lost before scoring, not in the records | 3 | 2 killed with the host (C11), 1 lost when its shell died (SABRE) |
Appendix figures & tables1 asset
Supplementary material from the paper’s appendix.
Appendix
| Start (UTC) | Task | Iters | Par. | Runs | $ | Outcome |
| 10-19 01:53 | ml/adderboard (s2) | 2 | 2 | 4 | 0.89 | “1 parameter” via constants (gaming) |
| 10-19 03:49 | math/sidon-45 | 2 | 2 | 4 | 2.80 | 13 ties at 4/7 |
| 10-19 04:59 | math/hadamard-51 | 2 | 2 | 4 | 1.03 | record is a fixed point |
| 10-19 05:22 | math/hadamard-51 | 2 | 2 | 4 | 3.05 | family 43.2310 |
| 10-19 17:33 | math/depol-threshold | 2 | 2 | 0 | – | killed (host memory) |
| 10-19 18:11 | math/depol-threshold | 2 | 1 | 2 | 1.31 | certified |
Autonomous Research Agents
Autonomous research agents use language models and tools to search literature, design and run experiments, analyze results, and support scientific discovery.
See all 319 papers