← back to the board
[[240,18,20]] d ≤
n
240
k
18
d
20
kd²/n
30.0
w
8
X/Z
1

Share this result

Distance

X/Z asymmetry 1 · d_X ≤ 20, d_Z ≤ 20 · w_X = 8, w_Z = 8 (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)
[4, 6, 13, 19, 24, 28, 37, 52, 76, 81, 93, 100, 105, 113, 122, 139, 173, 202, 221, 226]
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)
[7, 9, 11, 20, 28, 41, 46, 57, 69, 82, 86, 104, 115, 119, 128, 129, 149, 179, 206, 212]
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 8 · H_Z 8
qubit degrees H_X 4 · H_Z 4
trapping sets H_X (1,4)×240 (2,6)×3360 (3,6)×2640 (smallest syndrome weight at each size, connected sets of up to 3 qubits)
full (size, syndrome weight): count census for H_X
(1,4): 240 (2,6): 3360 (3,6): 2640 (3,8): 62640 (3,10): 6720
trapping sets H_Z (1,4)×240 (2,6)×3360 (3,6)×2640 (smallest syndrome weight at each size, connected sets of up to 3 qubits)
full (size, syndrome weight): count census for H_Z
(1,4): 240 (2,6): 3360 (3,6): 2640 (3,8): 62640 (3,10): 6720

Construction & provenance

authors Lee, Gideon
provenance literature baseline
construction Two-block group-algebra code C(a,b) over C60 x C2 = SmallGroup(120, 31) (order 120), elements numbered as in GAP Elements(SmallGroup(order,id)) with element 0 the identity. n = 2|G| = 240; H_X = [L(a)|R(b)], H_Z = [R(b)^T|L(a)^T]; a = {0, 8, 73, 101}, b = {0, 28, 42, 71} as element indices. Check weight 8. 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

[[240,18,20]] — two-block group-algebra code over C60 x C2

Direction & hypothesis

Cell weight-8 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| = 240

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

Parity checks

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