← back to the board
[[140,12,15]] d ≤
n
140
k
12
d
15
kd²/n
19.286
w
9
X/Z
1

Share this result

Distance

X/Z asymmetry 1 · d_X ≤ 15, d_Z ≤ 15 · 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 15 · witness weight 15 (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, 15 qubits)
[0, 8, 10, 19, 24, 34, 35, 38, 52, 80, 87, 99, 121, 138, 139]
d_Z 15 · witness weight 15 (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, 15 qubits)
[78, 84, 85, 92, 93, 101, 102, 104, 110, 111, 113, 120, 122, 129, 134]
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)×70 (2,4)×70 (3,4)×140 (smallest syndrome weight at each size, connected sets of up to 3 qubits)
full (size, syndrome weight): count census for H_X
(1,4): 70 (1,5): 70 (2,4): 70 (2,5): 70 (2,6): 280 (2,7): 1260 (2,8): 700 (3,4): 140 (3,5): 70 (3,6): 770 (3,7): 2940 (3,8): 4130 (3,9): 16800 (3,10): 24080 (3,11): 9100 (3,12): 2240 (3,13): 700
trapping sets H_Z (1,4)×70 (2,4)×70 (3,4)×140 (smallest syndrome weight at each size, connected sets of up to 3 qubits)
full (size, syndrome weight): count census for H_Z
(1,4): 70 (1,5): 70 (2,4): 70 (2,5): 70 (2,6): 280 (2,7): 1260 (2,8): 700 (3,4): 140 (3,5): 70 (3,6): 770 (3,7): 2940 (3,8): 4130 (3,9): 16800 (3,10): 24080 (3,11): 9100 (3,12): 2240 (3,13): 700

Construction & provenance

authors Lee, Gideon
provenance literature baseline
construction Two-block group-algebra code C(a,b) over C70 = SmallGroup(70, 4) (order 70), elements numbered as in GAP Elements(SmallGroup(order,id)) with element 0 the identity. n = 2|G| = 140; H_X = [L(a)|R(b)], H_Z = [R(b)^T|L(a)^T]; a = {0, 6, 45, 55, 56}, b = {0, 7, 8, 51} 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

[[140,12,15]] — two-block group-algebra code over C70

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| = 140

Parameters are also spelled out in provenance.construction of codes/140-12-15.json.

Parity checks

