← back to the board
[[124,20,13]] d ≤
n
124
k
20
d
13
kd²/n
27.258
w
13
X/Z
1

Share this result

Distance

X/Z asymmetry 1 · d_X ≤ 13, d_Z ≤ 13 · w_X = 13, w_Z = 13 (max(d_X,d_Z)/min(d_X,d_Z); each side carries its own earned tier: = certified exact, ≤ witness upper bound)
d_X 13 · witness weight 13 (claimed upper_bound)
witness found by @hirobumii · official gf2_fast CSS RIS, per-side trials, pair_depth16, threads1 · found at 106 trials · survived 106 trials · 2026-10-17
witness operator (support, 13 qubits)
[4, 9, 12, 13, 34, 41, 70, 76, 78, 111, 118, 122, 123]
d_Z 13 · witness weight 13 (claimed upper_bound)
witness operator (support, 13 qubits)
[7, 11, 23, 42, 43, 48, 52, 53, 64, 77, 86, 103, 113]
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 13 · H_Z 13
qubit degrees H_X 3–7 (mean 5.452) · H_Z 3–7 (mean 5.452)
trapping sets H_X (1,3)×1 (2,3)×1 (3,3)×5 (smallest syndrome weight at each size, connected sets of up to 3 qubits)
full (size, syndrome weight): count census for H_X
(1,3): 1 (1,4): 22 (1,5): 37 (1,6): 48 (1,7): 16 (2,3): 1 (2,4): 16 (2,5): 70 (2,6): 220 (2,7): 482 (2,8): 708 (2,9): 755 (2,10): 552 (2,11): 262 (2,12): 49 (3,3): 5 (3,4): 39 (3,5): 153 (3,6): 582 (3,7): 1808 (3,8): 4415 (3,9): 9171 (3,10): 14918 (3,11): 19882 (3,12): 20538 (3,13): 16667 (3,14): 10429 (3,15): 4717 (3,16): 1494 (3,17): 287 (3,18): 45 (3,19): 6
trapping sets H_Z (1,3)×8 (2,3)×5 (3,2)×1 (smallest syndrome weight at each size, connected sets of up to 3 qubits)
full (size, syndrome weight): count census for H_Z
(1,3): 8 (1,4): 20 (1,5): 30 (1,6): 40 (1,7): 26 (2,3): 5 (2,4): 26 (2,5): 109 (2,6): 223 (2,7): 421 (2,8): 588 (2,9): 709 (2,10): 508 (2,11): 340 (2,12): 131 (3,2): 1 (3,3): 13 (3,4): 62 (3,5): 237 (3,6): 775 (3,7): 2049 (3,8): 4538 (3,9): 8483 (3,10): 13269 (3,11): 17102 (3,12): 18247 (3,13): 16148 (3,14): 11499 (3,15): 6180 (3,16): 2756 (3,17): 728 (3,18): 105 (3,19): 30

Construction & provenance

authors @hirobumii
provenance submitted through the challenge
novelty novelty not audited
construction GF(4) generalized-bicycle binary expansion, omega2+omega+1=0, period31; f=[3,2,0,1,0,0,0,0,2,0,0,3], g=[3,1,0,0,1,0,0,0,0,0,0,0,2,3]. rho(omega)=[[0,1],[1,1]], C(p)[i,j]=p[(i-j) mod31], HX=[rho(C(f))|rho(C(g))], HZ=[rho(C(g))^T|rho(C(f))^T]. Multiply each GF4 check by omega, then retain 52 independent binary rows per side; same stabilizer group, all checks weight13, maximum total qubit degree12.
date 2026-10-17
notes No catalog fingerprint or WL match was found at the recorded validation snapshot. Generator reductions preserve the independently reconstructed CSS rowspaces; literature equivalence and novelty remain unverified.
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

[[124,20,13]] GF(4) generalized-bicycle code

Direction & hypothesis

Use a fixed GF(4) polynomial pair and a binary expansion to reach distance 13 at short blocklength; optimize the generator basis without changing the CSS stabilizer spaces. This is a conventional generalized-bicycle construction; no new family or literature novelty is claimed.

Resource comparison: [[128,20,14]] has maximum check weight 16; the submitted code uses four fewer data qubits and lighter checks at distance 13. Across code types, the stabilizer [[130,29,13]] uses six more data qubits but encodes more logical qubits and has maximum check weight 10 and degree 8. These are resource tradeoffs, not a common performance ranking.

What was searched

This promotion confirms one fixed period 31 pair, rather than a new parameter sweep. Its earlier optimized basis replaces the 124-check weight 14/degree 14 representation by 104 independent weight 13/degree 12 checks. Two new independent seeds each ran 1,000,000 fast RIS trials on each CSS side on this exact final check basis.

Evidence trail

Confirmation ladder for the submitted code, each rung a fresh seed unless marked otherwise, reading the lightest logical found:

| budget (trials/side) | lightest logical | | ---: | ---: | | 1,000,000 (seed 20261017711) | 13 | | 1,000,000 (seed 20261017712) | 13 |

2 fresh-seed rung(s) agree at the best bound, the deepest of them at 1,000,000 trials per side. The submitted witness reproduces it: X: d <= 13 (upper_bound), Z: d <= 13 (upper_bound).

Raw readings, supports, API semantics, matrix digest and timing are in the local RIS ladder record (not committed). The ladder totals 2,000,000 trials per side (4,000,000 across both sides); enumeration, native Pauli, doubling and folding trials are not included. An independent local exhaustive argument also establishes dX=dZ=13, as explained in the local certificate README (not committed). The JSON remains upper_bound; this is not an official server exact-status claim. No circuit or LER is supplied.

Dead ends

  • A weight 13 degree13 independent basis was superseded by the same-group
  • degree 12 basis; the latter is the only submitted code. Degree11 was not settled by the earlier bounded search.

Tools

Harness: Codex, with independent mathematical review and a separately supplied research package. Repo tooling: research/kit/surrogate.py, research/kit/promote.py, verify/validate_candidate.py. The local verdict is verify/validate_candidate.py; the bundle was assembled by research/kit/promote.py. Compute: CPU only; fresh promotion RIS used 56.23 CPU seconds. This timing excludes earlier exploration and proof replay; full campaign cost was not measured.

Reproduction

The local evidence bundle (not committed in this PR) contains a portable matrix reconstruction, exact rowspace binding, witness checks and the local exhaustive lower-bound proof. A local replay script (not committed) replays the official fast RIS calls. Validation and prose used upstream d9ef620f71939868090938e954bd15573e2f2233; the final candidate is codes/124-20-13.json.

Publication validation: the fresh official gate also passed at upstream c4f4873bbe9ab4203e795d7cc832dab2cb4e0ae2; full verdict and final JSON binding are recorded in the local publication-gate verdict (not committed).

Parity checks

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