Skip to main content

Quaspy

The Quaspy library for Python

The Quaspy (Quantum algorithm simulations in Python) library for Python contains modules that implement:

  • Simulators for the quantum part of Shor's order-finding algorithm [Shor94], modified as in [E24], and the classical post-processing in [E24] that recovers the order in a single run with very high success probability.

  • Simulators for factoring general integers via order-finding, and the post-processing in [E21b] and [E24] that factors any integer completely in a single order-finding run with very high success probability.

  • Simulators for the quantum part of Shor's algorithm for computing general discrete logarithms [Shor94], modified as in [E19p], and the post-processing in [E19p] that recovers the logarithm given the order in a single run with very high probability of success.

  • Simulators for the quantum part of Ekerå–Håstad's algorithm for computing short discrete logarithms [EH17], modified as in [E20] and [E23p], and the post-processing in [E23p] that recovers the logarithm in a single run with very high probability of success. This algorithm does not require the order to be known.

  • Simulators for factoring RSA integers via short discrete logarithms, by using the reduction in [EH17], modified as in [E20] and [E23p], and the post-processing in [E23p] that factors random RSA integers in a single run with very high probability of success.

All modules, classes, methods and functions in Quaspy are documented using Python docstrings.

Note that Quaspy does not implement support for tradeoffs in the aforementioned algorithms. Support for tradeoffs may potentially be added in the future. For the time being, see instead the Qunundrum repository with its suite of MPI programs. Note furthermore that portions of Quaspy are inherited from the Factoritall repository.

Quaspy is a work in progress, and may be subject to major changes without prior notice. Quaspy was developed for academic research purposes. It grew out of our research project in an organic manner as research questions were posed and answered. It is distributed "as is" without warranty of any kind, either expressed or implied. For further details, see the license.

Examples

For examples that illustrate how to use Quaspy, please see the examples directory in the Quaspy repository.

See also the documentation for Quaspy for help on how to use the library.

About and acknowledgments

The Quaspy library was developed by Martin Ekerå, in part at KTH, the Royal Institute of Technology, in Stockholm, Sweden. Valuable comments and advice were provided by Johan Håstad throughout the development process.

Funding and support was provided by the Swedish NCSA that is a part of the Swedish Armed Forces.

Metadata

Release files for quaspy 0.9.4

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for quaspy 0.9.4
File Size Uploaded
quaspy-0.9.4.tar.gz 60.2 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for quaspy 0.9.4
File Interpreter ABI Platform
quaspy-0.9.4-py3-none-any.whl Python 3 none any Details

Total release size: 139.2 kB

Release files / quaspy-0.9.4.tar.gz

Download URL quaspy-0.9.4.tar.gz
Size 60.2 kB
Tags Source
SHA-256 checksum
How to use checksums
499805e32f8f119f69612f7471db3103335c1d9d99e89d1caf28d7834f7ccebc
BLAKE2b-256 checksum
How to use checksums
97e6b234595b7b083b7a7d5b3ca98dbb617a62c64e05807a31d42ff6a46e3310
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.9.6

Release files / quaspy-0.9.4-py3-none-any.whl

Download URL quaspy-0.9.4-py3-none-any.whl
Size 79.0 kB
Tags Python 3
SHA-256 checksum
How to use checksums
bd52d95be4882c3ca93e014e8b0687ac5a8ae274529ce3488a2a315b798e2105
BLAKE2b-256 checksum
How to use checksums
d0d26e30676eda138018dcb6985739255405d9108153e62285cbd75122e2ddb1
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.9.6

Release history Release notifications | RSS feed

This release

0.9.4 This release

2 release files

0.9.3

2 release files

0.9.2

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page