Skip to main content

Qurry 🍛 - The Measuring Tool for Renyi Entropy, Loschmidt Echo, and Magnetization Squared, The Library of Some Common Cases

Project description

Qurry 🍛 - The python package for measuring quantum entanglement entropy and wave function overlap.

The python package that makes the randomized measurement easy.

The major function includes the measurement of quantum Renyi Entropy and Wave Function Overlap based on the randomized measurement protocol. When interfaced with IBM Qiskit, the package automates the workflow from creating experiment objects, job submission and recall and postprocessing.
There are several additional features, such as measurement of magnetization and error mitigation. Please check them out!

Available Python Version Downloads Available System Available System Available System Available System

Installation

By PyPI - Stable Release

  • The package can be found in pip list as qurrium-x.y.z
  • Pip downloads the most stable release, but not necessarily the latest version.
pip install qurrium

By TestPyPI - Nightly Release

  • This package can be found in pip list as qurry-x.y.z.devW
  • This version includes new features and minor bug fixes, but may not be stable.
pip install qiskit tqdm requests
# the installation from testPyPI can' t find these dependencies
pip install -i https://test.pypi.org/simple/ qurry

Maually by Git

Qurry can be installed from source. Since this package relies on Cython and Rust, it requires "C complier" and "Rust complier" which you need to install first.

To install rust, run the following command:

curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh

Then install qurry by the following command:

git clone https://github.com/harui2019/qurry-preview.git --recursive
cd qurry
pip install -e .

Test Installation

pytest is used for testing. Simply run the following command after the installation:

pytest

Environment

Qurry currently SUPPORT qiskit 0.46.0+ and qiskit 1.0.0+, other lower versions are no longer available. The package has been tested on the following systems.

  • Ubuntu 18.04+ LTS (All ManyLinux 2014 compatible distro)

    • on x86_64 (recommended)
    • on x86_64 Windows 10/11 WSL2 (recommended)
    • on aarch64
    • We strongly recommend to use Linux based systems because Python multiprocessing may exist issues on Windows and the NVIDIA CUDA acceleration of Qiskit, qiskit-aer-gpu are supported only on Linux.
  • Windows 10/11

    • on x86_64
  • MacOS 11+

    • on aarch64 (Apple Silicon, M1/M2/M3/M4 chips)
    • on x86_64 (Intel chips)

The depedent modules are as follows.

  • with required modules:
  • with optional modules:
    • qiskit-aer: The complete simulator package of qiskit
    • qiskit-aer-gpu: The gpu acceleration of qiskit-aer on Linux with Nvidia GPU
      • qiskit-aer-gpu-cu11: A package for CUDA 11
    • qiskit-ibm-runtime: The API to access IBM Quantum Device
    • qiskit-ibm-provider: The API to access IBM Quantum Device, but will be deprecated soon.
    • qiskit-ibmq-provider: The API to access IBM Quantum Device, which has been deprecated.

Measurement -- made randomized measurement easy.

qurrent - The Quantum Renyi Entropy Measurement

The major function of this module is to measure the quantum Renyi entropy to quantify entanglement.

qurrech - The Wave Function Overlap Measurement

This module evaluates the overlap between any two given quantum states.

In each of the modules, two methods are implemented to perform the measurements:

  • Hadamard Test

    • Ref: Entanglement spectroscopy on a quantum computer - Sonika Johri, Damian S. Steiger, and Matthias Troyer, PhysRevB.96.195136
  • Haar Randomized Measure

    • Ref: Statistical correlations between locally randomized measurements: A toolbox for probing entanglement in many-body quantum states - A. Elben, B. Vermersch, C. F. Roos, and P. Zoller, PhysRevA.99.052323

Citation

If you use this tool in your research, please cite the following paper in your publication:

