Skip to content

[Mac agent] CC-Ladder Hybrid: connected-cluster lower-bound engine (packing bound, orbit seeds) inside DistQLDPC #124

Open

Description

@guluchen

Round (2026-10-15), baseline main 141dac8 (= solver of 398054e, GH-107)

Motivation: study of Quantinuum's Qubitserf (connected-cluster distance search, Dumer-Kovalev-Pryadko 2017). As shipped it is weaker than main, but a from-scratch prototype that adds a disjoint odd-check packing bound, sibling exclusion and GH-85 orbit seeds solved every tier1-4 code in <= 80 s on one core and five open tier5 codes. Those five distances were independently verified (witness GF(2) checks, three audits, two clean-room reimplementations): BB_360_12 d=24, TN_252_2 d=21, LP_1054_140 d=20, LP_1428_184 d=24, LP_1768_224 d=22.

Three proposals

  1. P1 CC-Ladder Hybrid (selected by the PI, 2026-10-15). A native connected-cluster (CC) lower-bound ladder per CSS half (packing bound, sibling exclusion, [Agent experiment] mac-split-symbreak-20261009: symmetry breaking inside interleaved CSS halves (GH-73 x GH-75 interaction) #85 orbit seeds, [Mac agent] Main + dual-map bound sharing (both halves race, no incremental solver) #107 single-half search when a verified dual map exists) replaces the doubling Phase 1; MaxCDCL stays as the upper-bound/witness engine and as the fallback for codes where CC is weak (degree-2 qubits such as toric/surface, dense codes). Built in stages: CC-first engine first, MaxSAT co-scheduling as a later round.
  2. P2 CC-first engine: CC default for sparse codes, MaxSAT only as a fallback. Fastest, weaker differentiation.
  3. P3 ClusterCDCL: teach MaxCDCL to search like CC (odd-check branching, packing propagator, orbit seeds). Hardest to imitate but slowest and riskiest ([Mac agent] PIB: parity-row iset bound in the MaxCDCL lookahead (structural lower bound from the code's checks) #121 lost TN solution finding).

S0 plan (this issue): default behaviour of main unchanged

  • S0a: clean-room src/cc/ engine (no Qubitserf or prototype code), forced -engine=cc; tests: brute-force oracle on random small CSS codes, every rule subset agrees, mutation tests must fail, every witness verified.
  • S0b: level verdicts agree with the prototype logs on all 23 tier0-4 codes.
  • S0c: -engine=maxsat (default) byte-identical -v logs to main on 28 tier0/1 cells.
  • S0d: measurements (ns/node, per-level growth, server/Mac ratio, selector calibration on toric/surface/dense codes).
  • S0e: in-repo reproduction of the five tier5 distances on yfclab2 (third independent implementation).

Then S1: -engine=auto (selector) in the candidate, Tier 0-5 with 5-seed medians, Tier 5 6 h on yfclab2. Adoption only after Tier 5. Pending PI decisions: stem renames, emitting the basis-row upper bound U0 at t=0, NOTICE wording (cite DKP 2017, acknowledge Qubitserf; no code copied).

Design: CC_INTEGRATION_PLAN (coordinator scratch, to be committed with the S0 report). Hub: #15

Activity

  1. added a commit that references this issue on Oct 15, 2026
  2. guluchen commented on Oct 15, 2026

    @guluchen
    OwnerAuthor

    S0 complete — branch experiment/gh-124-cc-engine, engine 114b901, report ceef175 (optimization/experiments/GH-124/S0_REPORT.md). Default behaviour unchanged (-engine=maxsat default; tier0/1 -v logs byte-identical to main 398054e).

    • S0e, in-repo reproduction (yfclab2, 1 core, 6 h cap): BB_360_12 d=24 (1993 s), LP_1054_140 d=20 (83 s; without orbits 1552 s), LP_1428_184 d=24 (4235 s), LP_1768_224 d=22 (345 s); MRV reruns agree. TN_252_2: default lockstep schedule times out at lb 21 but proves dZ >= 22; -cc-schedule=sequential finds the X weight-21 witness at 17116 s (dX = 21), so d = 21. 71 witness checks pass, no trap. This is the third independent implementation agreeing with the prototype and reimpl-A/B.
    • Solved-by-main tier5 codes: CC 2.6-672 s vs main 5321-18346 s. The other 17 open codes: 1 h CC runs reach lower bounds >= the prototype's (6 codes +1).
    • Tier0-4 (Mac): all correct; time ratio vs main 0.0001-0.07 on tier1-4, 0.06-1.03 on tier0 (process floor).
    • S0b: 1236 (half, level) verdicts identical to the prototype. S0a: two independent oracle harnesses (16k + 15k runs, up to n=127), 0 failures; mutants 1-4 killed (mutants 3/4 redefined because the original definitions cannot change any verdict: see report section 2).
    • S0d: ns/node 0.41-0.55x the prototype; server/Mac ratio 2.55-2.71; selector calibration on toric and planar surface codes L=6..32: CC never slower than MaxSAT (overturns the plan's 'toric/surface to MaxSAT' rule).
    • Exit gate met. Open before S1: selector rule (route all 49 codes to CC), MaxSAT-side -seed, TN_252 hit-level interleaving (S2b), NOTICE wording, minor items in report section 9.

    🤖 Generated with Claude Code

  3. added a commit that references this issue on Oct 15, 2026
  4. guluchen commented on Oct 15, 2026

    @guluchen
    OwnerAuthor

    PI decisions 2026-10-16:

    1. Rename the five confirmed stems: PR data: name five tier5 codes by their confirmed distances (GH-124) #125 (DistQLDPC) and data: BB_360_12_24 and LP_1768_224_22 (confirmed distances) QDistSAT#10.
    2. -ub-basis on by default inside CC (-ub-basis=off to disable) — commit f38075a.
    3. The 17 other tier5 lower bounds stay unconfirmed for now (stems unchanged).
    4. CC is included but not the default engine (-engine=maxsat stays default, byte-identical to main). README now documents how to switch CC and each of its rules on/off, what was taken from the DKP algorithm and from studying Qubitserf, and what DistQLDPC adds; NOTICE entry finalised (DKP citation, Qubitserf acknowledgment, no code copied).

    Consequence for S1: evaluation measures -engine=cc as an opt-in engine against main (Tier 0-4 5-seed medians, Tier 5 6 h); main's default path is unchanged by the merge.

    🤖 Generated with Claude Code

  5. added 2 commits that reference this issue on Oct 15, 2026
  6. guluchen commented on Oct 16, 2026

    @guluchen
    OwnerAuthor

    S1 complete (f6de735): all gates Tier 0-5 PASS for the optional -engine=cc (geomeans CC/main tier1 0.056/0.033, tier2 0.011/0.011, tier3 0.0044/0.0032, tier4 0.056/0.052; Tier 5 16/52 vs 7/52 solved; 0 wrong answers). Adoption PR opened (CC optional, default unchanged); merge awaits the PI.

    🤖 Generated with Claude Code

  7. added 3 commits that reference this issue on Oct 16, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions