Infleqtion / qLDPC

Tools for constructing and analyzing quantum low density parity check (qLDPC) codes.
Apache License 2.0
73 stars 8 forks source link

Multi-Dimensional HGP codes. / 3D Toric Code #33

Closed oliverweissl closed 5 months ago

oliverweissl commented 5 months ago

Really nice library, and it seems very useful for one of my projects! I was wondering if you plan to extend the HGP functionality to produce n-dimensional codes aswell? This would be very helpful to construct a 3D Toric code for example.

perlinm commented 5 months ago

Thank you! I would be happy to add additional functionality, particularly if it is helpful or useful to somebody :slightly_smiling_face:

To add the n-dimensional HGP code, I need to understand it (or review a PR/implementation written by somebody else). Do you have a reference I could use? Is this the right place to look?

perlinm commented 5 months ago

Assuming that I understand the request, I think Eq. 14 here (arXiv version of the paper linked above) gives me a concrete construction that "looks like" a hypergraph product of n classical codes. However, this product gives me an n-complex, in which any pair of adjacent boundary operators can be used to define a CSS code. So in total, the n-complex gives me n-1 CSS codes. Which of these codes is "the" hypergraph product of n classical codes?

Apologies in advance if the things I am saying do not make sense. I am learning this stuff on the fly so I may be getting concepts or terminology wrong :sweat_smile:

oliverweissl commented 5 months ago

Hey, thanks for looking at the issue! Im not aware of any generalizable construction method implemented yet. However the 3D toric is coded in panqec. Im struggeling myself to understand it as Im developing a decoder for my masters thesis. However the current libraries are pretty restricted in the type of codes they have.

I have read a paper that describes the construction a bit differently to the one you have, I will try to find kt again!

perlinm commented 5 months ago

I see. Are you simply after the n-dimensional toric code? If so, perhaps I can add just that. I would still be interested in adding a multi-dimensional HGPCode, though.

oliverweissl commented 5 months ago

Yes im trying to validate my decoder concept on different type of codes. For now Im sticking to Toric codes, because the lack of generalizable construction. Also only Toric codes would be a nice to cross validate different libraries :)

perlinm commented 5 months ago

I'll let @oliverweissl close this issue if+when it's addressed satisfactorily :slightly_smiling_face: