SkillAgentSearch skills...

SlidingWindowDecoder

Sliding window with Guided Decimation Guessing Decoding for QLDPC codes.

Install / Use

/learn @gongaa/SlidingWindowDecoder
About this skill

Quality Score

0/100

Supported Platforms

Universal

README

Sliding Window with Guided Decimation Guessing (GDG) Decoding

This repo contains the source codes of the paper Toward Low-latency Iterative Decoding of QLDPC Codes Under Circuit-Level Noise.

Update [May-13-2025]

  • [x] fix typos, update BP+OSD import/calls to ldpc_v2, add CUDA-Q QEC GPU decoder into Sliding Window OSD.ipynb
  • [x] SHYPS memory experiment in SHPYS.ipynb
  • [x] FAQ page
  • [ ] make sliding window part more reusable
  • [ ] update the BP part from GDG to LDPC v2, improve code-capacity noise multi-thread GDG implementation
  • [ ] let MAC users install from the directory
  • [ ] CUDA implementation of GDG
  • [ ] logical Clifford synthesis compiler
  • [ ] SHYPS logical experiment

Please checkout the FAQ page for installation!

Notebooks

  • IBM.ipynb aims to reproduce the results in Figure 3 of the IBM paper arXiv v1 (they updated their numerical results in v2). N72circuit.svg is the visualization of the noiseless, single syndrome cycle Stim circuit of their Figure 7 for the [[72,12,6]] code.
  • Round Analysis.ipynb takes a closer look at the parity check matrix, explains the basic concept of sliding window decoding and show how the windows are extracted.
  • Sliding Window OSD.ipynb contains the complete pipleline of code/circuit creation, window extraction and BP+OSD is used to decode each window.
  • Data noise.ipynb introduces basic usage of GDG, and is for producing Figure 4 of our paper.
  • Sliding Window GDG.ipynb uses GDG on each window for decoding, for Figure 3 and 7.
  • Syndrome code.ipynb is related to Appendix B.
  • Misc.ipynb is not related to our paper, but demonstrates my implementation of the following papers: BP4+OSD, 2BGA codes, CAMEL, BPGD.

Directory Layout

src
├── include
│   └── bpgd.cpp              # base class for handling decimation, multi-thread GDG
│
├── bp_guessing_decoder.pyx   # single-thread GDG, it shares interface with the multi-thread version
├── osd_window.pyx            # OSD on shortened window PCM
├── codes_q.py                # code constructions
├── build_circuit.py          # build Stim circuit for BB codes
└── simulation.py             # simulation framework for data qubit noise
View on GitHub
GitHub Stars39
CategoryDevelopment
Updated4d ago
Forks9

Languages

Jupyter Notebook

Security Score

90/100

Audited on Mar 30, 2026

No findings