← back to the board
[[180,20,11]] d ≤
n
180
k
20
d
11
kd²/n
13.444
w
7
X/Z
1

Share this result

Distance

X/Z asymmetry 1 · d_X ≤ 11, d_Z ≤ 11 · 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 11 · witness weight 11 (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, 11 qubits)
[7, 35, 36, 82, 111, 131, 132, 147, 149, 160, 162]
d_Z 11 · witness weight 11 (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, 11 qubits)
[16, 51, 64, 65, 67, 76, 78, 103, 138, 140, 150]
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)×90 (2,4)×270 (3,4)×90 (smallest syndrome weight at each size, connected sets of up to 3 qubits)
full (size, syndrome weight): count census for H_X
(1,3): 90 (1,4): 90 (2,4): 270 (2,5): 1080 (2,6): 540 (3,4): 90 (3,5): 1350 (3,6): 9300 (3,7): 13320 (3,8): 4770 (3,9): 1620 (3,10): 360
trapping sets H_Z (1,3)×90 (2,4)×270 (3,4)×90 (smallest syndrome weight at each size, connected sets of up to 3 qubits)
full (size, syndrome weight): count census for H_Z
(1,3): 90 (1,4): 90 (2,4): 270 (2,5): 1080 (2,6): 540 (3,4): 90 (3,5): 1350 (3,6): 9300 (3,7): 13320 (3,8): 4770 (3,9): 1620 (3,10): 360

Construction & provenance

authors Lee, Gideon
provenance literature baseline
construction Two-block group-algebra code C(a,b) over C15 x S3 = SmallGroup(90, 6) (order 90), elements numbered as in GAP Elements(SmallGroup(order,id)) with element 0 the identity. n = 2|G| = 180; H_X = [L(a)|R(b)], H_Z = [R(b)^T|L(a)^T]; a = {0, 2, 26, 43}, b = {0, 12, 62} as element indices. Check weight 7. 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 2bga-nonabelian (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

[[180,20,11]] — two-block group-algebra code over C15 x S3

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

Parameters are also spelled out in provenance.construction of codes/180-20-11.json.

Parity checks

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