qector-bp-osdlisted
Install: claude install-skill GuillaumeLessard/qector-claude-plugin
# QECTOR BP-OSD
Source of authority: v1.0.0 reference manual, chapters 8, 9.
## Where BP-OSD applies
BP-OSD is the only decoder defined for **arbitrary GF(2) parity-check
matrices** (manual 11.1). The matching decoders reject any code with
a qubit of degree > 2; the Union-Find rejection is the explicit
contract, not a bug (manual 20.8). BP-OSD handles:
- qLDPC codes (bicycle, bivariate-bicycle, hypergraph-product).
- Color codes (`codes.color_code`).
- Any code with hyperedges (weight > 2 mechanisms).
- Codes fed by a DEM with mechanisms that cannot be collapsed to
graph edges.
## The belief-propagation update (manual 8.1)
Let `gamma_q = LLR_prior(q) + sum_{c in N(q)} m_{c->q}` be the
posterior LLR of qubit `q`. The check-node update is the **box-plus
kernel** in the log domain:
phi(x) = -ln(tanh(x/2)) = ln coth(x/2) for x > 0
phi(0) = +inf
phi(x) -> 0 for large x
Three schedules are supported:
| Schedule | Formula | Notes |
| ------------------ | -------------------------------------------------------- | ---------------------------------------- |
| Exact sum-product | `m_{c->q} = sgn * phi( sum_{q'} phi(|m_{q'->c}|) )` | default; numerically stable |
| Min-sum | `m_{c->q} = sgn * min_{q'} |m_{q'->c}|` | classical approximation, opt-in |
| Relay (layered) | same kernel; checks processed sequential