Skip to main content

Qiskit QRyd Provider

Supported Python versions Package version on PyPI Documentation License

This Python library contains a provider for the Qiskit quantum computing framework. The provider allows for accessing the GPU-based emulator and the future Rydberg quantum computer of the QRydDemo consortium.

Interactive tutorials can be found on QRydDemo's Jupyter server.

Installation

The provider can be installed via pip from PyPI:

pip install qiskit-qryd-provider

Basic Usage

To use the provider, a QRydDemo API token is required. The token can be obtained via our online registration form. You can use the token to initialize the provider:

from qiskit_qryd_provider import QRydProvider

provider = QRydProvider("MY_TOKEN")

Afterwards, you can choose a backend. Different backends are available that are capable of running ideal simulations of quantum circuits. An inclusion of noise models is planned for the future. You can either choose a backend emulating 30 qubits arranged in a 5x6 square lattice with nearest-neighbor connectivity

backend = provider.get_backend("qryd_emulator$square")

or a backend emulating 30 qubits arranged in a triangle lattice with nearest-neighbor connectivity

backend = provider.get_backend("qryd_emulator$triangle")

If you use these backends, the compilation of quantum circuits happens on our servers. The circuits are compiled to comply with the native gate set and connectivity of the Rydberg platform, using a decomposer developed by HQS Quantum Simulations.

After selecting a backend, you can run a circuit on the backend, using the transpile function followed by backend.run:

from qiskit import QuantumCircuit, transpile

qc = QuantumCircuit(2, 2)
qc.h(0)
qc.cx(0, 1)
qc.measure([0, 1], [0, 1])
job = backend.run(transpile(qc, backend), shots=200)
print(job.result().get_counts())

Alternatively, you can use the BackendSampler primitive:

from qiskit import QuantumCircuit
from qiskit.primitives import BackendSampler

qc = QuantumCircuit(2, 2)
qc.h(0)
qc.cx(0, 1)
qc.measure([0, 1], [0, 1])
job = BackendSampler(backend).run(qc, shots=200)
print(job.result().quasi_dists[0])

Expert Options

The provider adds the phase-shifted controlled-Z gate (PCZGate) and the phase-shifted controlled-phase gate (PCPGate) to Qiskit. These gates equal the controlled-Z/phase gates up to single-qubit phase gates. The gates can be realized by the Rydberg platform in multiple ways [1, 2, 3]. The value of the phase shift of the PCZGate can be modified before using the backend via:

from qiskit_qryd_provider import PCZGate

PCZGate.set_theta(1.234)

License

The Qiskit QRyd Provider is licensed under the Apache License 2.0.

Release files for qiskit-qryd-provider 1.0.0

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

Source distribution (sdist)

Source distribution for qiskit-qryd-provider 1.0.0
File Size Uploaded
qiskit_qryd_provider-1.0.0.tar.gz 17.7 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for qiskit-qryd-provider 1.0.0
File Interpreter ABI Platform
qiskit_qryd_provider-1.0.0-py3-none-any.whl Python 3 none any Details

Total release size: 38.5 kB

Release files / qiskit_qryd_provider-1.0.0.tar.gz

Download URL qiskit_qryd_provider-1.0.0.tar.gz
Size 17.7 kB
Tags Source
SHA-256 checksum
How to use checksums
529343181f7dbe05d823e99bd4b2806a2f3f9bd5e20ec37b08d8da4d6d724990
BLAKE2b-256 checksum
How to use checksums
7cd7a247c18228f902d19618e0aa31e3b59b2aca1e56b8f4987a6a15eb081a2b
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.8.0 colorama/0.4.4 importlib-metadata/4.6.4 keyring/23.5.0 pkginfo/1.8.2 readme-renderer/34.0 requests-toolbelt/0.9.1 requests/2.25.1 rfc3986/1.5.0 tqdm/4.57.0 urllib3/1.26.5 CPython/3.10.12

Release files / qiskit_qryd_provider-1.0.0-py3-none-any.whl

Download URL qiskit_qryd_provider-1.0.0-py3-none-any.whl
Size 20.8 kB
Tags Python 3
SHA-256 checksum
How to use checksums
918da0f137483bca9a660dd485babfbee244507200c5292ce37910e48c19f5a3
BLAKE2b-256 checksum
How to use checksums
cfa8b50f14798118b7dd34f9772aaf24b1c440c296e9be952c2dae22b1132ac2
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.8.0 colorama/0.4.4 importlib-metadata/4.6.4 keyring/23.5.0 pkginfo/1.8.2 readme-renderer/34.0 requests-toolbelt/0.9.1 requests/2.25.1 rfc3986/1.5.0 tqdm/4.57.0 urllib3/1.26.5 CPython/3.10.12

Release history Release notifications | RSS feed

This release

1.0.0 This release

2 release files

0.5.0

2 release files

0.4.5

2 release files

0.4.4

2 release files

0.4.3

2 release files

0.4.2

2 release files

0.4.1

2 release files

0.4.0

2 release files

0.3.2

2 release files

0.3.1

2 release files

0.3.0

2 release files

0.2.8

2 release files

0.2.7

2 release files

0.2.6

2 release files

0.2.5

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