← back to the board
[[294,16,21]] d ≤
n
294
k
16
d
21
kd²/n
24.0
w
7
X/Z
1

Share this result

Distance

X/Z asymmetry 1 · d_X ≤ 21, d_Z ≤ 21 · w_X = 7, w_Z = 7 (max(d_X,d_Z)/min(d_X,d_Z); each side carries its own earned tier: = certified exact, ≤ witness upper bound)
d_X 21 · witness weight 21 (claimed upper_bound)
witness operator (support, 21 qubits)
[21, 40, 46, 76, 111, 121, 123, 128, 129, 134, 146, 152, 180, 184, 190, 218, 223, 229, 239, 246, 293]
d_Z 21 · witness weight 21 (claimed upper_bound)
witness operator (support, 21 qubits)
[9, 20, 22, 37, 48, 80, 84, 95, 113, 124, 127, 141, 148, 155, 160, 207, 225, 237, 243, 256, 259]
certificate none yet · distance stands as a self-certified upper bound (d ≤)

Diagnostics

computed by the verifier from the parity checks, the layout, and the stored witnesses; shown as evidence, not used for ranking
girth H_X 6 · H_Z 6 (shortest cycle of each side’s Tanner graph; longer is friendlier to belief propagation)
check weights H_X 7 · H_Z 7
qubit degrees H_X 3–4 (mean 3.5) · H_Z 3–4 (mean 3.5)
trapping sets H_X (1,3)×147 (2,4)×441 (3,3)×147 (smallest syndrome weight at each size, connected sets of up to 3 qubits)
full (size, syndrome weight): count census for H_X
(1,3): 147 (1,4): 147 (2,4): 441 (2,5): 1764 (2,6): 882 (3,3): 147 (3,5): 1323 (3,6): 15582 (3,7): 23079 (3,8): 7938 (3,9): 2646 (3,10): 588
trapping sets H_Z (1,3)×147 (2,4)×441 (3,3)×147 (smallest syndrome weight at each size, connected sets of up to 3 qubits)
full (size, syndrome weight): count census for H_Z
(1,3): 147 (1,4): 147 (2,4): 441 (2,5): 1764 (2,6): 882 (3,3): 147 (3,5): 1323 (3,6): 15582 (3,7): 23079 (3,8): 7938 (3,9): 2646 (3,10): 588

Construction & provenance

authors @FarLab
provenance submitted through the challenge
novelty novelty not audited
construction bivariate bicycle on Z_21 x Z_7: A = 1 + xy4 + x17, B = 1 + x8y3 + x18y3 + x20y2; H_X = [A | B], H_Z = [B^T | A^T]
model Claude Claude Opus 5.5 (claimed, not verified)
date 2026-10-17
family bivariate bicycle (a tag, not a ranking)
locality unrestricted (computed from the layout)
weight class weight ≤ 8 (computed)

How this code was found

the research note submitted with this code · raw markdown · all notes

[[294,16,21]] — weight-7 bivariate bicycle code on Z_21 x Z_7

Direction & hypothesis

