← back to the stabilizer board
[[50,6,8]] d ≤stabilizer
n
50
k
6
d
8
kd²/n
7.68
w
8

Share this result

Distance

a general stabilizer code has no X and Z sides: d is the minimum Pauli weight of a nontrivial logical operator (a Y factor counts one qubit), and the witness is one Pauli operator that commutes with every generator and is not a product of them
d 8 · witness Pauli weight 8 (claimed upper_bound)
witness operator (Pauli string, 8 qubits)
IXXIIIIIIIIIIIIIXXIIIIIIIIIIIIIXXIIIIIZIIIIIIZIIII X: [1, 2, 16, 17, 31, 32] Z: [38, 45]
certificate none yet · distance stands as a self-certified upper bound (d ≤); the Pauli-weight certifier is not built yet, so stabilizer entries cannot earn d= for now

Diagnostics

computed by the verifier from the parity checks, the layout, and the stored witnesses; shown as evidence, not used for ranking
girth S 4 (shortest cycle of the generator Tanner graph; longer is friendlier to belief propagation)
check weights S 8
qubit degrees S 8
trapping sets S (1,8)×50 (2,8)×100 (3,10)×400 (smallest syndrome weight at each size, connected sets of up to 3 qubits)
full (size, syndrome weight): count census for S
(1,8): 50 (2,8): 100 (2,10): 100 (2,12): 300 (2,14): 100 (3,10): 400 (3,12): 1600 (3,14): 2600 (3,16): 2400 (3,18): 1200 (3,20): 200

Construction & provenance

