← back to the board
[[239,12,12]] d =
n
239
k
12
d
12
kd²/n
7.23
w
8
X/Z
1
g
0.0036
r
6.7082
layers
2
swaps
1530

Share this result

Distance

X/Z asymmetry 1 · d_X = 12, d_Z = 12 · 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 12 · witness weight 12 (claimed upper_bound)
witness operator (support, 12 qubits)
[23, 38, 58, 115, 130, 149, 167, 185, 202, 205, 207, 224]
d_Z 12 · witness weight 12 (claimed upper_bound)
witness operator (support, 12 qubits)
[51, 61, 148, 158, 159, 173, 175, 176, 177, 191, 195, 199]
certificate exact, d = 12 · CryptoMiniSat 5.14.7 SAT
X: no logical < 12 exists; Z: no logical < 12 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 3–8 (mean 6.135) · H_Z 2–8 (mean 6.504)
qubit degrees H_X 1–10 (mean 3.979) · H_Z 1–7 (mean 3.728)
trapping sets H_X (1,1)×33 (2,0)×17 (3,0)×10 (smallest syndrome weight at each size, connected sets of up to 3 qubits)
full (size, syndrome weight): count census for H_X
(1,1): 33 (1,2): 22 (1,3): 36 (1,4): 79 (1,5): 19 (1,6): 27 (1,7): 10 (1,8): 2 (1,9): 3 (1,10): 8 (2,0): 17 (2,1): 21 (2,2): 85 (2,3): 151 (2,4): 175 (2,5): 300 (2,6): 593 (2,7): 224 (2,8): 238 (2,9): 98 (2,10): 51 (2,11): 51 (2,12): 78 (2,13): 26 (2,14): 36 (2,15): 24 (2,16): 9 (2,17): 6 (2,18): 7 (3,0): 10 (3,1): 72 (3,2): 177 (3,3): 487 (3,4): 1131 (3,5): 2145 (3,6): 3047 (3,7): 4199 (3,8): 6537 (3,9): 3555 (3,10): 3809 (3,11): 1746 (3,12): 1245 (3,13): 932 (3,14): 1120 (3,15): 705 (3,16): 798 (3,17): 528 (3,18): 361 (3,19): 233 (3,20): 205 (3,21): 82 (3,22): 71 (3,23): 41 (3,24): 12 (3,25): 5
trapping sets H_Z (1,1)×15 (2,1)×41 (3,0)×15 (smallest syndrome weight at each size, connected sets of up to 3 qubits)
full (size, syndrome weight): count census for H_Z
(1,1): 15 (1,2): 54 (1,3): 25 (1,4): 70 (1,5): 38 (1,6): 36 (1,7): 1 (2,1): 41 (2,2): 92 (2,3): 130 (2,4): 279 (2,5): 305 (2,6): 514 (2,7): 432 (2,8): 336 (2,9): 104 (2,10): 30 (2,11): 1 (3,0): 15 (3,1): 44 (3,2): 226 (3,3): 578 (3,4): 1197 (3,5): 2015 (3,6): 4093 (3,7): 4941 (3,8): 6151 (3,9): 6040 (3,10): 4887 (3,11): 2576 (3,12): 1213 (3,13): 479 (3,14): 141 (3,15): 18
witness diameter X 6.0 · Z 15.1327 (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 = 6.708
X checkZ checkqubit site (148)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 1530 nearest-neighbor SWAPs per round in total, at most 7 for one check (heuristic: MST lower bound on the layout, with one lattice step = the minimum qubit spacing 1; not a rank)

Construction & provenance

provenance submitted through the challenge
novelty novelty not audited
construction frozen-qubit deflation of codes/240-12-12-graft.json (itself an r=1 lattice graft of codes/242-12-12.json): removed the weight-1 Z stabilizer (qubit 38) and its qubit column; k unchanged, n lower; distance witnesses preserved under reindexing. Follow-up to PR #1060, whose stabilizer-group connectivity check rejects the weight-1 check.
model GLM 5.3 Flash, Omen Alpha 1.0 (claimed, not verified)
date 2026-09-15
family bivariate bicycle (a tag, not a ranking)
locality 2D-local bilayer (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

[[239,12,12]] — frozen-qubit re-file of [[240,12,12]]

Direction & hypothesis

Repair re-file, not a new search. The predecessor entry [[240,12,12]] (removed in this same PR; filename carried a -graft suffix) carried one weight-1 Z stabilizer, on qubit 38 — a frozen qubit. PR #1060 adds a stabilizer-group connectivity check to the verifier that rejects any entry whose stabilizer row space splits into independent blocks over disjoint qubit sets, which is exactly the weight-1-check signature. This PR deletes the frozen qubit and its check so the entry satisfies the strengthened rule.

Deflation of a frozen qubit is k-exact by rank arithmetic: removing one qubit column together with its weight-1 check drops n and the independent check count by one each, so k is unchanged. On the logical side, an operator touching a frozen qubit can be multiplied by that qubit's weight-1 stabilizer to shed the support without increasing weight, so the minimum logical weight on each side can only stay or improve. The predecessor's witnesses (weight 12 per side, not touching qubit 38) therefore remain valid witnesses of the deflated code after reindexing, preserving the d <= 12 claim.

What was searched

No new search. Concretely: column 38 deleted from H_X and H_Z; the weight-1 Z row (all-zero after the column deletion) dropped; surviving columns reindexed; locality.coordinates subset by the surviving-qubit order. As corroboration, the kit's independent witness search (2000 trials per side) reproduced weight 12 on both sides of the deflated code. The preserved witnesses were re-validated against the verifier's own criteria — commutation with the opposite-type checks and non-membership in the same-type row space — before being embedded.

Evidence trail

Final (n, k) = (239, 12) re-derived by GF(2) rank arithmetic. Distance claim: d <= 12 per side, upper_bound confidence, witnessed by the reindexed weight-12 operators embedded in codes/239-12-12-graft.json. Passed the trusted validation gate (`uv run python verify/validate_candidate.py codes/239-12-12-graft.json` → passed: true; 8000-trial RIS refutation found no lighter logical) and, against the verifier from PR #1060's branch, the stabilizer-group connectivity check (single independent block, size 239). Distances remain upper bounds until certified; CI is the deep refuter at PR time.

Dead ends

  • None in the deflation itself. The failure mode that motivated it
  • (frozen qubits invisible to a Tanner-graph-only connectivity rule) is documented in PR #1060.

Tools

Model: GLM 5.3 Flash (deflation of a code produced by Omen Alpha 1.0). Repo tooling: kit submit packaging, verify/validate_candidate.py gate, GF(2) rank arithmetic. Compute: seconds.

Reproduction

The lineage is codes/242-12-12.json —(r=1 lattice graft, seed 0)→ [[240,12,12]] —(this deflation)→ codes/239-12-12-graft.json. To redo the deflation from [[240,12,12]]: build H_X/H_Z from checks.X/checks.Z, delete column 38, drop the rows left with empty support, reindex the distance witnesses by surviving-qubit order, and subset the locality coordinates the same way. The gate to re-run: uv run python verify/validate_candidate.py codes/239-12-12-graft.json.

Parity checks

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