Skip to main content

Qiskit provider for accessing the emulator and future Rydberg quantum computer of the QRydDemo consortium

Project description

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.

Project details


Download files

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

Source Distribution

qiskit_qryd_provider-1.0.0.tar.gz (17.7 kB view details)

Uploaded Source

Built Distribution

qiskit_qryd_provider-1.0.0-py3-none-any.whl (20.8 kB view details)

Uploaded Python 3

File details

Details for the file qiskit_qryd_provider-1.0.0.tar.gz.

File metadata

  • Download URL: qiskit_qryd_provider-1.0.0.tar.gz
  • Upload date:
  • Size: 17.7 kB
  • Tags: Source
  • Uploaded using 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

File hashes

Hashes for qiskit_qryd_provider-1.0.0.tar.gz
Algorithm Hash digest
SHA256 529343181f7dbe05d823e99bd4b2806a2f3f9bd5e20ec37b08d8da4d6d724990
MD5 f732abf544bc60a8dd36b2df779bacce
BLAKE2b-256 7cd7a247c18228f902d19618e0aa31e3b59b2aca1e56b8f4987a6a15eb081a2b

See more details on using hashes here.

File details

Details for the file qiskit_qryd_provider-1.0.0-py3-none-any.whl.

File metadata

  • Download URL: qiskit_qryd_provider-1.0.0-py3-none-any.whl
  • Upload date:
  • Size: 20.8 kB
  • Tags: Python 3
  • Uploaded using 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

File hashes

Hashes for qiskit_qryd_provider-1.0.0-py3-none-any.whl
Algorithm Hash digest
SHA256 918da0f137483bca9a660dd485babfbee244507200c5292ce37910e48c19f5a3
MD5 37d780a2908bd4e7d9aa0d80a95949f3
BLAKE2b-256 cfa8b50f14798118b7dd34f9772aaf24b1c440c296e9be952c2dae22b1132ac2

See more details on using hashes here.

Supported by

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