How hellwithcode0/mabs-public works
MABS is a streaming quantum error-correction decoder for rotated surface-code memory. Its principal workflow builds a circuit bundle, prepares syndrome data, decodes each shot in overlapping windows, routes each window through fast local/lookup paths or blossom, then commits corrections and carries unresolved syndrome forward to produce logical-observable predictions. The README also documents legacy adaptive/SLEM decoders, batch and fixed-streaming baselines, and timing/reporting capabilities. The excerpts establish key CASCADE calls; wiring for unsampled CLI and decoder modules is left out where uncertain.
Main entry points: cascade_stream.py CASCADE stream · baselines.py Baseline runners · cascade_route.py FLASH routing · cli_bench.py Benchmark CLI
Components 20
Entry points
- Package CLI
src/mabs/__main__.py - Benchmark CLI
src/mabs/v3/cli_bench.py
Streaming data
- Circuit bundle
src/mabs/streaming.py - DEM processing
src/mabs/streaming_dem.py - Window graph
src/mabs/streaming_graph.py - Window matching
src/mabs/streaming_windows.py
Decode routes
- CASCADE stream
src/mabs/v4/cascade_stream.py - FLASH routing
src/mabs/v4/cascade_route.py - CASCADE config
src/mabs/v4/cascade_core.py - FLASH lookup
src/mabs/v4/flash_lut.py - Certified clusters
src/mabs/v4/cluster_route.py - Commit actions
src/mabs/v4/commit_action.py - Blossom decode
src/mabs/v3/local_decode.py - SLEM decoder
src/mabs/v3/slem.py - Adaptive decoder
src/mabs/adaptive.py
Evaluation
- Baseline runners
src/mabs/baselines.py - Timing reports
src/mabs/reporting.py
Other components
- Operator
- Stim
- PyMatching
Connections 21
- Operator → Package CLI: launches
- Operator → Benchmark CLI: benchmarks
- Benchmark CLI → Baseline runners: runs methods
- Baseline runners → Circuit bundle: uses bundle
- Circuit bundle → Stim: builds circuit
- Circuit bundle → DEM processing: derives detector data
- CASCADE stream → Window graph: gets schedule
- Window graph → Window matching: builds window matchers
- CASCADE stream → FLASH routing: routes windows
- CASCADE stream → Commit actions: commits results
- CASCADE stream → Window matching: commits blossom edges
- FLASH routing → FLASH lookup: looks up actions
- FLASH routing → Certified clusters: tries cluster route
- FLASH routing → Blossom decode: falls back
- CASCADE stream → CASCADE config: uses configuration
- Certified clusters → FLASH lookup: uses actions
- Baseline runners → PyMatching: batch decode
- Window matching → PyMatching: window matching
- Baseline runners → SLEM decoder: runs decoder
- Baseline runners → Adaptive decoder: runs decoder
- Benchmark CLI → Timing reports: summarizes measurements