Cell weight-8 x unrestricted (maximum check weight 7), CSS board, n between 221 and 400. Before this code, the frontier (board plus this campaign's open PRs) at check weight <= 7, d >= 10 and n from 234 to 294 ran through 240-16-18, 248-10-21, 248-20-13, 252-12-22, 252-16-20, 252-20-16, 252-30-10, 254-14-21, 270-24-12, 292-18-18, 294-18-20, 294-24-16. The hypothesis was that random 3 + 4-term bivariate bicycle (BB) codes on tori with 2lm in 222..400, prefiltered for k >= 12, still reach points there that the board does not hold.

[[294,16,21]] does: no board entry has n <= 294, k >= 16, d >= 21 and check weight <= 7. Its maximum check weight is 7 (3 + 4 terms): weight-8 entries reach these parameters or better, but no entry of check weight <= 7 does.

What was searched

Random-support BB codes H_X = [A | B], H_Z = [B^T | A^T] with A of 3 and B of 4 monomials, both containing 1 (no loss of generality), on every torus Z_l x Z_m with l >= m >= 3 and 222 <= 2lm <= 400; the torus is drawn uniformly from that list and the other monomials uniformly from the torus.

This sweep (seed 701) drew 400,020 codes in a parallel generate-and-rank prefilter; 907 had k >= 12 and a connected Tanner graph (research/kit/prescreen.block_structure). Those went through research/kit/search.screen with the gf2_fast backend at 400 trials; 34 advanced the board frontier at screen depth and 33 were taken to 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; 3 survived that and were staged.

Evidence trail

Witness-backed upper bound d <= 21, not an exact distance.

| stage | trials | lightest logical | |---|---|---| | screen (gf2_fast) | 400 | 21 | | confirm | 20,000 | 21 | | confirm | 200,000 | 21 | | confirm | 2,000,000 | 21 | | deep ladder, 3 fresh seeds (64288, 72207, 80126), gf2_fast | 10,000,000 each | 21, 21, 21 |

verify/validate_candidate.py (through research/kit/coordination.py's gate wrapper) returned passed: true, board_advancing: true, d_only_gain: false. Literature novelty unverified; board-relative novelty from verify/validate_candidate.py.

Dead ends

  • In this sweep 30 of 33 screen-depth survivors collapsed below the frontier by 2,000,000 trials: 400-trial readings run several units high at this n.
  • Earlier in this campaign on the same band: cyclic generalized-bicycle codes with a designed divisor at weights (3,3) and (4,4), random-support 2BGA on non-abelian groups at check weight 8, non-abelian lifted products, and weight-6 BB/2BGA at k >= 28 gave nothing that survived 20,000 trials on the frontier.
  • Random 2 + 6 splits at check weight 8 never reached k >= 18 with an advancing distance.

Tools

Model: Claude Opus 5.5 (Claude Code agent, contributor-driven workflow). Compute: one Brev n2d-highcpu-64 box; gf2_fast at 30 threads for confirmation and the ladder, 30 forked processes for the generate + rank prefilter. Kit modules: research/kit/bb.py (build_bb), research/kit/search.py (screen), research/kit/surrogate.py (distance_rand_witness), research/kit/prescreen.py, research/kit/submit.py, research/kit/coordination.py. About 9.1 CPU-hours on this code and its sweep.

Reproduction

Torus Z_21 x Z_7 (x of order 21, y of order 7), terms (i, j) = x^i y^j:

A = 1 + x y^4 + x^17, B = 1 + x^8 y^3 + x^18 y^3 + x^20 y^2.

import sys; sys.path[:0] = ["research/kit", "verify"]
from bb import build_bb
from css import compute_k
HX, HZ = build_bb(21, 7, [(0, 0), (1, 4), (17, 0)],
                  [(0, 0), (8, 3), (18, 3), (20, 2)])   # n = 294
assert compute_k(HX, HZ) == 16

Ladder: surrogate.distance_rand_witness(HX, HZ, trials=10_000_000, seed=<s>, backend="fast", pair_depth=8) with s in {64288, 72207, 80126} returns logicals of weight 21, 21, 21.

Parity checks

X-checks 147 (max weight 7) · Z-checks 147 (max weight 7)
H_X (147 checks, sparse supports)
[0, 11, 119, 147, 206, 276, 289] [1, 12, 120, 148, 207, 277, 290] [2, 13, 121, 149, 208, 278, 291] [3, 7, 122, 150, 209, 279, 292] [4, 8, 123, 151, 203, 273, 293] [5, 9, 124, 152, 204, 274, 287] [6, 10, 125, 153, 205, 275, 288] [7, 18, 126, 149, 154, 213, 283] [8, 19, 127, 150, 155, 214, 284] [9, 20, 128, 151, 156, 215, 285] [10, 14, 129, 152, 157, 216, 286] [11, 15, 130, 153, 158, 210, 280] [12, 16, 131, 147, 159, 211, 281] [13, 17, 132, 148, 160, 212, 282] [14, 25, 133, 156, 161, 220, 290] [15, 26, 134, 157, 162, 221, 291] [16, 27, 135, 158, 163, 222, 292] [17, 21, 136, 159, 164, 223, 293] [18, 22, 137, 160, 165, 217, 287] [19, 23, 138, 154, 166, 218, 288] [20, 24, 139, 155, 167, 219, 289] [21, 32, 140, 150, 163, 168, 227] [22, 33, 141, 151, 164, 169, 228] [23, 34, 142, 152, 165, 170, 229] [24, 28, 143, 153, 166, 171, 230] [25, 29, 144, 147, 167, 172, 224] [26, 30, 145, 148, 161, 173, 225] [27, 31, 146, 149, 162, 174, 226] [0, 28, 39, 157, 170, 175, 234] [1, 29, 40, 158, 171, 176, 235] [2, 30, 41, 159, 172, 177, 236] [3, 31, 35, 160, 173, 178, 237] [4, 32, 36, 154, 174, 179, 231] [5, 33, 37, 155, 168, 180, 232] [6, 34, 38, 156, 169, 181, 233] [7, 35, 46, 164, 177, 182, 241] [8, 36, 47, 165, 178, 183, 242] [9, 37, 48, 166, 179, 184, 243] [10, 38, 42, 167, 180, 185, 244] [11, 39, 43, 161, 181, 186, 238] [12, 40, 44, 162, 175, 187, 239] [13, 41, 45, 163, 176, 188, 240] [14, 42, 53, 171, 184, 189, 248] [15, 43, 54, 172, 185, 190, 249] [16, 44, 55, 173, 186, 191, 250] [17, 45, 49, 174, 187, 192, 251] [18, 46, 50, 168, 188, 193, 245] [19, 47, 51, 169, 182, 194, 246] [20, 48, 52, 170, 183, 195, 247] [21, 49, 60, 178, 191, 196, 255] [22, 50, 61, 179, 192, 197, 256] [23, 51, 62, 180, 193, 198, 257] [24, 52, 56, 181, 194, 199, 258] [25, 53, 57, 175, 195, 200, 252] [26, 54, 58, 176, 189, 201, 253] [27, 55, 59, 177, 190, 202, 254] [28, 56, 67, 185, 198, 203, 262] [29, 57, 68, 186, 199, 204, 263] [30, 58, 69, 187, 200, 205, 264] [31, 59, 63, 188, 201, 206, 265] [32, 60, 64, 182, 202, 207, 259] [33, 61, 65, 183, 196, 208, 260] [34, 62, 66, 184, 197, 209, 261] [35, 63, 74, 192, 205, 210, 269] [36, 64, 75, 193, 206, 211, 270] [37, 65, 76, 194, 207, 212, 271] [38, 66, 70, 195, 208, 213, 272] [39, 67, 71, 189, 209, 214, 266] [40, 68, 72, 190, 203, 215, 267] [41, 69, 73, 191, 204, 216, 268] [42, 70, 81, 199, 212, 217, 276] [43, 71, 82, 200, 213, 218, 277] [44, 72, 83, 201, 214, 219, 278] [45, 73, 77, 202, 215, 220, 279] [46, 74, 78, 196, 216, 221, 273] [47, 75, 79, 197, 210, 222, 274] [48, 76, 80, 198, 211, 223, 275] [49, 77, 88, 206, 219, 224, 283] [50, 78, 89, 207, 220, 225, 284] [51, 79, 90, 208, 221, 226, 285] [52, 80, 84, 209, 222, 227, 286] [53, 81, 85, 203, 223, 228, 280] [54, 82, 86, 204, 217, 229, 281] [55, 83, 87, 205, 218, 230, 282] [56, 84, 95, 213, 226, 231, 290] [57, 85, 96, 214, 227, 232, 291] [58, 86, 97, 215, 228, 233, 292] [59, 87, 91, 216, 229, 234, 293] [60, 88, 92, 210, 230, 235, 287] [61, 89, 93, 211, 224, 236, 288] [62, 90, 94, 212, 225, 237, 289] [63, 91, 102, 150, 220, 233, 238] [64, 92, 103, 151, 221, 234, 239] [65, 93, 104, 152, 222, 235, 240] [66, 94, 98, 153, 223, 236, 241] [67, 95, 99, 147, 217, 237, 242] [68, 96, 100, 148, 218, 231, 243] [69, 97, 101, 149, 219, 232, 244] [70, 98, 109, 157, 227, 240, 245] [71, 99, 110, 158, 228, 241, 246] [72, 100, 111, 159, 229, 242, 247] [73, 101, 105, 160, 230, 243, 248] [74, 102, 106, 154, 224, 244, 249] [75, 103, 107, 155, 225, 238, 250] [76, 104, 108, 156, 226, 239, 251] [77, 105, 116, 164, 234, 247, 252] [78, 106, 117, 165, 235, 248, 253] [79, 107, 118, 166, 236, 249, 254] [80, 108, 112, 167, 237, 250, 255] [81, 109, 113, 161, 231, 251, 256] [82, 110, 114, 162, 232, 245, 257] [83, 111, 115, 163, 233, 246, 258] [84, 112, 123, 171, 241, 254, 259] [85, 113, 124, 172, 242, 255, 260] [86, 114, 125, 173, 243, 256, 261] [87, 115, 119, 174, 244, 257, 262] [88, 116, 120, 168, 238, 258, 263] [89, 117, 121, 169, 239, 252, 264] [90, 118, 122, 170, 240, 253, 265] [91, 119, 130, 178, 248, 261, 266] [92, 120, 131, 179, 249, 262, 267] [93, 121, 132, 180, 250, 263, 268] [94, 122, 126, 181, 251, 264, 269] [95, 123, 127, 175, 245, 265, 270] [96, 124, 128, 176, 246, 259, 271] [97, 125, 129, 177, 247, 260, 272] [98, 126, 137, 185, 255, 268, 273] [99, 127, 138, 186, 256, 269, 274] [100, 128, 139, 187, 257, 270, 275] [101, 129, 133, 188, 258, 271, 276] [102, 130, 134, 182, 252, 272, 277] [103, 131, 135, 183, 253, 266, 278] [104, 132, 136, 184, 254, 267, 279] [105, 133, 144, 192, 262, 275, 280] [106, 134, 145, 193, 263, 276, 281] [107, 135, 146, 194, 264, 277, 282] [108, 136, 140, 195, 265, 278, 283] [109, 137, 141, 189, 259, 279, 284] [110, 138, 142, 190, 260, 273, 285] [111, 139, 143, 191, 261, 274, 286] [4, 112, 140, 199, 269, 282, 287] [5, 113, 141, 200, 270, 283, 288] [6, 114, 142, 201, 271, 284, 289] [0, 115, 143, 202, 272, 285, 290] [1, 116, 144, 196, 266, 286, 291] [2, 117, 145, 197, 267, 280, 292] [3, 118, 146, 198, 268, 281, 293]
H_Z (147 checks, sparse supports)
[0, 12, 25, 95, 147, 175, 290] [1, 13, 26, 96, 148, 176, 291] [2, 7, 27, 97, 149, 177, 292] [3, 8, 21, 91, 150, 178, 293] [4, 9, 22, 92, 151, 179, 287] [5, 10, 23, 93, 152, 180, 288] [6, 11, 24, 94, 153, 181, 289] [7, 19, 32, 102, 150, 154, 182] [8, 20, 33, 103, 151, 155, 183] [9, 14, 34, 104, 152, 156, 184] [10, 15, 28, 98, 153, 157, 185] [11, 16, 29, 99, 147, 158, 186] [12, 17, 30, 100, 148, 159, 187] [13, 18, 31, 101, 149, 160, 188] [14, 26, 39, 109, 157, 161, 189] [15, 27, 40, 110, 158, 162, 190] [16, 21, 41, 111, 159, 163, 191] [17, 22, 35, 105, 160, 164, 192] [18, 23, 36, 106, 154, 165, 193] [19, 24, 37, 107, 155, 166, 194] [20, 25, 38, 108, 156, 167, 195] [21, 33, 46, 116, 164, 168, 196] [22, 34, 47, 117, 165, 169, 197] [23, 28, 48, 118, 166, 170, 198] [24, 29, 42, 112, 167, 171, 199] [25, 30, 43, 113, 161, 172, 200] [26, 31, 44, 114, 162, 173, 201] [27, 32, 45, 115, 163, 174, 202] [28, 40, 53, 123, 171, 175, 203] [29, 41, 54, 124, 172, 176, 204] [30, 35, 55, 125, 173, 177, 205] [31, 36, 49, 119, 174, 178, 206] [32, 37, 50, 120, 168, 179, 207] [33, 38, 51, 121, 169, 180, 208] [34, 39, 52, 122, 170, 181, 209] [35, 47, 60, 130, 178, 182, 210] [36, 48, 61, 131, 179, 183, 211] [37, 42, 62, 132, 180, 184, 212] [38, 43, 56, 126, 181, 185, 213] [39, 44, 57, 127, 175, 186, 214] [40, 45, 58, 128, 176, 187, 215] [41, 46, 59, 129, 177, 188, 216] [42, 54, 67, 137, 185, 189, 217] [43, 55, 68, 138, 186, 190, 218] [44, 49, 69, 139, 187, 191, 219] [45, 50, 63, 133, 188, 192, 220] [46, 51, 64, 134, 182, 193, 221] [47, 52, 65, 135, 183, 194, 222] [48, 53, 66, 136, 184, 195, 223] [49, 61, 74, 144, 192, 196, 224] [50, 62, 75, 145, 193, 197, 225] [51, 56, 76, 146, 194, 198, 226] [52, 57, 70, 140, 195, 199, 227] [53, 58, 71, 141, 189, 200, 228] [54, 59, 72, 142, 190, 201, 229] [55, 60, 73, 143, 191, 202, 230] [4, 56, 68, 81, 199, 203, 231] [5, 57, 69, 82, 200, 204, 232] [6, 58, 63, 83, 201, 205, 233] [0, 59, 64, 77, 202, 206, 234] [1, 60, 65, 78, 196, 207, 235] [2, 61, 66, 79, 197, 208, 236] [3, 62, 67, 80, 198, 209, 237] [11, 63, 75, 88, 206, 210, 238] [12, 64, 76, 89, 207, 211, 239] [13, 65, 70, 90, 208, 212, 240] [7, 66, 71, 84, 209, 213, 241] [8, 67, 72, 85, 203, 214, 242] [9, 68, 73, 86, 204, 215, 243] [10, 69, 74, 87, 205, 216, 244] [18, 70, 82, 95, 213, 217, 245] [19, 71, 83, 96, 214, 218, 246] [20, 72, 77, 97, 215, 219, 247] [14, 73, 78, 91, 216, 220, 248] [15, 74, 79, 92, 210, 221, 249] [16, 75, 80, 93, 211, 222, 250] [17, 76, 81, 94, 212, 223, 251] [25, 77, 89, 102, 220, 224, 252] [26, 78, 90, 103, 221, 225, 253] [27, 79, 84, 104, 222, 226, 254] [21, 80, 85, 98, 223, 227, 255] [22, 81, 86, 99, 217, 228, 256] [23, 82, 87, 100, 218, 229, 257] [24, 83, 88, 101, 219, 230, 258] [32, 84, 96, 109, 227, 231, 259] [33, 85, 97, 110, 228, 232, 260] [34, 86, 91, 111, 229, 233, 261] [28, 87, 92, 105, 230, 234, 262] [29, 88, 93, 106, 224, 235, 263] [30, 89, 94, 107, 225, 236, 264] [31, 90, 95, 108, 226, 237, 265] [39, 91, 103, 116, 234, 238, 266] [40, 92, 104, 117, 235, 239, 267] [41, 93, 98, 118, 236, 240, 268] [35, 94, 99, 112, 237, 241, 269] [36, 95, 100, 113, 231, 242, 270] [37, 96, 101, 114, 232, 243, 271] [38, 97, 102, 115, 233, 244, 272] [46, 98, 110, 123, 241, 245, 273] [47, 99, 111, 124, 242, 246, 274] [48, 100, 105, 125, 243, 247, 275] [42, 101, 106, 119, 244, 248, 276] [43, 102, 107, 120, 238, 249, 277] [44, 103, 108, 121, 239, 250, 278] [45, 104, 109, 122, 240, 251, 279] [53, 105, 117, 130, 248, 252, 280] [54, 106, 118, 131, 249, 253, 281] [55, 107, 112, 132, 250, 254, 282] [49, 108, 113, 126, 251, 255, 283] [50, 109, 114, 127, 245, 256, 284] [51, 110, 115, 128, 246, 257, 285] [52, 111, 116, 129, 247, 258, 286] [60, 112, 124, 137, 255, 259, 287] [61, 113, 125, 138, 256, 260, 288] [62, 114, 119, 139, 257, 261, 289] [56, 115, 120, 133, 258, 262, 290] [57, 116, 121, 134, 252, 263, 291] [58, 117, 122, 135, 253, 264, 292] [59, 118, 123, 136, 254, 265, 293] [67, 119, 131, 144, 147, 262, 266] [68, 120, 132, 145, 148, 263, 267] [69, 121, 126, 146, 149, 264, 268] [63, 122, 127, 140, 150, 265, 269] [64, 123, 128, 141, 151, 259, 270] [65, 124, 129, 142, 152, 260, 271] [66, 125, 130, 143, 153, 261, 272] [4, 74, 126, 138, 154, 269, 273] [5, 75, 127, 139, 155, 270, 274] [6, 76, 128, 133, 156, 271, 275] [0, 70, 129, 134, 157, 272, 276] [1, 71, 130, 135, 158, 266, 277] [2, 72, 131, 136, 159, 267, 278] [3, 73, 132, 137, 160, 268, 279] [11, 81, 133, 145, 161, 276, 280] [12, 82, 134, 146, 162, 277, 281] [13, 83, 135, 140, 163, 278, 282] [7, 77, 136, 141, 164, 279, 283] [8, 78, 137, 142, 165, 273, 284] [9, 79, 138, 143, 166, 274, 285] [10, 80, 139, 144, 167, 275, 286] [5, 18, 88, 140, 168, 283, 287] [6, 19, 89, 141, 169, 284, 288] [0, 20, 90, 142, 170, 285, 289] [1, 14, 84, 143, 171, 286, 290] [2, 15, 85, 144, 172, 280, 291] [3, 16, 86, 145, 173, 281, 292] [4, 17, 87, 146, 174, 282, 293]
Code ID 294-16-21 · download JSON · raw on GitHub