← back to the board
[[276,5,13]] d =
n
276
k
5
d
13
kd²/n
3.062
w
6
X/Z
1
g
0.012
r
4.0
layers
2
swaps
509

Share this result

Distance

X/Z asymmetry 1 · d_X = 13, d_Z = 13 · w_X = 6, w_Z = 6 (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 @dorakingx · gf2_fast RIS ladder (verify/gf2_fast.cpp), both sides searched jointly · found at 2×104 trials · survived 2×107 trials · 2026-09-11
witness operator (support, 13 qubits)
[39, 63, 74, 110, 121, 122, 134, 147, 174, 185, 197, 233, 246]
d_Z 13 · witness weight 13 (claimed upper_bound)
witness found by @dorakingx · gf2_fast RIS in the packaging search; the ladder searched both sides jointly · found at 4000 trials · survived 2×107 trials · 2026-09-11
witness operator (support, 13 qubits)
[44, 61, 62, 177, 178, 186, 194, 195, 197, 198, 205, 210, 216]
certificate exact, d = 13 · CryptoMiniSat 5.14.7 SAT
X: no logical < 13 exists; Z: no logical < 13 exists

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 2–6 (mean 5.37) · H_Z 2–6 (mean 5.301)
qubit degrees H_X 1–4 (mean 2.627) · H_Z 1–5 (mean 2.746)
trapping sets H_X (1,1)×37 (2,0)×12 (3,0)×7 (smallest syndrome weight at each size, connected sets of up to 3 qubits)
full (size, syndrome weight): count census for H_X
(1,1): 37 (1,2): 40 (1,3): 188 (1,4): 11 (2,0): 12 (2,1): 46 (2,2): 120 (2,3): 238 (2,4): 1161 (2,5): 83 (2,6): 7 (3,0): 7 (3,1): 106 (3,2): 443 (3,3): 1325 (3,4): 1953 (3,5): 8762 (3,6): 1018 (3,7): 1434 (3,8): 72 (3,9): 14
trapping sets H_Z (1,1)×32 (2,0)×9 (3,0)×8 (smallest syndrome weight at each size, connected sets of up to 3 qubits)
full (size, syndrome weight): count census for H_Z
(1,1): 32 (1,2): 37 (1,3): 181 (1,4): 21 (1,5): 5 (2,0): 9 (2,1): 49 (2,2): 108 (2,3): 211 (2,4): 1109 (2,5): 109 (2,6): 78 (2,7): 47 (2,8): 9 (3,0): 8 (3,1): 77 (3,2): 434 (3,3): 1264 (3,4): 1654 (3,5): 8320 (3,6): 1206 (3,7): 1898 (3,8): 672 (3,9): 373 (3,10): 141 (3,11): 23 (3,12): 18 (3,13): 2
witness diameter X 11.1803 · Z 11.7047 (Euclidean support diameter of the stored distance witnesses in the layout; an upper bound on the exhibited logicals’ spread, not a minimum over all logicals)

Verified 2D layout

as measured by the verifier: every check drawn over the submitted coordinates; the interaction radius is the longest dashed pair
r = 4
X checkZ checkqubit site (147)2 qubits stacked (2 layers)dashed: the pair setting the interaction radiushover a check to isolate its qubits; click to pin — repeated clicks cycle through overlapping checks; click empty space to release
routing cost 509 nearest-neighbor SWAPs per round in total, at most 3 for one check (heuristic: MST lower bound on the layout, with one lattice step = the minimum qubit spacing 1; not a rank)

Construction & provenance

authors @dorakingx
provenance submitted through the challenge
novelty novelty not audited
construction Reduction of the board's codes/299-5-13.json ([[299,5,13]]) by 23 qubits at unchanged k and check-weight class, using three moves. (1) Restricted r=1 lattice grafting (Liang, Eberhardt, Chen, arXiv:2504.08887, Sec. III E): a qubit lying in exactly one stabilizer of some type is removed together with that stabilizer, which preserves CSS commutation automatically because no other same-type row touches it. (2) Weight-1 stabilizer cleanup (Sec. III D step 4, research/local2d/boundary_engine.py _cleanup), which runs no distance search because it needs none: a qubit carrying a weight-1 stabilizer cannot appear in any opposite-type check, so multiplying that row into the same-type rows containing it and deleting the qubit preserves k and the distance exactly. (3) Capped merge-graft, new here: when a qubit lies in exactly r <= 3 stabilizers of one type, pick a pivot row R_p and replace every other R_i by R_p + R_i -- row operations on the stabilizer generators, so the code is unchanged and only the generating set moves -- after which the qubit sits in R_p alone and move (1) applies. Every choice of pivot is tried, since each gives a different resulting code. Unlike the first two moves this one can enlarge a check, so every merged row is accepted only if it still has weight at most 6 and, in the source's own layout, a support diameter within the locality class's cap; the whole layout radius is re-measured after every accepted move. Acceptance also requires k unchanged and a bit-packed RIS search finding nothing lighter than 13, screened then confirmed at a deeper rung. Those in-loop rungs are a filter, not the evidence: the claim below rests on the separate fresh-seed ladder. QUBIT POSITIONS ARE THE SOURCE'S: every surviving qubit keeps the coordinate it has in codes/299-5-13.json, so the layout is inherited rather than re-derived, and the reduction only deletes. The surviving qubits' indices into the source numbering are [0, 2, 3, 4, 6, 7, 8, 9, 11, 12, 13, 14]... (full list implied by the coordinates in this file).
model Claude Claude Opus 5 (Claude Code) (claimed, not verified)
date 2026-09-11
notes Derived from codes/299-5-13.json, not an independent construction; the source's authors are @FarLab, @vprusso and the reduction is mine. The gate reports no exact duplicate and no WL-equivalent entry. It dominates [[299,5,13]] on (n, k, d, w), which therefore leaves the frontier of every cell the two share. The measured interaction radius is 4, against 3.16228 for the source: unlike the graft and the cleanup, the merge-graft can widen a check, and it is capped by the locality class rather than by the source's own radius, so the reduced code is less local even though it stays in the same cell. Distance is a witness-backed upper bound: the deepest null result is 20000000 fresh-seed RIS trials. Literature novelty is unverified.
family bivariate bicycle (a tag, not a ranking)
locality 2D-local bilayer (computed from the layout)
weight class weight ≤ 6 (computed)

How this code was found

the research note submitted with this code · raw markdown · all notes

[[276,5,13]] — reduction of the board's [[299,5,13]]

What is new here

The source, @FarLab and @vprusso's codes/299-5-13.json, carries **ten qubits that are not entangled with anything**. They are removable by an argument, with no distance search of any kind, and the argument is what this note is mainly about. Twenty-three qubits come out in total; the other thirteen come from the graft moves used in my earlier reductions on this board.

Move 0: fixed qubits

Call a qubit *q* fixed when the unit vector e_q lies in the row space of H_Z — that is, when some element of the stabilizer group acts on *q* alone. It does not have to be one of the published generators.

Three consequences, in order:

1. Commutation forces H_X to have a zero column at *q*. An X-check meeting *q* would anticommute with a weight-1 Z element supported there. 2. So *q* carries a product state, and n → n-1 leaves *k* unchanged: the rank of H_Z drops by exactly one and the rank of H_X cannot move. 3. The distance is unchanged exactly. Every logical representative can be multiplied by that weight-1 stabilizer until its support at *q* is empty, so the minimum logical weight cannot move in either direction.

The repository already implements this idea, in boundary_engine._cleanup (arXiv:2504.08887 Sec. III D step 4) — but only for a literal weight-1 generator row. Membership in the row *space* is strictly weaker, and it is what the board actually contains. One RREF settles every qubit at once: *q* is fixed exactly when every null-space vector of H_Z vanishes at *q*, and the RREF row with pivot *q* is then e_q itself.

The deletion is arranged so that no check can grow. Take the RREF with its row-operation record; exactly one generator of the subset summing to e_q is replaced by e_q, which leaves the row space unchanged because that generator equals e_q plus the rest of the subset; e_q then clears column *q* from the other rows, which can only lower their weights and their support diameters; the row and the column are then dropped. Maximum check weight stays 6 and the measured interaction radius stays 3.1623 across this stage.

In codes/299-5-13.json the fixed qubits are 25, 38, 51, 64, 77, 90, 103, 116, 129 and 142 — a stride-13 tail, each lying in zero X-checks. Deleting them gives [[289,5,13]] with the distance still exactly 13, inheriting the source's MILP-certified value rather than re-asserting it.

Sweeping the whole board, thirteen entries carry fixed qubits. Most of them are codes I have already reduced further by other means; codes/299-5-13.json is the one where the fixed qubits are the interesting part of the story.

Moves 1–3: the graft set

Applied after move 0, to a fixpoint, on the source's own coordinates.

1. Graft (Liang, Eberhardt, Chen, arXiv:2504.08887 Sec. III E): remove a qubit lying in exactly one stabilizer of some type, together with that stabilizer. CSS commutation survives automatically, because no other same-type row touches the qubit. 2. Weight-1 cleanup (Sec. III D step 4): the literal form of move 0, which grafting creates opportunities for. Also exact, also search-free. 3. Capped merge-graft — mine, introduced with [[454,8,17]] (#935). If a qubit lies in exactly *r* ≤ 3 stabilizers of one type, pick a pivot row R_p and replace every other R_i by R_p + R_i. Those are row operations on the generators: the code is unchanged, only the generating set moves, and the qubit then sits in R_p alone, where move 1 applies. Every pivot choice is tried.

Moves 1 and 2 can only shrink a check; move 3 can widen one, so every merged row is accepted only if it still has weight ≤ 6 and a support diameter within the bilayer cap, and the whole layout radius is re-measured after each accepted move. Here it moved: 3.1623 before, 4.0000 after, still far inside the bilayer cap of 7.0 and in fact still inside the single-layer cap of 4.0, so the code stays in the cell it came from. Twelve merge-grafts and one cleanup took 289 → 276.

Unlike move 0, move 3 has no distance argument. Each accepted merge-graft was screened and then confirmed twice with independent seeds — a filter, not evidence.

Verification

  • Qubit positions are the source's. Every surviving qubit keeps the coordinate it
  • has in codes/299-5-13.json; the reduction only deletes. Layers unchanged at 2.

  • The fixed-qubit claim was re-derived outside the reducer: for each of the ten,
  • rank([H_Z; e_q]) == rank(H_Z) and the H_X column is empty; deleting the ten columns from the *original* matrices gives k = 5, commuting checks, and the same two row spaces as the packaged output.

  • Fresh-seed RIS ladder on the reduced code: 13 at 20k → 200k → 1M → 5M → 20M
  • trials per rung, independent seeds, both sides searched jointly. Nothing lighter than 13 appeared. The lightest valid logical found is the witness in this file.

  • verify/validate_candidate.py passes: board_advancing: true, no duplicate and
  • no WL-equivalent entry, cell weight-6 × local-2d-bilayer.

Distance is reported as an upper bound. Twenty million trials is the deepest null result I have; on this project a [[682,10,38]] candidate survived three fresh seeds to five million trials and then fell at twenty, so a flat ladder is not a proof.

What it costs and what it buys

[[276,5,13]] dominates codes/299-5-13.json on (n, k, d, w) and is dominated by nothing inside weight-6 × local-2d-bilayer. kd²/n goes 2.826 → 3.062. The source is not superseded as a construction — it is the construction; this is a reduction of it, and the k=5 open-boundary family is @FarLab and @vprusso's.

Parity checks

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