Track cell: unrestricted x weight-any (max check weight 10). The board is dense below n = 110, so the target was a specific hole: a point with n' <= 96, k' >= 24, d' >= 8 at check weight <= 10 that no board entry occupies. This code gains on the cell frontier against the entries nearest to it. The hypothesis behind the sweep was that the small-group two-block (2BGA) family, enumerated over the groups of order 8..55 the kit can build (abelian, metacyclic, dicyclic, generalized dihedral, a few semidirect and matrix groups), still holds non-dominated points that the board's generalized-bicycle and bivariate-bicycle entries missed, because the board's small-n entries come mostly from cyclic groups and tori, and because unequal support sizes (|a| != |b|) are rarely searched. Board-relative novelty is from verify/validate_candidate.py; literature novelty is unverified (Lin-Pryadko's 2BGA tables, arXiv:2306.16400, cover many small groups and this instance may be in them).
H_X = [L(a) | R(b)], H_Z = [R(b)^T | L(a)^T] over F_2[G] with G = the abelian group Z_{4}} x Z_{{3}} x Z_{{2}} x Z_{{2} built as group_algebra.cyclic_product(4,3,2,2): elements are the tuples in itertools.product order, index = position in that order (identity = 0). a = [0, 15, 26, 42, 44] and b = [0, 18, 21, 25, 38] are lists of element indices (|a| = 5, |b| = 5, check weight 10).
Sweep (research/kit samplers and surrogate.distance_rand, backend gf2_fast, one thread per candidate, 60 processes):
Supports were drawn with the identity in both a and b (left/right translation of a or b is a qubit relabelling, so this loses nothing), distinct elements only, and every candidate was compared with the live board (every CSS entry with n <= 130, on n, k, d and max check weight) before any further trials were spent. The screening reading is an upper bound, so this funnel never discards a true advance.
Packaging witnesses: surrogate.lightest_logical, 8,000 NumPy trials per side, seed 11 -> X-logical of weight 8, Z-logical of weight 8; d = min = 8.
Deep ladder (fresh seeds, surrogate.distance_rand_witness backend gf2_fast, 10 threads, pair depth 8):
| trials per seed | seed | side of lightest | lightest logical | time | |---|---|---|---|---| | 10,000,000 | fast seed 54558 | X | 8 | 45.8 s | | 10,000,000 | fast seed 62477 | X | 8 | 45.3 s | | 10,000,000 | fast seed 70396 | X | 8 | 45.1 s |
Ladder verdict: corroborated (min over rungs = 8, claimed 8).
Final claim: witness-backed upper bound d <= 8 (confidence: upper_bound), with d_X <= 8 and d_Z <= 8.
above): a d read at 400 fast trials is routinely 1-3 too high at n ~ 60-110.
weight-6 cell: the board's BB coverage there is effectively complete.
Model: Claude Fable 5.1 (agent harness Claude Code), running the search on a Brev n2d-highcpu-64 box (gf2_fast via make fast, 10 threads for the ladder, single-thread worker processes for the screen). Kit modules: research/kit/group_algebra.py (build_2bga, cyclic_product, metacyclic, direct_product, sym, alt), research/kit/gf2poly.py, research/kit/products.py, research/kit/surrogate.py, research/kit/prescreen.py, research/kit/submit.py, research/kit/coordination.py (gate). Approximate compute: about 3 CPU-hours for the sweep and ladder of this family.
import sys; sys.path[:0] = ["research/kit", "verify"] from group_algebra import build_2bga from group_algebra import cyclic_product mul, _ = cyclic_product(4,3,2,2) HX, HZ = build_2bga(mul, [0, 15, 26, 42, 44], [0, 18, 21, 25, 38]) # n = 96, k = 24
Then make_submission(HX, HZ, ..., trials=8000, seed=11) from research/kit/submit.py reproduces the witnesses; the deep ladder used three fresh seeds at the trial counts in the table above.