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

Share this result

Distance

X/Z asymmetry 1 · d_X ≤ 18, d_Z ≤ 18 · 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 18 · witness weight 18 (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, 18 qubits)
[7, 29, 31, 40, 46, 47, 58, 67, 76, 80, 94, 115, 124, 129, 136, 137, 152, 153]
d_Z 18 · witness weight 18 (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, 18 qubits)
[2, 20, 30, 36, 52, 69, 81, 84, 86, 105, 106, 112, 121, 127, 128, 132, 139, 153]
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 3–5 (mean 4.0) · H_Z 3–5 (mean 4.0)
trapping sets H_X (1,3)×78 (2,4)×234 (3,3)×104 (smallest syndrome weight at each size, connected sets of up to 3 qubits)
full (size, syndrome weight): count census for H_X
(1,3): 78 (1,5): 78 (2,4): 234 (2,6): 1170 (2,8): 780 (3,3): 104 (3,5): 702 (3,7): 12636 (3,9): 23634 (3,11): 11310 (3,13): 780
trapping sets H_Z (1,3)×78 (2,4)×234 (3,3)×104 (smallest syndrome weight at each size, connected sets of up to 3 qubits)
full (size, syndrome weight): count census for H_Z
(1,3): 78 (1,5): 78 (2,4): 234 (2,6): 1170 (2,8): 780 (3,3): 104 (3,5): 702 (3,7): 12636 (3,9): 23634 (3,11): 11310 (3,13): 780

Construction & provenance

authors Lee, Gideon
provenance literature baseline
construction Two-block group-algebra code C(a,b) over C13 x S3 = SmallGroup(78, 3) (order 78), elements numbered as in GAP Elements(SmallGroup(order,id)) with element 0 the identity. n = 2|G| = 156; H_X = [L(a)|R(b)], H_Z = [R(b)^T|L(a)^T]; a = {0, 7, 15, 62, 63}, b = {0, 3, 44} 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 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

[[156,8,18]] — two-block group-algebra code over C13 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| = 156

Parameters are also spelled out in provenance.construction of codes/156-8-18.json.

Parity checks

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