← back to the board
[[252,18,20]] d ≤
n
252
k
18
d
20
kd²/n
28.571
w
9
X/Z
1

Share this result

Distance

X/Z asymmetry 1 · d_X ≤ 20, d_Z ≤ 20 · w_X = 9, w_Z = 9 (max(d_X,d_Z)/min(d_X,d_Z); each side carries its own earned tier: = certified exact, ≤ witness upper bound)
d_X 20 · witness weight 20 (claimed upper_bound)
witness found by @mathysrennela · research/kit/surrogate.lightest_logical · found at 2000 trials · survived 2000 trials · 2026-10-12
witness operator (support, 20 qubits)
[0, 6, 14, 21, 26, 58, 59, 69, 75, 80, 101, 102, 129, 152, 183, 190, 207, 217, 227, 241]
d_Z 20 · witness weight 20 (claimed upper_bound)
witness found by @mathysrennela · research/kit/surrogate.lightest_logical · found at 2000 trials · survived 2000 trials · 2026-10-12
witness operator (support, 20 qubits)
[18, 25, 43, 68, 69, 83, 93, 96, 99, 122, 127, 129, 184, 187, 188, 194, 214, 221, 234, 251]
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 4 · H_Z 4 (shortest cycle of each side’s Tanner graph; longer is friendlier to belief propagation)
check weights H_X 9 · H_Z 9
qubit degrees H_X 4–5 (mean 4.5) · H_Z 4–5 (mean 4.5)
trapping sets H_X (1,4)×126 (2,4)×126 (3,5)×252 (smallest syndrome weight at each size, connected sets of up to 3 qubits)
full (size, syndrome weight): count census for H_X
(1,4): 126 (1,5): 126 (2,4): 126 (2,6): 1008 (2,7): 2520 (2,8): 378 (3,5): 252 (3,6): 2772 (3,7): 2772 (3,8): 13104 (3,9): 42210 (3,10): 30996 (3,11): 5418 (3,12): 1512
trapping sets H_Z (1,4)×126 (2,4)×126 (3,5)×252 (smallest syndrome weight at each size, connected sets of up to 3 qubits)
full (size, syndrome weight): count census for H_Z
(1,4): 126 (1,5): 126 (2,4): 126 (2,6): 1008 (2,7): 2520 (2,8): 378 (3,5): 252 (3,6): 2772 (3,7): 2772 (3,8): 13104 (3,9): 42210 (3,10): 30996 (3,11): 5418 (3,12): 1512

Construction & provenance

authors Lee, Gideon
provenance literature baseline
construction Two-block group-algebra code C(a,b) over C126 = SmallGroup(126, 6) (order 126), elements numbered as in GAP Elements(SmallGroup(order,id)) with element 0 the identity. n = 2|G| = 252; H_X = [L(a)|R(b)], H_Z = [R(b)^T|L(a)^T]; a = {0, 2, 17, 54, 84}, b = {0, 6, 70, 124} as element indices. Check weight 9. Parameters and blocks taken from the public code database of arXiv:2610.13880v1 (Lee, 'Bicycle Race'), github.com/gideonlsx/bicycle-race.
model Mimo-V2.6-Flash (claimed, not verified)
date 2026-10-12
notes Parameters and construction taken from the public database of arXiv:2610.13880v1. Distance is an upper bound certified by the witnesses attached here. Parameters and blocks taken from the public code database of arXiv:2610.13880v1 (Lee, 'Bicycle Race'), github.com/gideonlsx/bicycle-race @ aed705a, CC BY 4.0; rebuilt here with the repo's own group data. Distance is an upper bound certified by the attached witnesses, not the paper's exact distance.
family generalized 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

[[252,18,20]] — two-block group-algebra code over C126

Direction & hypothesis

Cell weight-9plus x unrestricted, CSS board. The argument is coverage, not discovery: this code is published in arXiv:2610.13880v1 (Lee, "Bicycle Race"), and nothing on the board occupied this (n, k, d, w) point. It advances the four-axis Pareto frontier by moving into a cell that was empty at these parameters.

What was searched

Not a search for new codes. The arXiv:2610.13880v1 database (github.com/gideonlsx/bicycle-race @ aed705a, CC BY 4.0, 12,448 records) was rebuilt here from its group and block data, then screened against every CSS entry on main under the site's Pareto rule (n <=, k >=, d >=, w <= with at least one strict) within the same weight class. Records whose parameters the paper already tabulates, and candidates claimed by other open filings, were removed first. Distances were re-searched locally:

  • X side: research/kit/surrogate.lightest_logical at 2,000 trials
  • Z side: research/kit/surrogate.lightest_logical at 2,000 trials

Evidence trail

Witness-backed upper bound, not an exact distance. The attached X and Z operators were found by the searches above and re-checked by the verifier's own criteria (in ker(opposite) and outside rowspace(own)). verify/validate_candidate.py reports passed: true and board_advancing: true, with d_only_gain: false.

The paper states an exact distance for this record, verified there with a second exact engine plus GAP rebuild and independent upper-bound attacks. That exactness is not claimed here; the board records what the witness certifies.

Dead ends

  • Direct sums of two board codes: rejected, CONTRIBUTING.md requires a single
  • connected Tanner graph and a connected stabilizer group.

  • Fitting a single-layer 2D layout to reach the local-2d cells: searched with
  • research/local2d/fold_layout.search_layout, best radii 10–13 against a ceiling of 4.0, so these codes stay unrestricted.

  • Hypergraph products of two parents from this pool: connectivity passes, but n
  • multiplies (two ~250-qubit parents give n = 80,010).

Tools

Model: Mimo-V2.6-Flash (self-reported, provenance.model), driving OpenCode. Rebuild: research/kit/group_algebra.build_2bga from the database's data/groups.jsonl Cayley table. Witness search: research/kit/surrogate (numpy backend, 2,000 trials/side screening) with the gf2_fast accelerator for longer runs. Gate: research/kit/coordination.py gate, which runs verify/validate_candidate.py unchanged. Search run by @mathysrennela.

Reproduction

from group_algebra import build_2bga
# a and b are element indices from github.com/gideonlsx/bicycle-race @ aed705a data/codes.jsonl
HX, HZ = build_2bga(mul, a, b)   # mul from data/groups.jsonl, n = 2|G| = 252

Parameters are also spelled out in provenance.construction of codes/252-18-20.json.

Parity checks

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