authors @FarLab
provenance submitted through the challenge
novelty novelty not audited
construction One-block cyclic stabilizer code: generator X^a Z^b and its 50 cyclic shifts, a(x) = x22 + x23 + x27 + x28, b(x) = x14 + x21 + x29 + x36 in F_2[x]/(x50 - 1); a = g p, b = g q with p, q palindromic so that a b* + b a* = 0; k = deg gcd(a, b, x50 - 1)
model Claude Claude Fable 5.1 (claimed, not verified)
date 2026-09-30
notes Found by a sweep of one-block palindromic cyclic codes (Camara-Ollivier-Tillich-type group-algebra code over Z_50, arXiv:quant-ph/0502086), n = 17..200, weight <= 8. Distance ladder: 300-trial Pauli-weight RIS screen, then 2 x 20,000 trials on fresh seeds (held). Novelty unknown: not checked against codetables.de; the dedup gate found no exact, WL-equivalent or Hadamard-image board entry. Genuinely non-CSS: a and b overlap, so every generator carries Y.
family other (a tag, not a ranking)
locality unrestricted (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

[[50,6,8]] — one-block palindromic cyclic stabilizer code X^a Z^b, weight 8

Direction & hypothesis

The general-stabilizer board's low-weight cells (w <= 8) held only a handful of small codes and the two Chamon baselines (kd^2/n = 4), while the higher-k entries have weight 32. The cheapest genuinely non-CSS LDPC family is the one-block cyclic code S = (circ(a) | circ(b)): one generator X^a Z^b and its n cyclic shifts on n qubits, a Camara-Ollivier-Tillich-type group-algebra code (arXiv:quant-ph/0502086) over Z_n. The shifts commute iff a b* + b a* = 0 (b*(x) = b(1/x)); that holds whenever a = g p and b = g q with p, q palindromic (p = p*) and g arbitrary, and for even n also after b -> x^(n/2) b. Then k = deg gcd(a, b, x^n - 1) and the check weight is |supp a u supp b|. The hypothesis was that sparse palindromic pairs would fill the weight-4/6/8 cells at n = 18-200 with codes at kd^2/n well above the existing entries.

What was searched

  • All n from 17 to 200; p, q palindromic of weight <= 4 (p taken up to the multiplier
  • group Z_n^*), g in {1} u {1 + x^j}, both shift variants for even n, check weight <= 8. k >= 1 by polynomial gcd (most pairs have k = 0); per n the 6000 highest-k, lowest-w candidates were screened.

  • Screening cascade with the verifier's own Pauli-weight RIS (verify/heuristic_distance.py):
  • 8 trials (drop d < 5, and kd^2/n < 3 for n > 40), then 300 trials; kept only if not dominated on (n, k, d, w) by any stabilizer board entry or earlier find.

  • Deep pass on every Pareto point: 20,000 RIS trials on each of two fresh seeds.

Evidence trail

  • Screen: d <= 8 at 300 trials. Deep: 2 x 20,000 trials found nothing lighter (held).
  • qldpc submit re-searched (20,000 trials) and the filed witness has Pauli weight 8.

  • Claim: d <= 8, witness-backed upper bound; the board's certifier does not minimise Pauli
  • weight, so no stabilizer entry is exact on the board.

Dead ends

  • Two-generator and non-palindromic pairs were not searched; the family is exactly the
  • one above.

  • Composite n (63, 68, ...) produce 50-80k k >= 1 candidates and dominate the run time; prime
  • n produce few and mostly k = 1 codes (the X_{i,i+1} Z_{i-j,i+j} weight-4 family, d up to 11 at n = 61).

  • Candidates that screened at 300 trials and dropped under the deep pass were discarded;
  • the deep pass changed the distance of a minority of finds by one or two.

Tools

Claude Fable 5.1 in Claude Code; numpy; verify/heuristic_distance.py (Pauli-weight RIS), cli/qldpc.py, verify/. Laptop CPU, a few hours for the whole sweep.

Reproduction

n = 50; a(x) = x^22 + x^23 + x^27 + x^28; b(x) = x^14 + x^21 + x^29 + x^36. Generator i (i = 0..n-1) is X on {i + e mod n : e in supp a} and Z on {i + e mod n : e in supp b} (both -> Y). S = (circ(a) | circ(b)); k = n - rank_2(S) = 6. Witness: X on [1, 2, 16, 17, 31, 32], Z on [38, 45].

Stabilizer generators

generators 50 (max weight 8; 50 mixed X/Z) (one binary symplectic matrix S = (A | B); generator i is X on A_i and Z on B_i, Y where both)
generators (50, Pauli strings on 50 qubits)
IIIIIIIIIIIIIIZIIIIIIZXXIIIXXZIIIIIIZIIIIIIIIIIIII IIIIIIIIIIIIIIIZIIIIIIZXXIIIXXZIIIIIIZIIIIIIIIIIII IIIIIIIIIIIIIIIIZIIIIIIZXXIIIXXZIIIIIIZIIIIIIIIIII IIIIIIIIIIIIIIIIIZIIIIIIZXXIIIXXZIIIIIIZIIIIIIIIII IIIIIIIIIIIIIIIIIIZIIIIIIZXXIIIXXZIIIIIIZIIIIIIIII IIIIIIIIIIIIIIIIIIIZIIIIIIZXXIIIXXZIIIIIIZIIIIIIII IIIIIIIIIIIIIIIIIIIIZIIIIIIZXXIIIXXZIIIIIIZIIIIIII IIIIIIIIIIIIIIIIIIIIIZIIIIIIZXXIIIXXZIIIIIIZIIIIII IIIIIIIIIIIIIIIIIIIIIIZIIIIIIZXXIIIXXZIIIIIIZIIIII IIIIIIIIIIIIIIIIIIIIIIIZIIIIIIZXXIIIXXZIIIIIIZIIII IIIIIIIIIIIIIIIIIIIIIIIIZIIIIIIZXXIIIXXZIIIIIIZIII IIIIIIIIIIIIIIIIIIIIIIIIIZIIIIIIZXXIIIXXZIIIIIIZII IIIIIIIIIIIIIIIIIIIIIIIIIIZIIIIIIZXXIIIXXZIIIIIIZI IIIIIIIIIIIIIIIIIIIIIIIIIIIZIIIIIIZXXIIIXXZIIIIIIZ ZIIIIIIIIIIIIIIIIIIIIIIIIIIIZIIIIIIZXXIIIXXZIIIIII IZIIIIIIIIIIIIIIIIIIIIIIIIIIIZIIIIIIZXXIIIXXZIIIII IIZIIIIIIIIIIIIIIIIIIIIIIIIIIIZIIIIIIZXXIIIXXZIIII IIIZIIIIIIIIIIIIIIIIIIIIIIIIIIIZIIIIIIZXXIIIXXZIII IIIIZIIIIIIIIIIIIIIIIIIIIIIIIIIIZIIIIIIZXXIIIXXZII IIIIIZIIIIIIIIIIIIIIIIIIIIIIIIIIIZIIIIIIZXXIIIXXZI IIIIIIZIIIIIIIIIIIIIIIIIIIIIIIIIIIZIIIIIIZXXIIIXXZ ZIIIIIIZIIIIIIIIIIIIIIIIIIIIIIIIIIIZIIIIIIZXXIIIXX XZIIIIIIZIIIIIIIIIIIIIIIIIIIIIIIIIIIZIIIIIIZXXIIIX XXZIIIIIIZIIIIIIIIIIIIIIIIIIIIIIIIIIIZIIIIIIZXXIII IXXZIIIIIIZIIIIIIIIIIIIIIIIIIIIIIIIIIIZIIIIIIZXXII IIXXZIIIIIIZIIIIIIIIIIIIIIIIIIIIIIIIIIIZIIIIIIZXXI IIIXXZIIIIIIZIIIIIIIIIIIIIIIIIIIIIIIIIIIZIIIIIIZXX XIIIXXZIIIIIIZIIIIIIIIIIIIIIIIIIIIIIIIIIIZIIIIIIZX XXIIIXXZIIIIIIZIIIIIIIIIIIIIIIIIIIIIIIIIIIZIIIIIIZ ZXXIIIXXZIIIIIIZIIIIIIIIIIIIIIIIIIIIIIIIIIIZIIIIII IZXXIIIXXZIIIIIIZIIIIIIIIIIIIIIIIIIIIIIIIIIIZIIIII IIZXXIIIXXZIIIIIIZIIIIIIIIIIIIIIIIIIIIIIIIIIIZIIII IIIZXXIIIXXZIIIIIIZIIIIIIIIIIIIIIIIIIIIIIIIIIIZIII IIIIZXXIIIXXZIIIIIIZIIIIIIIIIIIIIIIIIIIIIIIIIIIZII IIIIIZXXIIIXXZIIIIIIZIIIIIIIIIIIIIIIIIIIIIIIIIIIZI IIIIIIZXXIIIXXZIIIIIIZIIIIIIIIIIIIIIIIIIIIIIIIIIIZ ZIIIIIIZXXIIIXXZIIIIIIZIIIIIIIIIIIIIIIIIIIIIIIIIII IZIIIIIIZXXIIIXXZIIIIIIZIIIIIIIIIIIIIIIIIIIIIIIIII IIZIIIIIIZXXIIIXXZIIIIIIZIIIIIIIIIIIIIIIIIIIIIIIII IIIZIIIIIIZXXIIIXXZIIIIIIZIIIIIIIIIIIIIIIIIIIIIIII IIIIZIIIIIIZXXIIIXXZIIIIIIZIIIIIIIIIIIIIIIIIIIIIII IIIIIZIIIIIIZXXIIIXXZIIIIIIZIIIIIIIIIIIIIIIIIIIIII IIIIIIZIIIIIIZXXIIIXXZIIIIIIZIIIIIIIIIIIIIIIIIIIII IIIIIIIZIIIIIIZXXIIIXXZIIIIIIZIIIIIIIIIIIIIIIIIIII IIIIIIIIZIIIIIIZXXIIIXXZIIIIIIZIIIIIIIIIIIIIIIIIII IIIIIIIIIZIIIIIIZXXIIIXXZIIIIIIZIIIIIIIIIIIIIIIIII IIIIIIIIIIZIIIIIIZXXIIIXXZIIIIIIZIIIIIIIIIIIIIIIII IIIIIIIIIIIZIIIIIIZXXIIIXXZIIIIIIZIIIIIIIIIIIIIIII IIIIIIIIIIIIZIIIIIIZXXIIIXXZIIIIIIZIIIIIIIIIIIIIII IIIIIIIIIIIIIZIIIIIIZXXIIIXXZIIIIIIZIIIIIIIIIIIIII
symplectic rows (A | B) (50, sparse supports)
X: [22, 23, 27, 28] Z: [14, 21, 29, 36] X: [23, 24, 28, 29] Z: [15, 22, 30, 37] X: [24, 25, 29, 30] Z: [16, 23, 31, 38] X: [25, 26, 30, 31] Z: [17, 24, 32, 39] X: [26, 27, 31, 32] Z: [18, 25, 33, 40] X: [27, 28, 32, 33] Z: [19, 26, 34, 41] X: [28, 29, 33, 34] Z: [20, 27, 35, 42] X: [29, 30, 34, 35] Z: [21, 28, 36, 43] X: [30, 31, 35, 36] Z: [22, 29, 37, 44] X: [31, 32, 36, 37] Z: [23, 30, 38, 45] X: [32, 33, 37, 38] Z: [24, 31, 39, 46] X: [33, 34, 38, 39] Z: [25, 32, 40, 47] X: [34, 35, 39, 40] Z: [26, 33, 41, 48] X: [35, 36, 40, 41] Z: [27, 34, 42, 49] X: [36, 37, 41, 42] Z: [0, 28, 35, 43] X: [37, 38, 42, 43] Z: [1, 29, 36, 44] X: [38, 39, 43, 44] Z: [2, 30, 37, 45] X: [39, 40, 44, 45] Z: [3, 31, 38, 46] X: [40, 41, 45, 46] Z: [4, 32, 39, 47] X: [41, 42, 46, 47] Z: [5, 33, 40, 48] X: [42, 43, 47, 48] Z: [6, 34, 41, 49] X: [43, 44, 48, 49] Z: [0, 7, 35, 42] X: [0, 44, 45, 49] Z: [1, 8, 36, 43] X: [0, 1, 45, 46] Z: [2, 9, 37, 44] X: [1, 2, 46, 47] Z: [3, 10, 38, 45] X: [2, 3, 47, 48] Z: [4, 11, 39, 46] X: [3, 4, 48, 49] Z: [5, 12, 40, 47] X: [0, 4, 5, 49] Z: [6, 13, 41, 48] X: [0, 1, 5, 6] Z: [7, 14, 42, 49] X: [1, 2, 6, 7] Z: [0, 8, 15, 43] X: [2, 3, 7, 8] Z: [1, 9, 16, 44] X: [3, 4, 8, 9] Z: [2, 10, 17, 45] X: [4, 5, 9, 10] Z: [3, 11, 18, 46] X: [5, 6, 10, 11] Z: [4, 12, 19, 47] X: [6, 7, 11, 12] Z: [5, 13, 20, 48] X: [7, 8, 12, 13] Z: [6, 14, 21, 49] X: [8, 9, 13, 14] Z: [0, 7, 15, 22] X: [9, 10, 14, 15] Z: [1, 8, 16, 23] X: [10, 11, 15, 16] Z: [2, 9, 17, 24] X: [11, 12, 16, 17] Z: [3, 10, 18, 25] X: [12, 13, 17, 18] Z: [4, 11, 19, 26] X: [13, 14, 18, 19] Z: [5, 12, 20, 27] X: [14, 15, 19, 20] Z: [6, 13, 21, 28] X: [15, 16, 20, 21] Z: [7, 14, 22, 29] X: [16, 17, 21, 22] Z: [8, 15, 23, 30] X: [17, 18, 22, 23] Z: [9, 16, 24, 31] X: [18, 19, 23, 24] Z: [10, 17, 25, 32] X: [19, 20, 24, 25] Z: [11, 18, 26, 33] X: [20, 21, 25, 26] Z: [12, 19, 27, 34] X: [21, 22, 26, 27] Z: [13, 20, 28, 35]
Code ID 50-6-8 · download JSON · raw on GitHub