← back to the board
[[54,12,7]] d ≤
n
54
k
12
d
7
kd²/n
10.8889
w
8
X/Z
1

Share this result

Distance

X/Z asymmetry 1 · d_X ≤ 7, d_Z ≤ 7 · w_X = 8, w_Z = 8 (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 found by @vprusso · research/kit/surrogate.lightest_logical · found at 3000 trials · survived 3000 trials · 2026-11-03
witness operator (support, 7 qubits)
[3, 13, 25, 34, 36, 44, 46]
d_Z 7 · witness weight 7 (claimed upper_bound)
witness found by @vprusso · research/kit/surrogate.lightest_logical · found at 3000 trials · survived 3000 trials · 2026-11-03
witness operator (support, 7 qubits)
[1, 11, 16, 17, 21, 48, 53]
certificate none yet · distance stands as a self-certified upper bound (d ≤)

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 4 · H_Z 4 (shortest cycle of each side’s Tanner graph; longer is friendlier to belief propagation)
check weights H_X 7–8 (mean 7.905) · H_Z 7–8 (mean 7.857)
qubit degrees H_X 1–5 (mean 3.074) · H_Z 1–5 (mean 3.056)
trapping sets H_X (1,1)×2 (2,1)×2 (3,1)×10 (smallest syndrome weight at each size, connected sets of up to 3 qubits)
full (size, syndrome weight): count census for H_X
(1,1): 2 (1,2): 17 (1,3): 20 (1,4): 5 (1,5): 10 (2,1): 2 (2,2): 26 (2,3): 93 (2,4): 117 (2,5): 120 (2,6): 124 (2,7): 24 (2,8): 27 (3,1): 10 (3,2): 73 (3,3): 353 (3,4): 870 (3,5): 1303 (3,6): 1717 (3,7): 1439 (3,8): 885 (3,9): 603 (3,10): 152 (3,11): 74 (3,12): 5 (3,13): 4
trapping sets H_Z (1,1)×4 (2,1)×5 (3,1)×10 (smallest syndrome weight at each size, connected sets of up to 3 qubits)
full (size, syndrome weight): count census for H_Z
(1,1): 4 (1,2): 14 (1,3): 16 (1,4): 15 (1,5): 5 (2,1): 5 (2,2): 21 (2,3): 81 (2,4): 119 (2,5): 155 (2,6): 98 (2,7): 45 (2,8): 4 (3,1): 10 (3,2): 66 (3,3): 335 (3,4): 792 (3,5): 1420 (3,6): 1698 (3,7): 1485 (3,8): 960 (3,9): 419 (3,10): 121 (3,11): 30 (3,12): 3

Construction & provenance

authors @vprusso
provenance submitted through the challenge
novelty novelty not audited
construction Priced construction calculus E-PEEL of codes/55-12-7.json ([[55,12,7]], max check weight 8; itself a priced-calculus E-PEEL of codes/56-12-8.json, a generalized-bicycle entry by @MathysRennela): delete qubit 49 (0-based index in the parent file) together with its unique Z check b8, and relabel the surviving qubits in increasing order of their parent indices. Consumer: github.com/unitaryfoundation/code-calculus @ 1b9a942, machine/priced_calculus.py.
model Claude Claude Fable 5.1 (claimed, not verified)
date 2026-11-04
notes Single-step priced-calculus E-PEEL child of board entry 55-12-7. verify/validate_candidate.py found no board entry sharing this code's fingerprint or Weisfeiler-Leman signature, local-Hadamard images included.
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

[[54,12,7]] priced calculus E-PEEL of codes/55-12-7.json

Direction & hypothesis

Unrestricted weight-8 CSS cell. The priced construction calculus was applied one move deep to every CSS entry on the board, and this code is the E-PEEL of codes/55-12-7.json ([[55,12,7]], max check weight 8; itself a priced-calculus E-PEEL of codes/56-12-8.json, a generalized-bicycle entry by @MathysRennela). Peeling qubit 49 with the one Z check that touches it keeps k = 12 and the witnessed distance bound d <= 7 while dropping one qubit, so it sits one qubit to the left of its parent on the frontier. Max check weight stays 8.

What was searched

Every C-DELETE-CHECK, E-PEEL, and E-PUNCTURE move on each of the 2,783 CSS board entries as of 2026-11-02, 1,684,787 moves in all, with the consumer at github.com/unitaryfoundation/code-calculus @ 1b9a942. Children with a bare qubit, a disconnected Tanner graph, a Weisfeiler-Leman signature equal to a board entry or to an earlier child, or parameters already dominated inside the parent's cell were dropped before any search, leaving 334,191 distinct children. Children with n <= 60 and an inherited distance bound of at least 2, and children with 61 <= n <= 100 and a bound of at least 5, were screened with research/kit/surrogate.lightest_logical at 3,000 RIS trials per side; the survivors the kit's novelty pre-check called board-advancing were staged with research/kit/submit.py and gated with verify/validate_candidate.py, one representative per distinct (n, k, d, max weight, locality) point. This code is that representative for [[54,12,7]] at max check weight 8. The screen distance is a witness-backed upper bound; the rungs below are the independent confirmation runs on the staged file.

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 | | ---: | ---: | | 3,000 (staging screen, seeds 1 and 2) | 7 | | 1,000,000 (seed 101) | 7 | | 1,000,000 (seed 102) | 7 | | 10,000,000 (seed 103) | 7 |

4 fresh-seed rung(s) agree at the best bound, the deepest of them at 10,000,000 trials per side. The submitted witness reproduces it: X: d <= 7 (upper_bound), Z: d <= 7 (upper_bound).

Matched-depth peer audit (research/audits/leader_audit.py pair): credible: both claims held at matched depth, the gain survives; candidate [[54,12,7]] w8 reads d <= 7 and peers codes/54-12-6.json and codes/54-12-6-b.json both read d <= 6 (matched depth: 2,000,000 trials, seeds 51, 52)

Dead ends

None recorded for this candidate.

Tools

Model: Claude Fable 5.1 (Claude Code). Repo tooling: research/kit/coordination.py, research/kit/submit.py, research/kit/surrogate.py, research/audits/leader_audit.py. The local verdict is verify/validate_candidate.py; the bundle was assembled by research/kit/promote.py.

Reproduction

Load codes/55-12-7.json, delete qubit 49 (0-based index in that file) together with its unique Z check b8, where the Z rows are numbered b1, b2, ... in file order after dropping rows dependent on earlier ones, as CodeState.from_challenge in machine/priced_calculus.py labels them, and relabel the surviving qubits in increasing order of their parent indices; in github.com/unitaryfoundation/code-calculus @ 1b9a942 this is apply_operation(state, {'op': 'E-PEEL', 'qubit': 49, 'sector': 'Z', 'row_id': 'b8'}). Then run research/audits/leader_audit.py ladder on the result with --ladder 1000000:101,102 to reproduce the confirmation rungs; the witnesses in the entry are the ones those runs validated.

Parity checks

X-checks 21 (max weight 8) · Z-checks 21 (max weight 8)
H_X (21 checks, sparse supports)
[0, 18, 24, 27, 28, 33, 36, 49] [2, 15, 26, 29, 30, 31, 39, 52] [1, 3, 21, 27, 30, 32, 37, 40] [4, 17, 25, 29, 31, 32, 37, 53] [0, 5, 23, 28, 30, 32, 38, 39] [4, 6, 19, 29, 33, 34, 35, 43] [5, 7, 25, 30, 34, 36, 41, 44] [2, 8, 20, 31, 33, 35, 36, 41] [3, 9, 26, 32, 34, 36, 42, 43] [8, 10, 22, 33, 37, 38, 39, 47] [2, 9, 11, 34, 38, 40, 45, 48] [6, 12, 24, 35, 37, 39, 40, 45] [4, 7, 13, 36, 38, 40, 46, 47] [0, 12, 14, 37, 41, 42, 43, 50] [6, 13, 15, 38, 42, 44, 51] [1, 10, 16, 39, 41, 43, 44] [8, 11, 17, 40, 42, 44, 49, 50] [3, 16, 18, 41, 45, 46, 47, 53] [10, 17, 19, 28, 42, 46, 48, 52] [12, 15, 20, 27, 44, 46, 48, 53] [14, 20, 22, 29, 32, 46, 49, 51]
H_Z (21 checks, sparse supports)
[0, 1, 3, 20, 25, 27, 32, 41] [0, 1, 5, 19, 26, 28, 30, 43] [2, 4, 6, 22, 23, 29, 35, 38] [2, 3, 5, 7, 24, 30, 36, 45] [2, 4, 8, 21, 24, 31, 33, 40] [3, 4, 5, 9, 22, 32, 34, 47] [0, 6, 8, 10, 26, 33, 39, 42] [1, 6, 8, 12, 25, 35, 37, 44] [0, 7, 8, 9, 13, 36, 38, 50] [3, 4, 10, 12, 14, 37, 43, 46] [5, 10, 11, 13, 15, 38, 44, 52] [2, 5, 10, 12, 16, 39, 41, 48] [3, 11, 12, 13, 17, 40, 42, 53] [7, 8, 14, 16, 18, 41, 47, 49] [9, 14, 15, 17, 19, 29, 42, 48] [6, 9, 14, 16, 43, 45, 51] [7, 15, 16, 17, 20, 31, 44, 46] [11, 12, 18, 21, 27, 45, 50] [13, 18, 19, 20, 22, 33, 46, 51] [11, 19, 20, 24, 35, 48, 49] [0, 17, 21, 22, 24, 28, 37, 49]
Code ID 54-12-7 · download JSON · raw on GitHub