Python tools for low density parity check (LDPC) codes
Project description
LDPC
This module provides a suite of tools for building and benmarking low density parity check (LDPC) codes. Features include functions for mod2 (binary) arithmatic and a fast implementation of the belief propagation decoder.
Documentation
The full documentation can be found here.
Installation from PyPi (recommended method)
Installtion from PyPi requires Python>=3.6. To install via pip, run:
pip install -U ldpc
Installation (from source)
Installation from source requires Python>=3.6 and a local C compiler (eg. 'gcc' in Linux or 'clang' in Windows). The LDPC package can then be installed by running:
git clone https://github.com/quantumgizmos/ldpc.git
cd ldpc
pip install -e ldpc
Dependencies
This package makes use of the mod2sparse
data structure from Radford Neal's Software for Low Density Parity Check Codes C package.
Attribution
If you use this software in your research please cite as follows:
@software{Roffe_LDPC_Python_tools_2022,
author = {Roffe, Joschka},
title = {{LDPC: Python tools for low density parity check codes}},
url = {https://pypi.org/project/ldpc/},
year = {2022}
}
If you have used the BP+OSD class for quantum error correction, please also cite the following paper:
@article{roffe_decoding_2020,
title={Decoding across the quantum low-density parity-check code landscape},
volume={2},
ISSN={2643-1564},
url={http://dx.doi.org/10.1103/PhysRevResearch.2.043423},
DOI={10.1103/physrevresearch.2.043423},
number={4},
journal={Physical Review Research},
publisher={American Physical Society (APS)},
author={Roffe, Joschka and White, David R. and Burton, Simon and Campbell, Earl},
year={2020},
month={Dec}
}
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distributions
Built Distributions
Hashes for ldpc-0.1.3-cp310-cp310-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 50b0a4baa84d3ea9d3f4173fa00433f1960a147091df9400ea97ce9ef5f6ef6b |
|
MD5 | 1a9b4a2130b74d36e58949d9d9bfa30d |
|
BLAKE2b-256 | 02ddd060033edb7516b0a4dfce532c47719bb7ba41d83b71979387c07e33517d |
Hashes for ldpc-0.1.3-cp310-cp310-win32.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 55e6aedea5241c4d14f04aba20d37b76fe9632aa71eb18381395364320adc69e |
|
MD5 | 17b0e11ebdb63a427a0d2501c09ec53b |
|
BLAKE2b-256 | a2d1f71795c608e2ae0f22bcd0b037892debac4e754f87ea79dcd3a1f9741bd8 |
Hashes for ldpc-0.1.3-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 0999a97e6b8e71294ec0609b03e351298437d58c17476a51f59dd85dc4a2db84 |
|
MD5 | 06437f2d20854f1bd4caf9fe77be95d6 |
|
BLAKE2b-256 | 37347e073918ee9729efbdf9d6cfc54d0816823177578125799bacc32fbf99d6 |
Hashes for ldpc-0.1.3-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 14ff72923ee938cc940e6bfc32483a91fc2eeb24f8bcac905cc6092ba59f8d45 |
|
MD5 | 8ab619f281e766db9400e68d2014a4d4 |
|
BLAKE2b-256 | d8fac0e8459eabd065456d9679e266de2633689a31fbafe1b899ac5ba841bb9b |
Hashes for ldpc-0.1.3-cp310-cp310-macosx_10_9_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 474c0fadfa50658c1f4aa4fe0178fcd49f794f209138984da4f3b3bbc4fbda2e |
|
MD5 | c73ecca3eb0044713d09bbdf2dcb13ac |
|
BLAKE2b-256 | 5130da0b0a92c0ad3f481e6d6d057ae26e1398313ffd714179120817fe51d3c3 |
Hashes for ldpc-0.1.3-cp39-cp39-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 9a71b6af388b935846efc84225cc0fbc0324b5d9917acce5c990e558f8f39f56 |
|
MD5 | 6a7fa2b9be4981ee96959468b5026dcf |
|
BLAKE2b-256 | aa912952ed223bab1198c04624281213e0b3cd8602ba3d8c8a953f958c719934 |
Hashes for ldpc-0.1.3-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | cd9841b0abc712608d5d6389d4da30d054f441177b04fecf8c42596840d7f5ea |
|
MD5 | e362e00e5fb74d976dbb95e99f24fb3b |
|
BLAKE2b-256 | 8d8f9455bf80b21af2211c3957d988a3e0aea7c801adc5802566aa7c7584dbd4 |
Hashes for ldpc-0.1.3-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 6cf1b6a223f9e25532c3661cf7d9d3d898cbe722be6012bf80525a59339fbbbb |
|
MD5 | 6b0f0eb5421a57c78360b442242e769f |
|
BLAKE2b-256 | 7e3b8f724abc6dc1645b34147ecdce56ec7060b2ec21c99e2b4cc94d7b79b636 |
Hashes for ldpc-0.1.3-cp39-cp39-macosx_10_9_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 4dc6a12db0107b222b680045212a451536483d5fcffc426ff8b2bcbabe731294 |
|
MD5 | 059f916d5c38817b5339d1c504054806 |
|
BLAKE2b-256 | 132c11dbfb9a3b6a26a655d91a62141fb6f52ea34d12ef41affb4ffd406e9900 |
Hashes for ldpc-0.1.3-cp38-cp38-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | edd263f0ac23e5f59446634fea689569911e2232f0d1b10b5aecdd74d5aa3f97 |
|
MD5 | 232e98dd95b8207fd5826c4449aec603 |
|
BLAKE2b-256 | 54429540ac464093a4bba7aeb493be1f45b57f9cc8224edb60896aa234a468ee |
Hashes for ldpc-0.1.3-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | e682b2d615b83eaf8586a523a4973b24f02ebf30c654760700f220910cdc57ef |
|
MD5 | 0c4f20d726b8eee9c384e38c9c34a003 |
|
BLAKE2b-256 | 5c5ac3ee702674e1ad81c35bd28301dc883cf046cdf1f6680b3a892ff87ba8e9 |
Hashes for ldpc-0.1.3-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 5ecf28560a5e920c8fb1f82e364433af92dd049188da952336660d3e4e6ff0c2 |
|
MD5 | f12151108f5519d80514b35f31562c29 |
|
BLAKE2b-256 | 42672f253aa2e83b25533e203d7360b4fa833b89a96fb69cccc4ef524ccb5600 |
Hashes for ldpc-0.1.3-cp38-cp38-macosx_10_9_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | afd6866c32dbf107dcc8a1af083d7605212c7c06e07f49f0ce59d11aac97a699 |
|
MD5 | 8620f826679bcafb1092cf034ca7663e |
|
BLAKE2b-256 | 337dd8292016a8731286515ab3160cef1e8d4249e0c5617b4b5068272e726552 |
Hashes for ldpc-0.1.3-cp37-cp37m-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 7a00f12e24bdd194744397bd4a352d06cd03d96d891448df82c80cf48b3c3e3d |
|
MD5 | 74314b11dbc7d44ecc5b617fd17d286b |
|
BLAKE2b-256 | e139529db3c5eae88af5b7974770a658cede23b1b0c949f5efb2582e07794ab7 |
Hashes for ldpc-0.1.3-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 0159528b623b1c2b39118e2f760f61ef761364468ec6108d63f1853ec9427406 |
|
MD5 | f47a7bff31545ae81a6a9b2299832f76 |
|
BLAKE2b-256 | f543402567cd07819056933081eb15d39aee1cac90dab97e566f35a7de9aa0be |
Hashes for ldpc-0.1.3-cp37-cp37m-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 20d36299585881ca3c94a198053a61c700065091702869b224eace0fe4329744 |
|
MD5 | c659feabaf2d062361d233031b484c8a |
|
BLAKE2b-256 | 0548c2232f55b837241906d88e53cdaf5e9845bfb4d9fa87892725fb26608079 |
Hashes for ldpc-0.1.3-cp37-cp37m-macosx_10_9_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 679f6cb8ac6243a3a8086490951e13f687d9d8f4f078e460d28dd899241fea5f |
|
MD5 | b787a6e312046106552a3e300ff83e7a |
|
BLAKE2b-256 | 8e8c38e89ef1f4af72c6076d8ed30a3192f007e5fd15599c7c0ee35b573b86c5 |
Hashes for ldpc-0.1.3-cp36-cp36m-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 688dd294b947c532bc359e069bed40b188ee96be0f7306b68577a24ec3f5a01e |
|
MD5 | aafe3f10e43ff5fc573ee5cfa45b0d58 |
|
BLAKE2b-256 | 25910b5b56f4b6ff52f23fb89e13e90c293f44a8267fdf72129a614514c9da78 |
Hashes for ldpc-0.1.3-cp36-cp36m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 98929b39c2666cd57011a7cf9334a09a4bf08b70dcbffb653319a27aa931051b |
|
MD5 | 8914ebb772665953ff26fdba2c310d7f |
|
BLAKE2b-256 | 5cf4992ebd00df2b7ec5fdf0459b56789d8428802df3efce435814ed644bcbf9 |
Hashes for ldpc-0.1.3-cp36-cp36m-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 8bb069eb6a78e069385d3417bfa2ce86eef1f4cc859708ef7b6daae72a8923fc |
|
MD5 | 5eabcfa4febaa6f0161156cf27cd7925 |
|
BLAKE2b-256 | 76ec984de208cd90d769080074693a5c3fd38c2bad9a243525f7e5512407b68e |
Hashes for ldpc-0.1.3-cp36-cp36m-macosx_10_9_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 4d543abe0ce25ac23b5460061f80b0b475bd2e85d76596997af323e4ae6e1736 |
|
MD5 | 290ff232195801b9c0b23f7f403bfec0 |
|
BLAKE2b-256 | c3986e3c9780f840745ee5d7ab2758ded1a27a5e097c056d33b38c6e8152b2db |