Track cell: unrestricted x weight-6 (max check weight 6). The board is dense below n = 110, so the target was a specific hole: a point with n' <= 12, k' >= 4, d' >= 3 at check weight <= 6 that no board entry occupies. This code gains on d, k against [[12,3,3]] (w=6, codes/12-3-3.json), [[12,4,2]] (w=6, codes/12-4-2.json). 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).
Coset two-block code (research/kit/coset.py, build_coset): qubits sit on two copies of the left cosets G/H, H_X = [sum_a P_L(a_i) | sum_b P_R(b_j)], H_Z = [sum_b P_R(b_j)^T | sum_a P_L(a_i)^T], where P_L(g) permutes cosets by left multiplication and P_R(g), g in N_G(H), by right multiplication. G = the metacyclic group group_algebra.metacyclic(3,18,2) = C_n x| C_k with j: i -> r^j i for (n,k,r) = (3,18,2); element (i,j) sits at index i*k + j (identity = 0) (|G| = 54); H = [0, 6, 12, 22, 28, 34, 38, 44, 50] (element indices, a non-normal subgroup of order 9, index 6); a = [0, 24, 43, 45] subset of G, b = [0, 30] subset of N_G(H). Check weight 6.
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 3, Z-logical of weight 3; d = min = 3.
Deep ladder (fresh seeds, surrogate.distance_rand_witness backend gf2_fast, 60 threads, pair depth 8):
| trials per seed | seed | side of lightest | lightest logical | time | |---|---|---|---|---| | 20,000,000 | fast seed 48274 | X | 3 | 1.4 s | | 20,000,000 | fast seed 56193 | X | 3 | 1.4 s | | 20,000,000 | fast seed 64112 | X | 3 | 1.3 s |
Ladder verdict: corroborated (min over rungs = 3, claimed 3). A SAT search for anything lighter (verify/sat_certify.py, selector encoding, 600 s per solve) returned X: status UNSAT; Z: status UNSAT (d_exact flag True). The submission is filed as upper_bound regardless; an exact tier is the server's to award.
Final claim: witness-backed upper bound d <= 3 (confidence: upper_bound), with d_X <= 3 and d_Z <= 3.
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, 60 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 coset import build_coset from group_algebra import metacyclic mul, _ = metacyclic(3,18,2) HX, HZ = build_coset(mul, [0, 6, 12, 22, 28, 34, 38, 44, 50], [0, 24, 43, 45], [0, 30]) # n = 12, k = 4
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.