← back to the board
[[150,30,10]] d ≤
n
150
k
30
d
10
kd²/n
20.0
w
9

Share this result

Distance

d_X 10 · witness weight 10 (claimed exact)
witness operator (support, 10 qubits)
[66, 74, 78, 81, 82, 88, 101, 102, 112, 118]
d_Z 10 · witness weight 10 (claimed exact)
witness operator (support, 10 qubits)
[24, 60, 61, 63, 66, 73, 75, 82, 84, 85]
certificate none yet · distance stands as a self-certified upper bound (d ≤)

Construction & provenance

authors @yifanhong
provenance submitted through the challenge
novelty known parameter set; see provenance notes
construction Balanced/lifted product over Z_15 semidirect-product_11 Z_2, with weight-3 group-ring entries a=1+x11+x12y, b=1+y+x6y, c=1+x3+x11, d=1+x6+x14y; reproduced from arXiv:2607.27644v1.
model GPT 5.6 Sol (claimed, not verified)
date 2026-08-02
notes Published in Table 8 (Appendix A) of arXiv:2607.27644v1; fresh QDistEvol witnesses reproduced for this contribution.
family balanced product (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

[[150,30,10]] ZSZ-LP balanced-product code

Primary reference: arXiv:2607.27644v1, Table 8 (Appendix A).

Direction & hypothesis

The paper targets constant-rate, weight-9 qLDPC codes at block lengths below 1000. It builds a balanced product from two rate-1/2 classical ZSZ-2BGA codes over a non-abelian semidirect-product group. Non-abelian lifts avoid the constant-distance obstruction proved in the paper for abelian group algebras.

What was searched

This is a reproduction of a published candidate, not a new parameter search. The paper's search pipeline was:

  • Group selection: fix a metacyclic group ZSZ(ℓ₁,ℓ₂,q) with q^ℓ₂ ≡ 1 (mod ℓ₁). Favor ℓ₁ ≫ ℓ₂ so the commutator-subgroup distance bound is not too small, and avoid group actions rich in low-order elements.
  • Classical seed generation: independently sample weight-3 group-algebra pairs (a,b) and (c,d), defining the rate-1/2 classical seed checks H_left=(L[a] L[b]) and H_right=(R[c] R[d]).
  • Classical filtering: apply the cheap filters first. Compute each seed's Tanner girth, retain seeds meeting the chosen girth-6 or girth-8 threshold, then estimate classical distance with QDistEvol and retain seeds meeting the distance threshold. The search sometimes relaxed girth when the next-girth ensemble had substantially worse distance.
  • Balanced product: form pairwise products of surviving left and right seeds. Use different pairs on the two sides because the symmetric choice a=c and b=d forces quantum Tanner girth 4.
  • Quantum filtering: filter by both X- and Z-Tanner girth and count minimum-length cycles. Order survivors by short-cycle count, then run progressively deeper QDistEvol X/Z distance searches until candidates clear the target.
  • Final confirmation: recheck finalists with 1,000,000 QDistEvol iterations distributed over multiple CPUs, or use the pySATDist SAT solver for exact distance.

The Appendix A candidate comes from the broader efficiency–length ensemble. That sweep enumerated ZSZ groups of order 12 through 200 (code lengths 60 through 1000), exhaustively considered presentations for n<100, omitted the girth filters to favor distance, ranked the classical seeds by estimated distance, and formed every balanced product of the best 16 left and best 16 right seeds—at most 256 products per length. Quantum distances were screened with 20,000 QDistEvol iterations and near-frontier points were independently refined with at least 100,000 iterations.

Evidence trail

The parity checks were regenerated from the four published trinomials. GF(2) ranks reproduce k=30, and H_X H_Z^T has zero nonzero entries. Fresh QDistEvol runs found and independently checked a weight-10 X logical after 5000 iterations (seed 3617813910) and a weight-10 Z logical after 5000 iterations (seed 4129071886). Each witness has zero commuting-check syndrome and increases the corresponding stabilizer rank by one. The submitted distance status is exact (pySATDist in the paper); exact claims remain upper bounds on the public board until challenge maintainers run server certification.

Dead ends

The reference reports three structural failure modes used to prune the search: abelian lifts have constant-distance logicals, choosing identical left/right trinomials forces Tanner girth 4, and small commutator subgroups bound constituent distance. The broad search also found that aggressive short-cycle minimization generally reduced distance, motivating separate efficiency-length and cycle-length ensembles.

Tools

Model/harness: GPT 5.6 Sol via OpenAI Codex. The reproduction used the paper's Python ZSZ regular-representation/lifted-product implementation, binar for independent GF(2) ranks, and codedistance QDistEvol for fresh witnesses. The audit and packaging ran locally in the paper repository and a clean checkout of the qLDPC Challenge verifier.

Reproduction

Use ZSZ parameters (ell1, ell2, q)=(15, 2, 11) and group relation yx=x^11y. Set a=1+x^11+x^12y, b=1+y+x^6y, c=1+x^3+x^11, d=1+x^6+x^14y. Form H_left=(L[a] L[b]) and H_right=(R[c] R[d]), then use the five-block balanced-product matrices in arXiv:2607.27644v1. The submitted JSON contains the resulting sparse checks and logical witnesses.

Independently rediscovered as a mitten code

The mitten codes of arXiv:2607.28795 (Bhardwaj et al., Table I) include a [[150,30,10]] weight-9 instance built as a lifted product over C5 x S3. The challenge verifier's Weisfeiler-Leman dedup gate flags it as equivalent to this entry, so the two papers, published within days of each other in July 2026, arrived at the same code up to relabeling.

The reason is that the two groups are the same. Writing Z15 = Z3 x Z5 by CRT, the action x -> 11x of this entry's ZSZ(15,2,11) splits across the factors: 11 = -1 (mod 3) inverts the 3-part, and 11 = 1 (mod 5) fixes the 5-part (with 11^2 = 1 mod 15, so the order-2 action is valid). Hence

Z15 x|_11 Z2 = (Z3 x|_-1 Z2) x Z5 = S3 x C5,

which is the mitten group. Independently: both tables have order 30, are non-abelian, and share the element-order profile (1:1, 2:3, 3:2, 5:4, 10:12, 15:8); the three involutions alone identify C5 x S3 among the four groups of order 30 (D30 has 15, C3 x D10 has 5, C30 is abelian).

So the balanced/lifted product over ZSZ(15,2,11) and the mitten lifted product over C5 x S3 are the same construction in different notation. This entry keeps priority; the mitten seeding of arXiv:2607.28795 therefore contributes five codes to the board rather than six (issue #377).

Parity checks

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