@misc{chang2024probing,
  title         = {Probing entanglement dynamics and topological transitions on noisy intermediate-scale quantum computers},
  author        = {Huai-Chun Chang and Hsiu-Chuan Hsu and Yu-Cheng Lin},
  year          = {2024},
  eprint        = {2406.10159},
  archiveprefix = {arXiv},
  primaryclass  = {quant-ph},
  url           = {https://arxiv.org/abs/2406.10159}
}

Acknowledgments

The authors acknowledge the support from National Chengchi University, NSTC-Quantum Virtual Machine project, National Center for Theoretical Sciences (NCTS). and IBM Quantum Hub at National Taiwan University (NTU).

Special thank to IBM Quantum Hub at NTU for providing the access right of IBM Quantum that allows us to fully test the tool and execute our experiments.

The author @harui2019 is grateful to the NTU hub of NCTS that supported him as a Research Assistiant in the early stage of the development.

National Chengchi University

NSTC

National Center for Theoretical Sciences, Physics Division

IBM Quantum Hub at National Taiwan University


Stay connected. More features coming soon...

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distributions

If you're not sure about the file name format, learn more about wheel file names.

qurrium-0.9.2-cp39-abi3-win_arm64.whl (295.6 kB view details)

Uploaded CPython 3.9+Windows ARM64

qurrium-0.9.2-cp39-abi3-win_amd64.whl (725.7 kB view details)

Uploaded CPython 3.9+Windows x86-64

qurrium-0.9.2-cp39-abi3-win32.whl (271.3 kB view details)

Uploaded CPython 3.9+Windows x86

qurrium-0.9.2-cp39-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (695.8 kB view details)

Uploaded CPython 3.9+manylinux: glibc 2.17+ x86-64

qurrium-0.9.2-cp39-abi3-manylinux_2_17_i686.manylinux2014_i686.whl (717.0 kB view details)

Uploaded CPython 3.9+manylinux: glibc 2.17+ i686

qurrium-0.9.2-cp39-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (686.9 kB view details)

Uploaded CPython 3.9+manylinux: glibc 2.17+ ARM64

qurrium-0.9.2-cp39-abi3-macosx_11_0_arm64.whl (636.4 kB view details)

Uploaded CPython 3.9+macOS 11.0+ ARM64

qurrium-0.9.2-cp39-abi3-macosx_10_9_x86_64.whl (649.3 kB view details)

Uploaded CPython 3.9+macOS 10.9+ x86-64

qurrium-0.9.2-cp39-abi3-macosx_10_9_universal2.whl (1.0 MB view details)

Uploaded CPython 3.9+macOS 10.9+ universal2 (ARM64, x86-64)

File details

Details for the file qurrium-0.9.2-cp39-abi3-win_arm64.whl.

File metadata

  • Download URL: qurrium-0.9.2-cp39-abi3-win_arm64.whl
  • Upload date:
  • Size: 295.6 kB
  • Tags: CPython 3.9+, Windows ARM64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.12.7

File hashes

Hashes for qurrium-0.9.2-cp39-abi3-win_arm64.whl
Algorithm Hash digest
SHA256 b650f4606ac0f4775a43c0acbc64aeebd963215f050d0930fede3825c95e4701
MD5 3b93dfe530f52eaf9937927bdb54da57
BLAKE2b-256 f2af8fb0034e31e71d040bafd521f436fc2ddb317ca7792d972dbf937f6677da

See more details on using hashes here.

File details

Details for the file qurrium-0.9.2-cp39-abi3-win_amd64.whl.

File metadata

  • Download URL: qurrium-0.9.2-cp39-abi3-win_amd64.whl
  • Upload date:
  • Size: 725.7 kB
  • Tags: CPython 3.9+, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.12.7

File hashes

Hashes for qurrium-0.9.2-cp39-abi3-win_amd64.whl
Algorithm Hash digest
SHA256 c049a76b88c63701d78fbad83cd857d6e06a701d80b31a057ef922fc857c3623
MD5 175dcdcd5a0146f156503dec55a76bc8
BLAKE2b-256 52cf5dcacde3ba83d02c1617e2c291931af9c12abbf04fb57d9b51ab3caf07e0

See more details on using hashes here.

File details

Details for the file qurrium-0.9.2-cp39-abi3-win32.whl.

File metadata

  • Download URL: qurrium-0.9.2-cp39-abi3-win32.whl
  • Upload date:
  • Size: 271.3 kB
  • Tags: CPython 3.9+, Windows x86
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.12.7

File hashes

Hashes for qurrium-0.9.2-cp39-abi3-win32.whl
Algorithm Hash digest
SHA256 efb3284398794d831a71d5fb739bd4b8fa87b139b2300240311a4b6b246fa834
MD5 53332c8f4ab3d55065d1168643233dd9
BLAKE2b-256 b7c0749873b59bfbdaac95f3a40217d64578bd6be21563ff8a627fd117bcd1bc

See more details on using hashes here.

File details

Details for the file qurrium-0.9.2-cp39-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for qurrium-0.9.2-cp39-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 df15dc2e9c3f941c69ea33562039e28e8a1734f485a6e186bcf5a7636495a411
MD5 280e6c297294af42ee5d9591c1a2cee1
BLAKE2b-256 04476d9178c53a406d0d2d14c787650480f328d71cce916bcc8832d42f3c0667

See more details on using hashes here.

File details

Details for the file qurrium-0.9.2-cp39-abi3-manylinux_2_17_i686.manylinux2014_i686.whl.

File metadata

File hashes

Hashes for qurrium-0.9.2-cp39-abi3-manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm Hash digest
SHA256 e6266ac880076b57a5cfeafb8f0a123896732cc34d2d04bff27532021063bb50
MD5 ac55277b9632a5631c4b55070c4c378c
BLAKE2b-256 6a5f37dfd1e94ce93625c4dd7c5944066d99ed5fc62beb5081c514dd95115366

See more details on using hashes here.

File details

Details for the file qurrium-0.9.2-cp39-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for qurrium-0.9.2-cp39-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 3fc0df007f268c501761fa9bacddee3e9ce6e5ddc2060d625cfb3e0703d1147b
MD5 002dd000b28f196733b9a2672f5ac768
BLAKE2b-256 9df98da2801d4bf8b464e40fdfbbb8022d81ceec9e8d2213f0446ea4bd365755

See more details on using hashes here.

File details

Details for the file qurrium-0.9.2-cp39-abi3-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for qurrium-0.9.2-cp39-abi3-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 e8fcf6ab03e5c7ee39e391d9ac5f4cdf38b557c1a7745f8bc8071e2d26e92be8
MD5 2731fa3fba73583e0b9a99793d70bed8
BLAKE2b-256 9c02bb825d9cb375b8431d879863537c93e777c5d9ecc71fe075c6fb43ca0fc0

See more details on using hashes here.

File details

Details for the file qurrium-0.9.2-cp39-abi3-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for qurrium-0.9.2-cp39-abi3-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 431d2b9cf308e5e26d6a8ed0d604ef7d975135f5f1cd651cb0aa8a3858774926
MD5 7be2293cda575876310ed44bb398ca92
BLAKE2b-256 bd344785c64a108de2be16f755f62226a208318eb995f62311cde5b45291c382

See more details on using hashes here.

File details

Details for the file qurrium-0.9.2-cp39-abi3-macosx_10_9_universal2.whl.

File metadata

File hashes

Hashes for qurrium-0.9.2-cp39-abi3-macosx_10_9_universal2.whl
Algorithm Hash digest
SHA256 7e1db4f64bcc00308f9aa21ed4015545150fd028ae9125a375bdfb624f0cdfe6
MD5 e66eaf2e60e92bf56a7c5b915fd4f382
BLAKE2b-256 79c077fa5c06c459d4ecc6464bb2e4430067abcda8241d4aef9f0b8e4420e198

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page