Skip to main content
This page is the demo

Quantum LDPC decoding.
The syndrome, decoded and signed, in your browser.

Decode the errors an error-correcting code reports, the same way on every machine.

A fault-tolerant machine runs a classical decoder in its innermost loop: every syndrome round must become a correction, fast and cheap enough to keep up with the code cycle. For the high-rate quantum LDPC codes, which keep many logical qubits in few physical ones, the decoder is belief propagation — and plain BP fails on quantum codes, trapped by their stabilizer degeneracy and short Tanner-graph cycles. The fix is Relay-BP: an ensemble of BP passes with disordered per-node memory, relayed from one another, that breaks the symmetry.

Here it is in pure integer Rust (normalized min-sum — no float, no tanh), so a decode is byte-identical on every machine and the correction is a portable hash. Each decode seals a signed wai.quantum.decode receipt with a joules-per-decode slot. Scope: simulated syndromes, with no device attached; in this tab the energy slot is left unmetered.

Toric code · decode a syndrome

—
—

Bivariate-bicycle qLDPC · [[72,12]]

—
—

Relay-BP vs plain BP · logical error rate, gross code

—
—

A decode you can put in an auditor's hands, with a joules-per-decode slot

The toric panel decodes a bit-flip syndrome on the canonical topological code: red edges are the true error, green the decoder's correction, and the badge is green only when the residual is a product of stabilizers — a logical success, not merely a satisfied syndrome. The gross-code panel does the same on a real high-rate [[72,12]] bivariate-bicycle qLDPC code. The Monte Carlo panel shows the point of relay: over identical error samples, Relay-BP's logical error rate sits below plain BP's across the whole range — the disordered-memory legs recover decodes plain BP leaves failed. Every decode hashes identically on every machine (no float in the decoder) and carries a signed receipt binding (check-matrix hash, syndrome hash, decoder params) → (correction hash, converged, work, joules): the classical decode layer, content-addressed and budget-gated, with a slot for the energy per decode.

Where it lives. The engine is reference code in the open-standards repo, Apache-2.0. Energy: not metered. The receipt sealed here fills its joules-per-decode slot with a placeholder, the message count times a declared constant, so the page shows none.

Where to go from here