← back to the board
[[34,8,5]] d ≤
n
34
k
8
d
5
kd²/n
5.88235
w
8
X/Z
1

Share this result

Distance

X/Z asymmetry 1 · d_X ≤ 5, d_Z ≤ 5 · 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 5 · witness weight 5 (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, 5 qubits)
[0, 8, 14, 15, 18]
d_Z 5 · witness weight 5 (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, 5 qubits)
[3, 5, 9, 21, 28]
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.692) · H_Z 7–8 (mean 7.615)
qubit degrees H_X 1–5 (mean 2.941) · H_Z 1–5 (mean 2.912)
trapping sets H_X (1,1)×2 (2,1)×10 (3,1)×29 (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): 11 (1,3): 10 (1,4): 9 (1,5): 2 (2,1): 10 (2,2): 24 (2,3): 48 (2,4): 79 (2,5): 86 (2,6): 39 (2,7): 9 (3,1): 29 (3,2): 105 (3,3): 300 (3,4): 568 (3,5): 796 (3,6): 640 (3,7): 387 (3,8): 169 (3,9): 48 (3,10): 7 (3,11): 2
trapping sets H_Z (1,1)×1 (2,1)×11 (3,1)×31 (smallest syndrome weight at each size, connected sets of up to 3 qubits)
full (size, syndrome weight): count census for H_Z
(1,1): 1 (1,2): 12 (1,3): 12 (1,4): 7 (1,5): 2 (2,1): 11 (2,2): 23 (2,3): 58 (2,4): 76 (2,5): 88 (2,6): 28 (2,7): 5 (2,8): 1 (3,1): 31 (3,2): 105 (3,3): 329 (3,4): 593 (3,5): 780 (3,6): 605 (3,7): 335 (3,8): 135 (3,9): 35 (3,10): 6 (3,11): 2

Construction & provenance

authors @vprusso
provenance submitted through the challenge
novelty novelty not audited
construction Priced construction calculus E-PEEL of codes/35-8-5.json ([[35,8,5]], max check weight 8; itself Mathys Rennela's priced-calculus E-PEEL of codes/36-8-6.json, a generalized bicycle code reconstructed from qecdb record 67a542959d65c7b409826a52): delete qubit 20 (0-based index in the parent file) together with its unique Z check b11, 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 35-8-5. 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

[[34,8,5]] priced calculus E-PEEL of codes/35-8-5.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/35-8-5.json ([[35,8,5]], max check weight 8; itself Mathys Rennela's priced-calculus E-PEEL of codes/36-8-6.json, a generalized bicycle code reconstructed from qecdb record 67a542959d65c7b409826a52). Peeling qubit 20 with the one Z check that touches it keeps k = 8 and keeps the witnessed distance bound at 5 while dropping one qubit. 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 2,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 [[34,8,5]] at max check weight 8. The thirteen points audited first went to the board on 2026-11-04 (PRs #4588 to #4600); this one is from the remainder, re-checked against the board of 2026-11-04 with the gate's structural, deduplication, and novelty stages before the ladder below was run. 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) | 5 | | 1,000,000 (seed 101) | 5 | | 1,000,000 (seed 102) | 5 | | 10,000,000 (seed 103) | 5 |

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

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/35-8-5.json, delete qubit 20 (0-based index in that file) together with its unique Z check b11, 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': 20, 'sector': 'Z', 'row_id': 'b11'}). Then run research/audits/leader_audit.py ladder on the result with --ladder 1000000:101,102 10000000:103 to reproduce the confirmation rungs; the witnesses in the entry are the ones those runs validated.

Parity checks

X-checks 13 (max weight 8) · Z-checks 13 (max weight 8)
H_X (13 checks, sparse supports)
[1, 8, 16, 17, 18, 24, 27, 33] [0, 7, 10, 17, 18, 19, 23, 26] [4, 11, 15, 19, 20, 27, 31, 32] [10, 12, 15, 26, 29, 30, 32] [8, 9, 14, 20, 21, 24, 25, 31] [1, 3, 6, 18, 21, 22, 26] [0, 5, 15, 17, 21, 22, 32, 33] [2, 6, 8, 19, 22, 23, 24, 32] [5, 7, 11, 21, 23, 24, 27] [4, 7, 12, 20, 22, 23, 25, 29] [2, 13, 16, 19, 20, 26, 30, 33] [2, 3, 9, 19, 25, 27, 29] [1, 9, 13, 18, 23, 25, 28, 30]
H_Z (13 checks, sparse supports)
[0, 1, 6, 12, 13, 18, 22, 30] [0, 1, 5, 14, 17, 21, 28] [1, 2, 7, 10, 11, 23, 26, 27] [3, 5, 8, 11, 15, 21, 27, 32] [2, 4, 9, 10, 13, 19, 25, 30] [4, 5, 6, 8, 14, 22, 24, 31] [5, 6, 7, 9, 12, 21, 23, 29] [1, 7, 8, 9, 18, 24, 25] [0, 4, 7, 8, 13, 17, 20, 23] [4, 9, 11, 16, 20, 27, 28] [0, 2, 8, 11, 16, 19, 24, 33] [13, 14, 15, 16, 30, 31, 33] [3, 10, 12, 13, 26, 28, 29]
Code ID 34-8-5 · download JSON · raw on GitHub