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.4-cp310-cp310-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 2f75f8ac7f905df5703efda70c0595ec92b06161dea22ea3290ab265f6c132e9 |
|
MD5 | 26904dbb3f5dab1e518ce3f90be396b8 |
|
BLAKE2b-256 | 6039445f858e2f3fd2d4c20f8f2d348b20295a7eb0d57bf0ab3aac8380373fe7 |
Hashes for ldpc-0.1.4-cp310-cp310-win32.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | da5e1098481b0b7ebfb1c8e9fb3f3dac97a2a0fa0640ae1b53cfb08d322e0b98 |
|
MD5 | 5c13b396f4c8d71c4a531792ea9f0c0f |
|
BLAKE2b-256 | 58ee9fb8fa2bcd81ed2a9a83425dad725c2a00d7e623d6e9c68f0d51cc650040 |
Hashes for ldpc-0.1.4-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 003cb897cfb2daf91a0287a98bf75ddd975cfbc7af24429b4af09202b5342ef4 |
|
MD5 | a40094aa169e42edb3dab1e06d782b64 |
|
BLAKE2b-256 | a08059f9d11c2cbb3b1f1dd9ca6151cb2a81b2dac7498c49ad29fb57d760ee06 |
Hashes for ldpc-0.1.4-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 2faeecf7c07f14f1cf66ff25b0ac2f16db1746ad7a926d8511d5f1b8d4e62b0e |
|
MD5 | 8816df73d816b84d6f2be9361834fede |
|
BLAKE2b-256 | 4e25dbeb790522c8ebe00028d44177916e7816da9b2f926c0a365f06440a5133 |
Hashes for ldpc-0.1.4-cp310-cp310-macosx_10_9_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | bcf2737d53adff0b3541b3c2fa61e9d87ed34af1bc59246dd6ea5047548658f7 |
|
MD5 | 486467dd233d4caf0671453a59a34b39 |
|
BLAKE2b-256 | a2b67fb0c15b32ec31eac4a28e3e386f0d10a6dab7aee7d429dca873aee5510b |
Hashes for ldpc-0.1.4-cp39-cp39-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 604664b35f6514cc639d6066b76be47a9b44638d8044f824038301398d9ab875 |
|
MD5 | 5329a0069f430f3b78b0dcc5e4b9e03d |
|
BLAKE2b-256 | 7fc8b4622f289c237fbbc9264a031ff5183c6b8708d49db8b74bfce92e4be57f |
Hashes for ldpc-0.1.4-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 70b3c2709de25cfd51b8ea44035223e490fe5ebda8cac5e42457fa58acffe233 |
|
MD5 | b38c93fac067a64cd6e69f50a050fdfb |
|
BLAKE2b-256 | d69d6661273d79271dc864c12c4b33e34d9bd086c044879df32f542ba4addd2f |
Hashes for ldpc-0.1.4-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | b0c081a1604d84c4b91e1097014d7a38a5c4754ef055930db9fd0846b0ca7251 |
|
MD5 | 5ed553d729022e5ebbd72a0c2c776a22 |
|
BLAKE2b-256 | 2f271c38263ccf4f6348b8f06854881017ae04e833a0af4c6d1951d2e5f760b0 |
Hashes for ldpc-0.1.4-cp39-cp39-macosx_10_9_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 8bfd7bdd7f7e3360557c9b268b6259b8a1c72468581db8dc8ba329aea79f177e |
|
MD5 | 04092f4a173d58b873af3ae0ed82f581 |
|
BLAKE2b-256 | 26771707cec597caec9502316febd1bc4a48235509b3fc6937e3b96d3183de0f |
Hashes for ldpc-0.1.4-cp38-cp38-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | d4eec981431697467faa7b533320aa9c9a67d7feecd9a315966fe2b0fa84e6bc |
|
MD5 | 7207ceabb9dc88ddfd0a7b800c788923 |
|
BLAKE2b-256 | 12a9b552a7660cf11daf42124236edbfd6e263dc79bad29cfe898ce3dc054f53 |
Hashes for ldpc-0.1.4-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 1293153f55f6d98a41bc0b28465512b052795486c87b95ff3162de117938f688 |
|
MD5 | cbf717ab73ce2767d88688ca060ef999 |
|
BLAKE2b-256 | b98249c6f1513c00e926e609b5b292e94ccdfdd2b61909bb9b97e448fa943002 |
Hashes for ldpc-0.1.4-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | afaffa02b5eca4fd8c11bdf5410ed3ebe67d230d8d1b4f23dcccf0000cf48557 |
|
MD5 | f70faf03f2d8c38f2093d676060174b9 |
|
BLAKE2b-256 | 6f4dca22ace30e1a4daa088925e6c796ce43b3151121eb7e70b190e89ec6dbda |
Hashes for ldpc-0.1.4-cp38-cp38-macosx_10_9_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 6e3473b4c152de7d9ec5fcfbbb0ecd36b2ad4c93a6593d2345b301a2a46a81cb |
|
MD5 | aaf041cc0d570764da8f3c9b2c2810c5 |
|
BLAKE2b-256 | 5b00e825cae268c12c0ef63f948879c2f8cbbcacc9610834204397b017d7443a |
Hashes for ldpc-0.1.4-cp37-cp37m-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 31a9ba24ff11a6a7d251b60f36e6619c8f7106c1a4ffb552ea1df759a0f68c9b |
|
MD5 | c743290e1dca2cd04370028fdf4a59cd |
|
BLAKE2b-256 | 24aa96271288c18c365c752d83b84364abd60eb2658d2679dc8332396bb34270 |
Hashes for ldpc-0.1.4-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 8cd1a1e44e98a8c476a0d931420ec9d8cff50279425c353b8e071383d78047b3 |
|
MD5 | fc272b9344a6a186496e0ef4a942b85a |
|
BLAKE2b-256 | 827b699bf99421d0f8fb1e4628208b4e9a6383290dd67a3cfb85a8b4fa3b36b8 |
Hashes for ldpc-0.1.4-cp37-cp37m-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 48d5744d10cfd6f84450319af828d439ab16dffb137fae44273ee1efadbb98e2 |
|
MD5 | 6c02e9dbf5ba3f179d1fd338ce3d7fa2 |
|
BLAKE2b-256 | 1d1c307e523643187e49f6bff28f27a12be67945d04b367c021a8b32e23c815c |
Hashes for ldpc-0.1.4-cp37-cp37m-macosx_10_9_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 56d65475565024f094da70726bd43d6fba12aa8bbcaa9df3dece9e255013e5ec |
|
MD5 | 6d78a2b24324c5af480fb249ff5e527b |
|
BLAKE2b-256 | 50cc919c1b28a0e1017ff6410b4f50718701db53c5a72a498742b6f61d8d27d1 |
Hashes for ldpc-0.1.4-cp36-cp36m-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 8d3bec07d3a646f28f514b1731aa877c1f3bbc25498bd0ccbe5f3198ef083144 |
|
MD5 | 28ec9fb2c76d571379a8f0d4d2e52dc8 |
|
BLAKE2b-256 | 9a552df8d8c99e6055cb27c33af8d1e4cdedede77358a65511b01665f3bb0330 |
Hashes for ldpc-0.1.4-cp36-cp36m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 9cb2aec80d309acaa16761d147a272129027bbfc79338391c4996268b7f2aef2 |
|
MD5 | a55f50bf69f702a025545431a549bf46 |
|
BLAKE2b-256 | 7eeb42e6aeee71233b3865701c708eeee1648f5ea53e4c1573e1f49da2827786 |
Hashes for ldpc-0.1.4-cp36-cp36m-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | fcfbe78a8e25d6dad97a8a189701ff39be4a4bad8d5834461381f5583785359a |
|
MD5 | 919b4f827352e2222917b68ecd20da36 |
|
BLAKE2b-256 | f7f260252b6c8b510998a732d2a266551cbf8e504eb1a8fa242df4b3afda3d07 |
Hashes for ldpc-0.1.4-cp36-cp36m-macosx_10_9_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | daaa29fc19f5f2cd598d62005e4755c0df56f2ed2316eb26fa0874b52c88d31a |
|
MD5 | 7084ef4d71136e550882278026473d07 |
|
BLAKE2b-256 | 595fda65276d696303a0ca1e1ef64b2173fcc6c0ae3f954584f83cff0e6aee40 |