← back to the board
[[132,32,8]] d =
n
132
k
32
d
8
kd²/n
15.515
w
11
X/Z
1
g
0.0113
r
6.0828
layers
2
swaps
563

Share this result

Distance

X/Z asymmetry 1 · d_X = 8, d_Z = 8 · w_X = 11, w_Z = 11 (max(d_X,d_Z)/min(d_X,d_Z); each side carries its own earned tier: = certified exact, ≤ witness upper bound)
d_X 8 · witness weight 8 (claimed upper_bound)
witness operator (support, 8 qubits)
[82, 90, 93, 95, 102, 110, 113, 115]
d_Z 8 · witness weight 8 (claimed upper_bound)
witness operator (support, 8 qubits)
[41, 45, 49, 51, 101, 105, 109, 111]
certificate exact, d = 8 · CryptoMiniSat 5.14 SAT
X: no logical < 8 exists; Z: no logical < 8 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 7–11 (mean 9.036) · H_Z 7–11 (mean 9.036)
qubit degrees H_X 2–10 (mean 3.833) · H_Z 2–10 (mean 3.833)
trapping sets H_X (1,2)×18 (2,2)×45 (3,3)×240 (smallest syndrome weight at each size, connected sets of up to 3 qubits)
full (size, syndrome weight): count census for H_X
(1,2): 18 (1,3): 48 (1,4): 36 (1,5): 12 (1,6): 12 (1,8): 5 (1,10): 1 (2,2): 45 (2,3): 132 (2,4): 318 (2,5): 264 (2,6): 276 (2,7): 132 (2,8): 160 (2,9): 126 (2,10): 128 (2,11): 60 (2,12): 60 (2,13): 6 (2,14): 6 (3,3): 240 (3,4): 1449 (3,5): 3042 (3,6): 3624 (3,7): 3064 (3,8): 2962 (3,9): 4128 (3,10): 4039 (3,11): 3942 (3,12): 3023 (3,13): 2314 (3,14): 1584 (3,15): 732 (3,16): 620 (3,17): 78 (3,18): 123 (3,20): 16
trapping sets H_Z (1,2)×18 (2,2)×45 (3,3)×240 (smallest syndrome weight at each size, connected sets of up to 3 qubits)
full (size, syndrome weight): count census for H_Z
(1,2): 18 (1,3): 48 (1,4): 36 (1,5): 12 (1,6): 12 (1,8): 5 (1,10): 1 (2,2): 45 (2,3): 132 (2,4): 318 (2,5): 264 (2,6): 276 (2,7): 132 (2,8): 160 (2,9): 126 (2,10): 128 (2,11): 60 (2,12): 60 (2,13): 6 (2,14): 6 (3,3): 240 (3,4): 1449 (3,5): 3042 (3,6): 3624 (3,7): 3064 (3,8): 2962 (3,9): 4128 (3,10): 4039 (3,11): 3942 (3,12): 3023 (3,13): 2314 (3,14): 1584 (3,15): 732 (3,16): 620 (3,17): 78 (3,18): 123 (3,20): 16
witness diameter X 8.0623 · Z 8.544 (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
layout contributed by @dorakingx · Simulated annealing over site assignments on an integer grid with the repo's own research/local2d/fold_layout.search_layout (max-diameter objective, several bounding boxes and seeds); single layer at radius 4 tried first, then two layers at 7. Radius and per-site occupancy re-measured with the verifier's rule. · 2026-10-04
r = 6.083
X checkZ checkqubit site (67)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 563 nearest-neighbor SWAPs per round in total, at most 9 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 @nihoniumqc
provenance submitted through the challenge
novelty novelty not audited
construction Central CSS tensor product of board inputs 6-4-2 and 20-8-4, in that order, using arXiv:2609.37231 Eqs. (14)-(15). Retained zero-based X/Z row indices: [[0], [0], [0, 1, 2, 3, 4, 5], [0, 1, 2, 3, 4, 5]]. Input attribution: 6-4-2: @MathysRennela; 20-8-4: @EthanFeld. The research note gives the complete reproducible matrix recipe.
model GPT-6 (claimed, not verified)
builds on https://arxiv.org/abs/2609.37231, https://arxiv.org/abs/1512.07081
date 2026-10-03
notes Known tensor construction; literature novelty unverified. Final duplicate and WL-signature checks use upstream da1f2c0a1611b215376b249c139f4951e2394418. Neither check constitutes exhaustive equivalence testing. X and Z distances remain witnessed upper bounds.
family other (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

[[132,32,8]] weight-11 CSS parity amplification

The submitted JSON records witness-backed upper bounds on both distances. Randomized search is not a lower-bound certificate.

Direction & hypothesis

Target: CSS weight-9plus x unrestricted. Explore the rate, blocklength and check-weight tradeoffs of small-factor CSS tensor products. This applies an established construction; literature novelty remains unverified.

What was searched

Seven tensor instances were built after screening small board seeds and parity factors; all seven passed the original trusted gate and six were retained as non-dominated within the batch. Initial pilots used 500 NumPy trials per side. The confirmation ladder below starts with the subsequent 100,000-trial confirmation and includes the fresh million-trial rung. Final validation uses upstream da1f2c0a1611b215376b249c139f4951e2394418.

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 | | ---: | ---: | | 100,000 (C++; root seed 20961002; threads=2, pair_depth=16) | 8 | | 1,000,000 (C++; root seed 21061002; threads=4, pair_depth=16) | 8 |

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 <= 8 (upper_bound), Z: d <= 8 (upper_bound).

The first accelerated confirmation used 100,000 trials per side, 2 threads and pair_depth=16. The final rung uses 1,000,000 trials per side and 4 threads. Each accelerated call searches both Pauli sides and returns the overall minimum, rather than separate minima. Root seeds differ between calls; within a call the backend uses matching thread-seed offsets across sides. NumPy and C++ trial budgets are not interchangeable. Returned witnesses were saved and checked. No smaller logical was found in these rungs. Both submitted sides remain witness-backed upper bounds.

For the even all-ones parity factor, complementary representatives v and v+1 have disjoint supports. The existing overlap bound (Lemma 4 of arXiv:2609.37231) and tensor upper bound give D_P=2d_P(B). The unchanged repository MILP certifier previously proved both distances of the 20-8-4 seed, with a 3-second limit per logical constraint. This supports D_X=D_Z=8 analytically, separately from the randomized evidence; the submitted JSON remains upper_bound and does not claim server exact certification of this product.

Dead ends

  • The tested 466-qubit tensor product was excluded because the 414-qubit
  • product dominates it in blocklength, encoded dimension and check weight.

  • A previous amplification fieldnote rejected three products for
  • noncommutation; reconstructing the general tensor blocks gives commuting checks. Rank conditions affect the homology dimension, not the square-zero differential identity.

Tools

Model: GPT-6 (Codex desktop; @nihoniumqc). Repo tooling: research/kit/submit.py, research/kit/surrogate.py, verify/gf2_fast.cpp, verify/certify.py. The local verdict is verify/validate_candidate.py; the bundle was assembled by research/kit/promote.py. Compute: Python 3.12 on macOS arm64. Fresh million-trial rung: 10.09 seconds. Unchanged challenge C++ accelerator with pybind11 3.0.1.

Reproduction

Input entries are codes/6-4-2.json and codes/20-8-4.json at upstream commit da1f2c0a1611b215376b249c139f4951e2394418. Input attribution: 6-4-2: @MathysRennela; 20-8-4: @EthanFeld. The 6-qubit factor is the known all-ones error-detecting CSS code. The 8- and 12-qubit factors, when used, are board reproductions of the 2BGA construction (arXiv:2306.16400). The 32-qubit seed is a SAT search result, the 20-qubit seed is a self-orthogonal CSS search result, and the 15-qubit seed is the standard quantum Hamming code. Only the two named inputs are used in this submission; their stored layout coordinates are not inherited.

The following code reconstructs the submitted checks, including their ordering:

import json
import numpy as np

def read(name):
    with open("codes/" + name) as f:
        doc = json.load(f)
    result = []
    for side in ("X", "Z"):
        h = np.zeros((len(doc["checks"][side]), doc["n"]), dtype=np.int8)
        for i, support in enumerate(doc["checks"][side]):
            h[i, support] = 1
        result.append(h)
    return result

matrices = read('6-4-2.json') + read('20-8-4.json')
rows = [[0], [0], [0, 1, 2, 3, 4, 5], [0, 1, 2, 3, 4, 5]]
hx, hz, gx, gz = [h[r] for h, r in zip(matrices, rows)]
mx, nq = hx.shape
mz = hz.shape[0]
ax, na = gx.shape
az = gz.shape[0]
I = lambda d: np.eye(d, dtype=np.int8)
Z = lambda r, c: np.zeros((r, c), dtype=np.int8)
HX = np.block([
    [np.kron(hx, I(na)), Z(mx*na, mz*ax), np.kron(I(mx), gz.T)],
    [np.kron(I(nq), gx), np.kron(hz.T, I(ax)), Z(nq*ax, mx*az)]])
HZ = np.block([
    [np.kron(hz, I(na)), np.kron(I(mz), gx.T), Z(mz*na, mx*az)],
    [np.kron(I(nq), gz), Z(nq*az, mz*ax), np.kron(hx.T, I(az))]])

The X/Z matrices have shapes (56, 132) and (56, 132) and GF(2) ranks 50 and 50. Therefore k=132-50-50=32; maximum check weight is 11. The reconstruction was checked entry-for-entry against the submitted JSON. Use verify/qldpc_verify.py on codes/132-32-8.json to verify the stored logical witnesses and structure. The accelerated search is the witness-returning research/kit/surrogate.py interface distance_rand_witness, backend="fast"; use the seeds, budgets, threads and pair_depth in the ladder. Save the returned support and verify it. There is no layout or circuit-distance claim.

Parity checks

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