← back to the board
[[197,5,7]] d =
n
197
k
5
d
7
kd²/n
1.244
w
4
X/Z
1
g
1.24
r
1.4142
layers
1
swaps
0

Share this result

Distance

X/Z asymmetry 1 · d_X = 7, d_Z = 7 · w_X = 4, w_Z = 4 (max(d_X,d_Z)/min(d_X,d_Z); each side carries its own earned tier: = certified exact, ≤ witness upper bound)
d_X 7 · witness weight 7 (claimed upper_bound)
witness operator (support, 7 qubits)
[16, 37, 58, 82, 106, 129, 151]
d_Z 7 · witness weight 7 (claimed upper_bound)
witness operator (support, 7 qubits)
[78, 101, 125, 148, 166, 181, 196]
certificate exact, d = 7 · CryptoMiniSat 5.14.7 SAT
X: no logical < 7 exists; Z: no logical < 7 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 8 · H_Z 8 (shortest cycle of each side’s Tanner graph; longer is friendlier to belief propagation)
check weights H_X 2–4 (mean 3.646) · H_Z 2–4 (mean 3.646)
qubit degrees H_X 1–2 (mean 1.777) · H_Z 1–2 (mean 1.777)
trapping sets H_X (1,1)×44 (2,0)×16 (3,0)×2 (smallest syndrome weight at each size, connected sets of up to 3 qubits)
full (size, syndrome weight): count census for H_X
(1,1): 44 (1,2): 153 (2,0): 16 (2,1): 88 (2,2): 386 (3,0): 2 (3,1): 236 (3,2): 997 (3,3): 50 (3,4): 232
trapping sets H_Z (1,1)×44 (2,0)×16 (3,0)×2 (smallest syndrome weight at each size, connected sets of up to 3 qubits)
full (size, syndrome weight): count census for H_Z
(1,1): 44 (1,2): 153 (2,0): 16 (2,1): 88 (2,2): 386 (3,0): 2 (3,1): 236 (3,2): 997 (3,3): 50 (3,4): 232
witness diameter X 6.0828 · Z 6.7082 (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 = 1.414
X checkZ checkqubit site (197)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 0 nearest-neighbor SWAPs per round in total, at most 0 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 known parameter set; see provenance notes
construction Dense-packed surface code (arXiv:2511.06758) at distance 7: five rotated surface-code patches fused via code deformation into one weight-4 patch, reconstructed from the authors' stim simulation (github.com/kohei-fujiu/Dense_Pakcing). Data qubits at odd,odd sites of the five_dense_num lattice; each stabilizer on the four diagonal neighbors of its ancilla.
date 2026-08-13
notes Reconstruction of the dense-packed surface code of arXiv:2511.06758 (Fujiu et al.), from the authors' released stim simulation (github.com/kohei-fujiu/Dense_Pakcing). The [[n,k,d]] parameter set is the paper's construction; this entry adds an honest single-layer layout and verifier-checked witnesses. Not a new code family.
family topological (a tag, not a ranking)
locality 2D-local single (computed from the layout)
weight class weight ≤ 4 (computed)

How this code was found

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

[[197,5,7]] — dense-packed surface code, distance 7

Direction & hypothesis

Companion to the d = 5 dense-packed submission [[101,5,5]] (see notes/101-5-5.md). Same construction family (arXiv:2511.06758) at distance 7. The paper evaluates dense packing at d = 5, 7, 9, 11 and finds the hook-avoiding dense patch matches or beats standalone at larger distance and lower physical error rate. This is the d = 7 member: five logical qubits, weight-4 checks, single-layer honest layout, nearest-neighbour tilted lattice (r = √2).

What was searched

Reconstruction identical to notes/101-5-5.md, with distance = 7 in research/build_dense_surface.py (the five_dense_num mask scales with d). n = 197 data qubits, k = 5, weight 4.

GF(2) sanity: CSS commutation exact, rank(H_X) = rank(H_Z) = 96, so k = 197 − 96 − 96 = 5.

Evidence trail

  • CLI RIS gate (20000 trials) finds no logical lighter than 7 on either side:
  • d ≤ 7 (X and Z).

  • The paper's own logical operators at d = 7 have length 7, so this is a
  • genuine [[197,5,7]] witness-backed upper bound.

  • Not exhaustively certified here (unlike the d = 5 member): the exact
  • d = 7 claim would need the repo's MILP certificate (verify/certify.py) or a deeper RIS refutation. Confidence: upper_bound.

What it advances

  • local-2d-single / weight-4 geometric efficiency: g ≈ 1.24, matching the
  • d = 5 member and above the previous cell best ([[672,85,3]], g ≈ 1.14).

  • Longer distance than [[101,5,5]] at the cost of n; the two are
  • Pareto-incomparable (d 7 vs 5, n 197 vs 101), so both sit on the frontier.

Dead ends

Same k-counting / ancilla trap as the d = 5 instance (see notes/101-5-5.md); resolved by the verifier's data-qubit-only n rule. No density collapse at larger d: the shared-region structure persists and the n-savings vs standalone (5 × 49 = 245 data qubits) hold.

Tools

research/build_dense_surface.py (this repo) with argument 7; numpy GF(2) rref; ./qldpc submit (RIS witness search, schemebook, verifier, locality).

Reproduction

python research/build_dense_surface.py 7   # writes /tmp/dense_7.npz (hx, hz, coords)
./qldpc submit /tmp/dense_7.npz --coords /tmp/dense_7.npz --layers 1 \
  --authors @mathysrennela --family topological

Parity checks

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