← back to the board
[[330,68,6]] d =
n
330
k
68
d
6
kd²/n
7.418
w
5
X/Z
1

Share this result

Distance

X/Z asymmetry 1 · d_X = 6, d_Z = 6 · w_X = 5, w_Z = 5 (max(d_X,d_Z)/min(d_X,d_Z); each side carries its own earned tier: = certified exact, ≤ witness upper bound)
d_X 6 · witness weight 6 (claimed upper_bound)
witness found by @mathysrennela · research/kit/surrogate.lightest_logical · found at 4000 trials · survived 4000 trials · 2026-10-10
witness operator (support, 6 qubits)
[11, 78, 94, 158, 201, 289]
d_Z 6 · witness weight 6 (claimed upper_bound)
witness found by @mathysrennela · research/kit/surrogate.lightest_logical · found at 4000 trials · survived 4000 trials · 2026-10-10
witness operator (support, 6 qubits)
[109, 137, 156, 164, 253, 265]
certificate exact, d = 6 · CryptoMiniSat 5.14.7 SAT
X: no logical < 6 exists; Z: no logical < 6 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 10 · H_Z 10 (shortest cycle of each side’s Tanner graph; longer is friendlier to belief propagation)
check weights H_X 5 · H_Z 5
qubit degrees H_X 2 · H_Z 2
trapping sets H_X (1,2)×330 (2,2)×1320 (3,2)×5280 (smallest syndrome weight at each size, connected sets of up to 3 qubits)
full (size, syndrome weight): count census for H_X
(1,2): 330 (2,2): 1320 (3,2): 5280 (3,4): 1320
trapping sets H_Z (1,2)×330 (2,2)×1320 (3,2)×5280 (smallest syndrome weight at each size, connected sets of up to 3 qubits)
full (size, syndrome weight): count census for H_Z
(1,2): 330 (2,2): 1320 (3,2): 5280 (3,4): 1320

Construction & provenance

provenance submitted through the challenge
novelty novelty not audited
construction Regular {5,5} hyperbolic surface code on a closed orientable surface. Quotient Q = Delta_5/Gamma with Q = PSL(2,11); the face-vertex swap is a projective involution J in PGL(2,11) imposing y = J x J-1, with ord(x) = ord(y) = 5 and ord(xy) = 2. Data qubits on edges = left cosets of the order-2 subgroup <xy>; Z checks on face boundaries = left cosets of <x>; X checks on vertex stars = left cosets of <y>. Checks commute because each face boundary meets each vertex an even number of times. n = |Q|/2 and k/n = (5-4)/5 + 2/n by Euler, giving k=68 at n=330. Regenerated from the algebra of arXiv:2610.10948 Sec. II by research/hyperbolic_psl.py; the matrices are recomputed, not copied, since that paper publishes its matrices on request only.
model human (claimed, not verified)
date 2026-10-10
notes Distance is a homological systole on each side, carried as explicit weight-6 witnesses, so d<=6 is witness-backed rather than certified exact.
family topological (a tag, not a ranking)
locality unrestricted (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

[[330,68,6]] [[330,68,6]], a self-dual PSL(2,11) {5,5} hyperbolic surface code at check weight 5, landing in weight-6/unrestricted where weight-5 entries are scarce and topping that cell's small-n frontier on k.

Direction & hypothesis

weight-6 x unrestricted, family topological. The {5,5} tiling gives weight-5 checks and asymptotic rate 1/5, which is rarer than weight 6 or 8 on the board; the gate reports the gain on w as well as k and n, which is the low check weight doing work the paper's efficiency headline does not advertise.

What was searched

Generator-class enumeration for p=5, q=11 with the same relations and the same support-signature deduplication, giving 660 distinct classes, all with n=330 and k=68. Measured on a fresh seed at 4000 trials per side; every class measured yields the same n, k and check weight, and the class filed is the first from the enumeration. n=330, k=68 and d=6 match the paper's Table 2 exactly.

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 (gf2_fast seed 101) | 6 | | 1,000,000 (gf2_fast seed 202) | 6 |

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

Two fresh-seed rungs at 1,000,000 trials per side through the gf2_fast accelerator (seeds 101 and 202) both settle at weight 6, so the bound counts as settled and the claim d<=6 is witness-backed, not certified exact.

Dead ends

  • The paper's efficiency headline (kd2/n ~ 33 at n=51330) is unreachable here:
  • the blocklength cap is n<=700, extended to 1000 only for w<=8 and d<=40, so every large instance in the paper is inadmissible.

  • Enumerate-then-measure in one pass was abandoned: measuring all 660 classes
  • at q=11 exceeded the time budget for no gain, since every class shares n, k and w and only d varies. Measuring one representative per size and deduplicating first is what made this tractable.

Tools

Model: human (opencode). The local verdict is verify/validate_candidate.py; the bundle was assembled by research/kit/promote.py.

Reproduction

research/hyperbolic_psl.py --list 11 5 enumerates; --build 11 5 --class 0 writes HX/HZ as .npy. Matrices recomputed from the published construction, not copied (arXiv:2610.10948 offers its matrices on request only).

Parity checks

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