2

I'm new to Stim, so please bear with me if I ask some questions that might seem silly in the end.

Lately, I've been eager to simulate the errorcorrection effects of the BB code, HGP code, and other quantum low density parity check (qLDPC) codes using STIM. Unfortunately, unlike the repetition code and surface code, STIM doesn't have prewritten and well wrapped classes for qLDPC codes. Thus, to carry out the simulations, I have to build these qLDPC codes from the ground up.

I've thoroughly studied the STIM documentation, and I've realized that I need to write at least four components either entirely on my own or by leveraging existing code. These components include the parity check matrix for a specific qLDPC code, the encoding circuit, the syndrome measurement circuit (where I must figure out how and where to insert detectors and perform measurements), and a decoder for qLDPC codes (such as the BP-OSD decoder).

This is quite a daunting engineering task for someone as inexperienced as me. Currently, the most challenging problem I'm facing is how to construct the circuit and insert detectors using only the parity check matrix. In theory, I'm confident that with the parity check matrix (or perhaps the Tanner graph), I can write a program that automatically translates them into a circuit with detectors properly inserted.

The reason is simple: if I insert the detectors manually, given my lack of familiarity with these concepts, I'm bound to make mistakes that are hard to spot. These mistakes could significantly reduce my work efficiency. However, I'm at a loss as to how to achieve this automation.

I STRONGLY suggest that the STIM development team should consider creating a function that takes the parity check matrix and Tanner graph as inputs and outputs a circuit that can later be converted into a detector error model.

Anyway, Thanks for giving me suggestions.

Zach
  • 31
  • 1

0 Answers0