Reproduction of the compact self-dual instance of arXiv:2608.07431, "Designer Codes from GALA: Compact, Self-Dual, and Rate-1/2 QEC on Reconfigurable Atom Arrays" (Yang, Duckering, Dua; 7 Aug 2026). This is a literature baseline: no search was performed here, so this note documents the reproduction instead of a search story, per notes/README.md.
GALA = Group-Action Lifts with Active orthogonality. Fix L, J <= L/2, and a group G = H_k x C_m (H_k a small non-abelian factor, C_m a large abelian one). Choose lifts F = (F_0..F_{L/2-1}) and G = (G_0..G_{L/2-1}) in the group ring F_2[G], and form the block-circulant parents (Eq. 1 of the paper)
F = sum_i z^i (x) F_i, G = sum_i z^i (x) G_i, z = cyclic shift on Z_{L/2}
Hhat_X = [F | G], Hhat_Z = [G^T | F^T]
then keep only the first J block rows as H_X, H_Z. Blocks are the regular representation of G, so n = L*|G| and each side has J*|G| rows. Stabilizer weight is the total term count w = sum_i (|F_i| + |G_i|).
The [F | G] / [G^T | F^T] shape is the generalized-bicycle signature; the row truncation to J < L/2 block rows is what GALA adds, and it is where the rate comes from (rate >= 1 - 2J/L). The non-abelian factor H_k supplies "active orthogonality" — it lets the retained J block rows commute even when the full parents do not. This instance does not need it: H_k is trivial, so the whole lift is abelian, F_2[G] is commutative, and Hhat_X Hhat_Z^T = 0 identically.
Table S5 of the paper, row [[132,30,12]]:
| | | |---|---| | L, J | 12, 5 | | group | C_11 (trivial H_k) | | duality | r_2 | | F | x^2, x^4, x^3, x^6, x^3, x^9 | | G | x^9, x^2, x^8, x^5, x^8, x^7 |
All twelve entries are monomials, so w = 12 and n = 12 * 11 = 132, J*|G| = 55 rows per side.
No parity-check matrices or repo are published with the preprint, so the code was rebuilt from the generators above. Four independent quantities from the paper were reproduced by the rebuild, none of which were used as inputs:
| quantity | paper | rebuild | |---|---|---| | rank(H) | 51 (§"end-to-end", k = 132 - 2*51) | 51 | | k | 30 | 30 | | stabilizer weight | 12 | 12 | | 4-cycle count t_4 | 660 (Table S5) | 660 | | self-dual (H_X = H_Z) | yes | yes |
The t_4 = 660 match is the sharp fingerprint: it is a girth-4 code (the paper flags it as "almost girth-6"), and the 4-cycle count is sensitive to the exact generator ordering and circulant orientation. Both circulant orientations ((b-a) and (a-b) mod L/2) give identical n, k, w, t_4 and are permutation-equivalent; the (b-a) convention is the one submitted.
The paper certifies d = 12 exactly — exhaustive exclusion of all lower-weight logicals plus an explicit weight-12 witness — so no <= is attached to it there. Independently here:
| side | RIS trials | lightest logical found | |---|---|---| | X | 20,000 | 12 | | Z | 20,000 | 12 |
RIS found nothing below 12 on either side, consistent with the paper's exact certification. The witnesses recorded in the JSON are decoder-found weight-12 logicals, so the board records this as a witness-backed upper bound of 12, with the exactness claim resting on the paper.
Consistency with the paper's own distance bound: it notes J = 5 > L/4 = 3 puts this instance in the J > L/4 branch, which caps d <= L = 12; the cap is attained.
kd^2/n = 30 * 144 / 132 = 32.73. That is the best kd^2/n on the board for n <= 200 — the previous best in that range is [[200,40,12]] at 28.8, and the best at n <= 132 is [[126,18,14]] at 28.0. It reaches it at rate 0.227, well above the 0.10-0.20 typical of the compact cell.
The trade the paper makes for this compactness is girth 4 and rate 0.227; it is explicitly *not* covered by the girth->=6, rate->=1/2 claims made for the other GALA instances. Its selling point in the paper is hardware: 132 data atoms, a 3.1 ms syndrome-extraction cycle, and — because the ZX-duality fold is the identity here — transversal Clifford gates with no atom rearrangement at all.
[[672,336,12]] is in scope and is a separate PR. [[1752,880,14]] and [[2232,1120,16]] exceed the n <= 700 schema cap (issue #249) and cannot be submitted without raising it — worth recording that the interesting end of this family (rate 1/2 with d > w) sits above the cap.
J column is absent; for those rows J is recoverable from thequoted rate via k = |G|(L - 2J). Table S5 lists J directly.
H_k (S_3, S_4, S_2 x_R C_m) need the paper'ssigma/tau labelling and the semidirect action to be rebuilt; the reproduction script here covers the abelian sector only, which is all that the two in-scope codes require.
Rebuild and verification: this repo's ./qldpc submit (RIS witness search, 20,000 trials/side, verifier from base branch). Reconstruction script written with Claude Opus 5. No search compute — the generators are read from the paper.
import itertools, numpy as np
def reg(mod, s): # regular rep of x^s in prod_j C_{mod[j]}
idx = list(itertools.product(*[range(m) for m in mod]))
pos = {t: i for i, t in enumerate(idx)}
P = np.zeros((len(idx),) * 2, np.uint8)
for a, t in enumerate(idx):
P[a, pos[tuple((t[j] + s[j]) % mod[j] for j in range(len(mod)))]] = 1
return P
def circ(mod, ent): # block circulant, block (a,b) = ent[(b-a) % h]
h, m = len(ent), int(np.prod(mod))
blk = [np.bitwise_xor.reduce([reg(mod, s) for s in e]) for e in ent]
M = np.zeros((h * m, h * m), np.uint8)
for a in range(h):
for b in range(h):
M[a*m:(a+1)*m, b*m:(b+1)*m] = blk[(b - a) % h]
return M
def gala(mod, F, G, J):
m = int(np.prod(mod)); Fm, Gm = circ(mod, F), circ(mod, G)
return (np.concatenate([Fm, Gm], 1)[:J*m],
np.concatenate([Gm.T, Fm.T], 1)[:J*m])
mod = [11] # C_11, L = 12, J = 5
F = [[(2,)], [(4,)], [(3,)], [(6,)], [(3,)], [(9,)]]
G = [[(9,)], [(2,)], [(8,)], [(5,)], [(8,)], [(7,)]]
HX, HZ = gala(mod, F, G, 5) # -> [[132,30,12]]
Then ./qldpc submit code.npz with hx=HX, hz=HZ.
arXiv:2608.07431, Tables S5 and S2, and the end-to-end case study section.