Cell weight-6 x unrestricted, CSS board, n between 300 and 400. Before this campaign the weight-6 frontier there held 310-10-22, 330-22-9, 330-68-6, 340-16-18, 360-12-24, 360-20-20, 360-38-8 and 382-36-10: no weight-6 entry with n <= 340 and k >= 20 had d above 9. The hypothesis was that two-block group-algebra (2BGA) codes on split metacyclic groups C_l1 ⋊ C_l2 of order 150 to 200 could put a k >= 20, d >= 16 point into that gap at check weight 6. [[336,20,16]] does: no board entry has n <= 336, k >= 20, d >= 16 and check weight <= 6, and the margins hold at k - 2 and d - 2 (neither [[336,18,16]] nor [[336,20,14]] is dominated). It sits between two other points filed from the same campaign: the [[336,24,12]] on S4 x C7 (same n, more logicals, smaller distance) and the [[378,24,16]] on C63 ⋊ C3 (same distance, 42 more qubits, 4 more logicals).
Random-support 2BGA codes H_X = [L(a) | R(b)], H_Z = [R(b)^T | L(a)^T] with a, b three group elements each, both containing the identity (no loss of generality). The group menu was every non-abelian group of order 150 to 200 the kit builds from Cayley-table constructors: dihedral D_n, metacyclic C_n ⋊_r C_k (up to two actions r per (n, k)), C_m x D_k, C_m x A4, C_m x S4, D_a x D_b, C_m x (C_n ⋊ C_k) for eight small metacyclic factors, and the split metacyclic presentations ZSZ(l1, l2, q), l2 <= 8, of research/kit/nonabelian_lp.py.
A generic weight-3 element is invertible on most irreducible blocks of F_2[G], so k >= 20 is rare: the sweep ran a parallel generate-and-rank prefilter over 400,000 draws (seed 62), of which 239 had k >= 20 and a connected Tanner graph. Those went through research/kit/search.screen with the gf2_fast backend at 400 trials; 31 advanced the board frontier at screen depth and were confirmed at 20,000 / 200,000 / 2,000,000 fast trials (research/kit/surrogate.distance_rand_witness, pair depth 8), dropping a candidate as soon as its running bound stopped advancing. The survivors were dominated by three distinct points: this code, [[378,24,16]] (ten draws on presentations of C63 ⋊ C3) and [[336,24,12]] (on C7 x D12 and ZSZ(28,6,11), equivalent in parameters to the S4 x C7 code filed separately). A screen-depth [[384,24,18]] on ZSZ(24,8,5) fell to d <= 16 at 20,000 trials and is dominated.
Witness-backed upper bound d <= 16, not an exact distance. The bound was 16 at 400 trials and never moved; both sides have a weight-16 logical.
| stage | trials per candidate | lightest logical | |---|---|---| | screen (gf2_fast, seed from fingerprint) | 400 | 16 | | confirm | 20,000 | 16 | | confirm | 200,000 | 16 | | confirm | 2,000,000 | 16 | | numpy lightest_logical, both sides, seeds 62 / 63 | 1,500 | X 16, Z 16 | | deep ladder, 3 fresh seeds (49897, 57816, 65735), gf2_fast | 10,000,000 each | 16, 16, 16 |
verify/validate_candidate.py (through research/kit/coordination.py's gate wrapper) returned passed: true, board_advancing: true, `d_only_gain: false`, label "advances the weight-6 x unrestricted board". Literature novelty is unverified; board-relative novelty comes from verify/validate_candidate.py (fingerprint and Weisfeiler-Leman dedup against every board entry found nothing).
check weight 6 (weight-3 a and b): at odd m from 111 to 200 and deg g >= 8 there are essentially no weight-3 multiples of g; the few that exist are lifts from a subring Z_{m/s} and give direct sums.
prefiltered draws (2,881 with k >= 18): every screen-depth survivor collapsed by 20,000 trials (dominated by 248-24-18, 252-26-18, 292-22-23, 336-24-24, 378-18-27 and similar).
prefiltered draws (185 with k >= 12) gave only points dominated by the 2BGA finds above (best: [[336,20,12]] on Z_42 x Z_4).
(check weight 6) give k = |G| + 6 at d = 6, already dominated by the board's 258-88-6.
advanced the frontier even at 400 screen trials: at weight 6 the high-k corner stays with 330-68-6, 360-38-8 and 382-36-10.
Model: Claude Fable 5.1 (Claude Code agent, contributor-driven workflow). Compute: one Brev n2d-highcpu-64 box; gf2_fast at 30 threads for the confirmation rungs and the ladder, 30 forked processes for the generate + rank prefilter. Kit modules: research/kit/nonabelian_lp.py (zsz), research/kit/group_algebra.py (build_2bga), research/kit/search.py (screen), research/kit/surrogate.py (distance_rand_witness, lightest_logical), research/kit/prescreen.py (direct-sum and board dedup), research/kit/submit.py, research/kit/coordination.py. About 0.3 CPU-hours on this code; about 12 CPU-hours on the sweeps above.
The group is research/kit/nonabelian_lp.py's zsz(42, 4, 29): C_42 ⋊ C_4 with y x = x^29 y, element x^i y^j at index 4 i + j, identity at 0 (29 has order 2 mod 42, so y^2 is central; order 168, n = 336). With x = (1, 0), y = (0, 1):
a = 1 + x^2 y^3 + x^26 y^2 (indices 0, 11, 106), b = 1 + x^38 y^2 + x^39 y^3 (indices 0, 154, 159).
import sys; sys.path[:0] = ["research/kit", "verify"] from nonabelian_lp import zsz from group_algebra import build_2bga from css import compute_k mul = zsz(42, 4, 29) HX, HZ = build_2bga(mul, [0, 11, 106], [0, 154, 159]) # n = 336, k = 20 assert compute_k(HX, HZ) == 20
Check sets match codes/336-20-16.json row for row in this order. The numpy surrogate.lightest_logical at 1,500 trials with seeds 62 (X side, pass (HX, HZ)) and 63 (Z side, pass (HZ, HX)) returns a weight-16 logical on each side.