diff --git a/pyproject.toml b/pyproject.toml index 74860c9d..4765326e 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -45,7 +45,7 @@ requires-python = ">=3.9" dependencies = [ "z3-solver>=4.12", "qecsim", - "ldpc>=0.1.53,<2", # temporary upper cap due to failures seen with ldpc v2 + "ldpc>=2.2,<3", # temporary upper cap due to failures seen with ldpc v2 "numpy>=1.26; python_version > '3.11'", "numpy>=1.24; python_version <= '3.11'", "qiskit[qasm3-import]>=1.0.0", diff --git a/uv.lock b/uv.lock index beb195e7..8bcd39af 100644 --- a/uv.lock +++ b/uv.lock @@ -1179,46 +1179,40 @@ wheels = [ [[package]] name = "ldpc" -version = "0.1.60" +version = "2.2.0" source = { registry = "https://pypi.org/simple" } dependencies = [ { name = "numpy" }, + { name = "pymatching" }, + { name = "pytest" }, { name = "scipy", version = "1.13.1", source = { registry = "https://pypi.org/simple" }, marker = "python_full_version < '3.10'" }, { name = "scipy", version = "1.14.1", source = { registry = "https://pypi.org/simple" }, marker = "python_full_version >= '3.10'" }, + { name = "sinter" }, + { name = "stim" }, { name = "tqdm" }, ] -sdist = { url = "https://files.pythonhosted.org/packages/ef/f8/76b240cda917e1c25afacd6ddde86b3ad34bfb33da4e33df0c389e2c3bec/ldpc-0.1.60.tar.gz", hash = "sha256:06152fcce834c2d46ee04add2102e7d90f9c86617e04113ae84deba9e84f17ba", size = 374066 } -wheels = [ - { url = "https://files.pythonhosted.org/packages/3a/93/dbc2b7d95e05f0066b61598e1d74dda322dee5a6542972b074c61cc61116/ldpc-0.1.60-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:b17c58620d96c7003f4d5428d8199d7807446ff0e6fc0c39832affa967370243", size = 574114 }, - { url = "https://files.pythonhosted.org/packages/6e/cc/3b337f258e72e486924e6c5a5d723d0a03a81c0339f1ab5bbd7365a0788d/ldpc-0.1.60-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:5103cce5713a338c7d2319ace5a555cfdefd9a33e81a4491c1e3973cc602bbad", size = 568538 }, - { url = "https://files.pythonhosted.org/packages/d1/31/4364f966bc834cfb7012b68debb65f75f2d78acbb4ead70c858330b2ce99/ldpc-0.1.60-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:28066a55b855de08da4a33c1349a486f79ee3e5f9883a42a14357320a71bf7e0", size = 1313121 }, - { url = "https://files.pythonhosted.org/packages/02/80/deec8a03cf75043d791db61240139ce57bd35d4d6172b1add1f7a6a1a3ee/ldpc-0.1.60-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:79e045cb7a03ec2d4eaf8405fe37f6f9b27c733a66de0f41a453a930b16a40d5", size = 1267499 }, - { url = "https://files.pythonhosted.org/packages/a2/36/ff2c26dc96fd33f124f080d90b4aa6540e792589213c6deadd1910a913df/ldpc-0.1.60-cp310-cp310-win32.whl", hash = "sha256:dd42d119a0bb1b8ff70088adfe4266ba5f8c5768e81d6db989e818abacc857db", size = 523302 }, - { url = "https://files.pythonhosted.org/packages/46/cb/ded17d77fbfb4a1e75270e93a5e7688252f76a05a773659835b61a767035/ldpc-0.1.60-cp310-cp310-win_amd64.whl", hash = "sha256:a29445a339b9069df96b2545cb9216034683ae85b5a5b59712c330327d320f23", size = 540886 }, - { url = "https://files.pythonhosted.org/packages/4a/9a/e4e6d70f7c1c2d4faf1bcd3b1666e183b24fd581a6169cacfb3dab6f3e03/ldpc-0.1.60-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:35c8326f6ad7d8017ba89ec9fb9c2b2fdfc3cdbefebaedc17423519bd70d1a71", size = 573517 }, - { url = "https://files.pythonhosted.org/packages/ad/77/383c6cdb2ef3818362a9654e6bafb5c7415c49f1fbb5c6dc9f988e8aa7b2/ldpc-0.1.60-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:411584c084470288d95737eb6de94cde2571459c15b880d9e8a4e552cd942393", size = 568029 }, - { url = "https://files.pythonhosted.org/packages/40/1a/b05618c9533b4c4d0de8be8f23a68b69e311110d0e7d7e9a23ccf8b65056/ldpc-0.1.60-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:1896ef67af5be3998aebba5e0b6110dbd02b119fed2e6bdc5f2738d26eccb7ea", size = 1384062 }, - { url = "https://files.pythonhosted.org/packages/8a/24/0578140b2ed4c6ba3d56f03949c8e1a868c3060a240d9215b7665f637a5c/ldpc-0.1.60-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:f83cda648d68998e98e817eae0e84b5057ebb3d6941db9855adf3f0286000bd5", size = 1341428 }, - { url = "https://files.pythonhosted.org/packages/19/34/955b40e8313817ad6853412f9207fdac5dfc94e061988554bf1b07345222/ldpc-0.1.60-cp311-cp311-win32.whl", hash = "sha256:eaa7fe7d813a1935908e4730605595c000f20efa3541f9ee0aa3cdb98c33de5f", size = 522250 }, - { url = "https://files.pythonhosted.org/packages/09/25/c7cbbc4089eac07b5b335735370192ed87268ad52374f3c73b137cc31082/ldpc-0.1.60-cp311-cp311-win_amd64.whl", hash = "sha256:18b721d0a25b4b149e8b5cdbd8cae7d327c9eb445bdfaa84878f4e7ee87702a5", size = 541363 }, - { url = "https://files.pythonhosted.org/packages/f7/a4/6d3b61e813ae14be8357ea6c5d182ae17147fb87ae7f7313a0ccae85880f/ldpc-0.1.60-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:85cd76ec06834bf4c1ccd69577328782e4cd7524f3cc15a92f220debabf86ce6", size = 573433 }, - { url = "https://files.pythonhosted.org/packages/48/fd/917f8ec5ace1eb1e666a6cf00981b029417822983daa1a72fbbdfa21fa43/ldpc-0.1.60-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:3bf499917617fda559160635d49f88ff8402de0b10e82121087f3c5c081dac4a", size = 568160 }, - { url = "https://files.pythonhosted.org/packages/cf/54/74bab08c53059f94a1608eeb04f429efb5c1dd1d1d596de9f5a556bc44d9/ldpc-0.1.60-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:9f101742220f52d5fcd7cbe282d26b924bbfe4823feaa01c2da2aa7aa54e0318", size = 1410814 }, - { url = "https://files.pythonhosted.org/packages/9d/d2/eb83817184d8e07f43b0f3c8a1928298282e8bd7cf59ca4c2e38719da248/ldpc-0.1.60-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:bdecbf7aa294066e5f0cab4f2b257980ddab910899a654a930a35c3dbc769974", size = 1362258 }, - { url = "https://files.pythonhosted.org/packages/09/1c/75d0a99b6efa2b8fb3a59b26999ca74e532df4244691168c6f05532886b9/ldpc-0.1.60-cp312-cp312-win32.whl", hash = "sha256:d0c82887ede968b34eae89fe1ca8d98170586dfeefafee1bfee2f773d94469fe", size = 522158 }, - { url = "https://files.pythonhosted.org/packages/ea/ec/a1abad143c61f08b1bd6aff180a4e7030b2e782ac152b1f43c3a2b5dd784/ldpc-0.1.60-cp312-cp312-win_amd64.whl", hash = "sha256:2d3d422ba4d2d9b8a94f3beed4888f6daa7e61c779dc905a030c39afea4a8708", size = 541313 }, - { url = "https://files.pythonhosted.org/packages/6b/a7/e970595e94cfbfe6c66a6df0deff7425b754b2ac618eac0413c7055f0627/ldpc-0.1.60-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:a108c65a00e8e064e627c09565e95b18ba9c9b7b309cfe1fa405285ef17d6832", size = 570176 }, - { url = "https://files.pythonhosted.org/packages/39/13/b4a8560d76c9b623facf7450ec6055a3ccab4905edcdf829d6d3c9d20f12/ldpc-0.1.60-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:42808fcf37ea58e2e61cc90c1f0dfe2326ef57f302ddbf80c9937963b7811159", size = 564834 }, - { url = "https://files.pythonhosted.org/packages/07/a8/f3c08e292c6dbf544a76a422cebeb1228d660663330c5202eca04719dd44/ldpc-0.1.60-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:2ccb020863d62b51553431cd7986a85c4f6a7024ed5f7992796db7ac38672023", size = 1398979 }, - { url = "https://files.pythonhosted.org/packages/7d/31/645b0f4e3f1ca1a493739d0de83c29321d53ab80127cee1910a89490679b/ldpc-0.1.60-cp313-cp313-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:e32662918590b59fc16283e59f4be26f6011b16bc966de3eff93664a6a6eb858", size = 1353581 }, - { url = "https://files.pythonhosted.org/packages/fa/50/dc4bd6efac99fa817f18a5501dbfc4b35daa7f40aad76de038a19d664e8d/ldpc-0.1.60-cp313-cp313-win32.whl", hash = "sha256:cb56fbfc2dc6ee3c13ead819c9c9c18d6aa6025b21cf583fd5ac29c7fa2492bc", size = 521161 }, - { url = "https://files.pythonhosted.org/packages/e1/d8/f38f4c323beb2124880d9672668759a1c23185a4769b87144a001bb8022a/ldpc-0.1.60-cp313-cp313-win_amd64.whl", hash = "sha256:f277ea524ab80c59dc6ee6a95373e91b9fcae63abbb0f3979998d5aa6f608cf9", size = 540076 }, - { url = "https://files.pythonhosted.org/packages/51/30/4c4ebe5dae12a475c0f04ffcd24891ba58910a5fa4748b8fc73c522ffe6c/ldpc-0.1.60-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:c14cc88df29208a5d538e9d64567d27c2994dc2e8030eecd7f9c35aa5ff1da0e", size = 575952 }, - { url = "https://files.pythonhosted.org/packages/3b/3c/22b6dc6fefd6b59f2edaa20b21190058f3d17cf30b7b19d2fb25cc3c6434/ldpc-0.1.60-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:dde97f0d18a2c84bb7c6ef29f753e56a8114e7b49b7d11f34aa1bde2f3b4db43", size = 570238 }, - { url = "https://files.pythonhosted.org/packages/fc/80/256b6e3799635534b0aada94d75d2b01cf1db932e3e06c57982fade30982/ldpc-0.1.60-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:e6241d9b34488323df07dfc10ddbb218098cb29c4329ab2b6aab214f2467a0dc", size = 1321533 }, - { url = "https://files.pythonhosted.org/packages/4f/71/792c4c007219c26b69c72f00a340f227513f9eec9fc7b68d7a5cd1c987b5/ldpc-0.1.60-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:1456605f3abdb34f05ecbe7496c7847546caa70801e875e01120791abd558cc2", size = 1276065 }, - { url = "https://files.pythonhosted.org/packages/41/f8/b68c9c801519eeac44542ed751feec49962249dd16e8973548403b00eb12/ldpc-0.1.60-cp39-cp39-win32.whl", hash = "sha256:8f0870b6c07894ec55917180f6b6898180a28a2368be202c684229fa2269eeb5", size = 525169 }, - { url = "https://files.pythonhosted.org/packages/c9/0b/1db19bcfb798464d5eee91eb87aa309bac694171c20e444cc8e2bc6b8af6/ldpc-0.1.60-cp39-cp39-win_amd64.whl", hash = "sha256:e9a1f26465b95d5b732c3dbdaf1556275c34fc4b115aef40a9e3b3d99bbf460a", size = 542584 }, +sdist = { url = "https://files.pythonhosted.org/packages/bb/8e/b563643da14d0528e16cfbb27d02562c7674332d4062402f02e59b7eba79/ldpc-2.2.0.tar.gz", hash = "sha256:0e19132c0c18868d29d906568790bf8b04900b9877ede3757d775cc66b936d76", size = 873499 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/a1/ec/776347277af081dac5f50294f1153fe528df2388a04c8b219a95e8b24555/ldpc-2.2.0-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:db1dfc5dc8ba2ff78f320b21861eaa452209ab87f12021f73dd12abfd2327d6a", size = 1557198 }, + { url = "https://files.pythonhosted.org/packages/a5/11/da5d0b02aa06aaaca3cdf881b44f3907d588f3c9e247cc66781d57f2eaab/ldpc-2.2.0-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:b74f451f128b331eb8b11ac321573b08113959badc576790cd8382773f8f4294", size = 1512843 }, + { url = "https://files.pythonhosted.org/packages/c0/35/f95f2712b08c91c0b53b29d9c392fc9775f22ea02858af973bac38f95563/ldpc-2.2.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:af907f8a6bf941a406c68e93b3fbf2c78f18f3667e160e284d058aeed890a4f7", size = 6824150 }, + { url = "https://files.pythonhosted.org/packages/9c/ea/8f69c826f6eb23e46e1f02643d3bd05a34707ca3c60e2a3f55eebb8db9d1/ldpc-2.2.0-cp310-cp310-win_amd64.whl", hash = "sha256:32836372d85956d529c290385ab3cf13b5d9560af872b6fe714924fa3b9cf659", size = 1455000 }, + { url = "https://files.pythonhosted.org/packages/63/0d/aeb00ce57df5f80a1e25608f882e21baca866645c8d48cac7cdc61ed1021/ldpc-2.2.0-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:a366c41344f6281900036c13ae3dea2d6b433b689ecf6421e5804ac92304b784", size = 1557423 }, + { url = "https://files.pythonhosted.org/packages/ba/ef/e0aae24d13cb99aef988d594b75e371d86f2aa2e99b4e9e2efc3dbaa3c5e/ldpc-2.2.0-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:6f302d8216ae2ad2cdd159419b05d5553443f38d0adebb036d5af6ef3f4a083e", size = 1512226 }, + { url = "https://files.pythonhosted.org/packages/fb/38/42b2ed1b744fe8d8f376cc3daf05a3514c0b821f04f60f00bf3b739190f9/ldpc-2.2.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:82d813fefe3f54da7192e6c7782a3ad1227061547879933ea836e7c98b675d57", size = 6947160 }, + { url = "https://files.pythonhosted.org/packages/5f/fe/8f90185ac8168aee6115a38307a9f9f384b93dbfdca83a3d889579f6c4de/ldpc-2.2.0-cp311-cp311-win_amd64.whl", hash = "sha256:90640e9715ca89557cc316135b4b1ef4caa02251af30ba3139f156a82d6af468", size = 1456144 }, + { url = "https://files.pythonhosted.org/packages/ef/15/399e088165d0388ffc4b132b14a7370b37af129dde150aa9d3475e198299/ldpc-2.2.0-cp312-cp312-macosx_10_13_x86_64.whl", hash = "sha256:a47f8b1d70f32e3839c73a1f9b5a485d07628ebfdcefd168db395b2fc9bd8fa9", size = 1556060 }, + { url = "https://files.pythonhosted.org/packages/39/fe/7e447b412a0b4d246d623dd4023fccf852a7fc35fbba597cd1451d52bef4/ldpc-2.2.0-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:9de08d10ce93635e8ebbd46a059f22d53a2bf598162ae13e1047aab5272350c1", size = 1512680 }, + { url = "https://files.pythonhosted.org/packages/f3/78/59efcc65f9963e6d24ac521a8b6440fcbf6c8d1f6b6cac133196d14faf4b/ldpc-2.2.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:69d65cb58e8db3c418ebbf4ec973e1c0a6ee2ce2c1321e34265f21cf72911d06", size = 6897325 }, + { url = "https://files.pythonhosted.org/packages/fb/d2/bdf7631d5c8914581f1a2d0012a04ac9cfe96df97ff24aa44f8808063bb2/ldpc-2.2.0-cp312-cp312-win_amd64.whl", hash = "sha256:5f65b4b55323a09510f2790acb359fd49d1d5217a8a26df94158f84fbe47189c", size = 1451580 }, + { url = "https://files.pythonhosted.org/packages/b2/28/366e8d00d5ceda8ce4f69d6e2b978128b382cbd4e3e7af452ec732af0957/ldpc-2.2.0-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:09bff0a505f886d95c45acb841ff35273c2fdcb902fcb1b5020e0d6292406647", size = 1546211 }, + { url = "https://files.pythonhosted.org/packages/cd/49/a0425eab931deef0a2d193831b337eb05c6f81012eb176c186216261bfb2/ldpc-2.2.0-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:b68464832be5411b0c4d7d30d6538fc6dec627bafe7c28a1db140fb3993ef7a7", size = 1503796 }, + { url = "https://files.pythonhosted.org/packages/3a/4d/985a10b18d1ddaa8cc8be45b97a1015589dd90831f892c5e2ff1b80f113d/ldpc-2.2.0-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:5c7a8cab3f880f065be971c6f94d881948a2608fd90868b7693458272a9f8254", size = 6876909 }, + { url = "https://files.pythonhosted.org/packages/74/74/7dde6a1da6d6d64b1b77edf47fa5aa8a2684aa6555852a10604b68f59686/ldpc-2.2.0-cp313-cp313-win_amd64.whl", hash = "sha256:7b1e2b910d2fd49bf2d517c812367b448465a4314109783e2eb2006b26288ad2", size = 1448209 }, + { url = "https://files.pythonhosted.org/packages/94/bc/e31280dd02a17142ce4af943738e0a64827c6a5cca7561ddfee10ee5594b/ldpc-2.2.0-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:55243005e448d958009752c39dc02748b4ee8cf8adb353be137b9cefc84381da", size = 1561784 }, + { url = "https://files.pythonhosted.org/packages/d4/81/c6f48d03ca87031ef3a3067af571bfa685ee3e6192f0a55333c78d17e1d2/ldpc-2.2.0-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:60658b54c9964ebe83c03c4a5d2e360ea920d6c8a294c6c52ff4df912299e59d", size = 1517053 }, + { url = "https://files.pythonhosted.org/packages/f0/f0/666f0b59c5f5f5281c309042918b3c53a25f5c9bd0e8a18e05b8d5ee9692/ldpc-2.2.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:cf40baca089f27a93ccaced57dba6acbde4fa39735382e8394a95d83f33c31b6", size = 6845448 }, + { url = "https://files.pythonhosted.org/packages/af/05/b7974a89fb2a9eb26832f33b888fc7e41fc882487ee08818de79e5b82fcc/ldpc-2.2.0-cp39-cp39-win_amd64.whl", hash = "sha256:51be729ead0b2736d7a6093bdc922cbdc98bf595ad59a9650753300355baeac2", size = 1459294 }, ] [[package]] @@ -1472,7 +1466,7 @@ wheels = [ [[package]] name = "mqt-qecc" -version = "1.8.3.dev27+g9eb1f23" +version = "1.8.3.dev33+g3cef58e.d20250111" source = { editable = "." } dependencies = [ { name = "bposd" }, @@ -1548,7 +1542,7 @@ requires-dist = [ { name = "fastcore", specifier = ">=1.7.10" }, { name = "furo", marker = "extra == 'docs'", specifier = ">=2023.9.10" }, { name = "ipykernel", marker = "extra == 'docs'" }, - { name = "ldpc", specifier = ">=0.1.53,<2" }, + { name = "ldpc", specifier = ">=2.2,<3" }, { name = "matplotlib", marker = "extra == 'visualization'" }, { name = "mqt-qecc", extras = ["coverage", "docs", "visualization"], marker = "extra == 'dev'" }, { name = "mqt-qecc", extras = ["test"], marker = "extra == 'coverage'" }, @@ -2851,6 +2845,20 @@ wheels = [ { url = "https://files.pythonhosted.org/packages/a0/e9/e58082fbb8cecbb6fb4133033c40cc50c248b1a331582be3a0f39138d65b/simpleeval-1.0.3-py3-none-any.whl", hash = "sha256:e3bdbb8c82c26297c9a153902d0fd1858a6c3774bf53ff4f134788c3f2035c38", size = 15762 }, ] +[[package]] +name = "sinter" +version = "1.14.0" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "matplotlib", version = "3.9.4", source = { registry = "https://pypi.org/simple" }, marker = "python_full_version < '3.10'" }, + { name = "matplotlib", version = "3.10.0", source = { registry = "https://pypi.org/simple" }, marker = "python_full_version >= '3.10'" }, + { name = "numpy" }, + { name = "scipy", version = "1.13.1", source = { registry = "https://pypi.org/simple" }, marker = "python_full_version < '3.10'" }, + { name = "scipy", version = "1.14.1", source = { registry = "https://pypi.org/simple" }, marker = "python_full_version >= '3.10'" }, + { name = "stim" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/cf/47/4968b5c570d03c116c475b18420cfe8d2ae15a2449016d6852e3f92a131f/sinter-1.14.0.tar.gz", hash = "sha256:b40498d9bb7752e28a18bcc06875b34f45befc9f957d7c51c240a37124e8c4d3", size = 174330 } + [[package]] name = "six" version = "1.17.0"