X-checks 70 (max weight 9) · Z-checks 70 (max weight 9)
H_X (70 checks, sparse supports)
[0, 12, 36, 37, 48, 70, 102, 104, 138] [1, 16, 31, 32, 43, 71, 107, 109, 139] [2, 20, 45, 46, 56, 72, 111, 113, 114] [3, 21, 46, 47, 57, 73, 90, 112, 114] [4, 25, 40, 41, 52, 74, 116, 118, 119] [5, 26, 41, 42, 53, 75, 95, 117, 119] [0, 6, 11, 54, 62, 76, 120, 122, 123] [7, 30, 54, 55, 63, 70, 77, 121, 123] [4, 8, 31, 55, 56, 70, 78, 100, 122] [1, 8, 9, 50, 59, 79, 124, 126, 127] [10, 35, 50, 51, 60, 71, 80, 125, 127] [2, 11, 36, 51, 52, 71, 81, 105, 126] [2, 12, 18, 19, 66, 82, 85, 129, 130] [3, 13, 19, 61, 67, 72, 83, 128, 130] [9, 14, 40, 61, 62, 72, 73, 84, 129] [10, 15, 41, 62, 63, 73, 85, 110, 130] [4, 14, 15, 16, 64, 86, 89, 132, 133] [5, 15, 17, 58, 65, 74, 87, 131, 133] [6, 18, 45, 58, 59, 74, 75, 88, 132] [7, 19, 46, 59, 60, 75, 89, 115, 133] [6, 20, 27, 28, 39, 90, 93, 134, 135] [7, 21, 28, 29, 69, 76, 91, 94, 135] [8, 16, 22, 29, 66, 76, 77, 92, 134] [17, 23, 50, 66, 67, 77, 78, 93, 135] [9, 18, 24, 51, 67, 76, 78, 94, 120] [9, 22, 23, 25, 34, 95, 98, 136, 137] [10, 23, 24, 26, 68, 79, 96, 99, 137] [11, 12, 24, 27, 64, 79, 80, 97, 136] [13, 28, 54, 64, 65, 80, 81, 98, 137] [6, 14, 29, 55, 65, 79, 81, 99, 124] [13, 30, 37, 38, 49, 82, 100, 103, 138] [14, 25, 31, 38, 39, 82, 83, 101, 104] [15, 26, 32, 39, 69, 83, 84, 102, 138] [16, 27, 33, 58, 69, 82, 84, 85, 103] [16, 17, 28, 34, 59, 83, 85, 104, 128] [17, 32, 33, 35, 44, 86, 105, 108, 139] [18, 20, 33, 34, 36, 86, 87, 106, 109] [19, 21, 34, 37, 68, 87, 88, 107, 139] [12, 22, 38, 61, 68, 86, 88, 89, 108] [12, 13, 23, 39, 62, 87, 89, 109, 131] [1, 22, 40, 47, 48, 90, 91, 110, 113] [23, 35, 41, 48, 49, 91, 92, 111, 114] [24, 25, 36, 42, 49, 90, 92, 93, 112] [25, 26, 37, 43, 64, 91, 93, 94, 113] [26, 27, 38, 44, 65, 92, 94, 114, 134] [0, 27, 42, 43, 45, 95, 96, 115, 118] [28, 30, 43, 44, 46, 96, 97, 116, 119] [20, 29, 31, 44, 47, 95, 97, 98, 117] [20, 21, 32, 48, 66, 96, 98, 99, 118] [21, 22, 33, 49, 67, 97, 99, 119, 136] [5, 32, 50, 56, 57, 100, 101, 120, 123] [1, 33, 45, 51, 57, 70, 101, 102, 121] [1, 34, 35, 46, 52, 100, 102, 103, 122] [35, 36, 47, 53, 68, 101, 103, 104, 123] [3, 37, 52, 53, 54, 105, 106, 124, 127] [0, 38, 40, 53, 55, 71, 106, 107, 125] [0, 30, 39, 41, 56, 105, 107, 108, 126] [30, 31, 42, 57, 69, 106, 108, 109, 127] [4, 11, 42, 58, 63, 72, 110, 111, 128] [4, 5, 43, 54, 59, 73, 111, 112, 129] [5, 44, 45, 55, 60, 110, 112, 113, 130] [2, 8, 47, 60, 61, 74, 115, 116, 131] [2, 3, 48, 50, 62, 75, 116, 117, 132] [3, 40, 49, 51, 63, 115, 117, 118, 133] [9, 10, 19, 52, 64, 77, 120, 121, 134] [10, 11, 53, 61, 65, 78, 121, 122, 135] [6, 7, 15, 56, 66, 80, 124, 125, 136] [7, 8, 57, 58, 67, 81, 125, 126, 137] [17, 18, 29, 60, 68, 84, 128, 129, 138] [13, 14, 24, 63, 69, 88, 131, 132, 139]
H_Z (70 checks, sparse supports)
[0, 7, 8, 51, 70, 76, 115, 125, 126] [1, 10, 11, 55, 71, 79, 110, 121, 122] [2, 13, 14, 58, 72, 81, 82, 131, 132] [3, 14, 15, 59, 73, 83, 124, 132, 133] [4, 17, 18, 61, 74, 78, 86, 128, 129] [5, 18, 19, 62, 75, 87, 120, 129, 130] [6, 21, 22, 24, 76, 88, 90, 99, 136] [7, 22, 23, 64, 77, 89, 91, 136, 137] [8, 23, 24, 65, 78, 79, 92, 131, 137] [9, 26, 27, 29, 79, 84, 94, 95, 134] [10, 27, 28, 66, 80, 85, 96, 134, 135] [11, 28, 29, 67, 76, 81, 97, 128, 135] [12, 30, 31, 33, 70, 82, 97, 108, 109] [13, 31, 32, 34, 83, 98, 100, 109, 139] [14, 32, 33, 68, 84, 86, 99, 101, 139] [12, 15, 33, 34, 85, 86, 87, 102, 136] [16, 35, 36, 38, 71, 86, 92, 103, 104] [17, 36, 37, 39, 87, 93, 104, 105, 138] [18, 37, 38, 69, 82, 88, 94, 106, 138] [16, 19, 38, 39, 82, 83, 89, 107, 134] [3, 20, 40, 42, 72, 90, 106, 117, 118] [21, 40, 41, 43, 73, 91, 107, 118, 119] [22, 41, 42, 44, 92, 95, 108, 110, 119] [20, 23, 42, 43, 93, 95, 96, 109, 111] [21, 24, 43, 44, 94, 96, 97, 112, 139] [5, 25, 45, 47, 74, 95, 101, 112, 113] [26, 45, 46, 48, 75, 96, 102, 113, 114] [27, 46, 47, 49, 90, 97, 103, 114, 115] [25, 28, 47, 48, 90, 91, 98, 104, 116] [26, 29, 48, 49, 91, 92, 99, 117, 138] [8, 30, 50, 52, 77, 100, 116, 126, 127] [31, 50, 51, 53, 71, 78, 101, 117, 127] [0, 32, 51, 52, 71, 102, 105, 118, 120] [30, 33, 52, 53, 103, 105, 106, 119, 121] [0, 31, 34, 53, 95, 104, 106, 107, 122] [11, 35, 54, 56, 80, 105, 111, 122, 123] [36, 54, 55, 57, 70, 81, 106, 112, 123] [1, 37, 55, 56, 70, 100, 107, 113, 124] [35, 38, 56, 57, 100, 101, 108, 114, 125] [1, 36, 39, 57, 90, 101, 102, 109, 126] [15, 40, 58, 60, 74, 84, 110, 125, 133] [2, 41, 58, 59, 74, 75, 85, 111, 126] [3, 42, 59, 60, 75, 112, 115, 127, 128] [2, 40, 43, 60, 71, 113, 115, 116, 129] [2, 3, 41, 44, 105, 114, 116, 117, 130] [19, 45, 61, 63, 72, 88, 115, 121, 130] [4, 46, 61, 62, 72, 73, 89, 116, 122] [5, 47, 62, 63, 73, 110, 117, 123, 131] [4, 45, 48, 63, 70, 110, 111, 118, 132] [4, 5, 46, 49, 100, 111, 112, 119, 133] [6, 24, 50, 64, 79, 80, 93, 120, 132] [7, 51, 64, 65, 80, 81, 94, 121, 133] [6, 8, 52, 65, 74, 81, 122, 124, 134] [6, 7, 50, 53, 75, 123, 124, 125, 135] [9, 29, 54, 66, 76, 77, 98, 124, 129] [10, 55, 66, 67, 77, 78, 99, 125, 130] [9, 11, 56, 67, 72, 78, 120, 126, 136] [9, 10, 54, 57, 73, 120, 121, 127, 137] [13, 34, 58, 68, 87, 88, 103, 128, 137] [12, 14, 59, 68, 79, 88, 89, 104, 129] [12, 13, 15, 60, 80, 89, 130, 131, 138] [17, 39, 61, 69, 83, 84, 108, 131, 135] [16, 18, 62, 69, 76, 84, 85, 109, 132] [16, 17, 19, 63, 77, 85, 128, 133, 139] [20, 22, 44, 64, 86, 97, 98, 113, 134] [20, 21, 23, 65, 87, 98, 99, 114, 135] [25, 27, 49, 66, 82, 92, 93, 118, 136] [25, 26, 28, 67, 83, 93, 94, 119, 137] [0, 30, 32, 68, 96, 107, 108, 123, 138] [1, 35, 37, 69, 91, 102, 103, 127, 139]
Code ID 140-12-15 · download JSON · raw on GitHub