QRyd interface for roqoqo rust quantum computing toolkit

32 releases

new 0.11.8-alpha.0 Nov 29, 2023
0.11.5 Oct 31, 2023
0.9.1 Jul 12, 2023
0.8.4 Mar 27, 2023
0.5.4 Jul 20, 2022
Download history 16/week @ 2023-08-08 22/week @ 2023-08-15 2/week @ 2023-08-22 19/week @ 2023-08-29 77/week @ 2023-09-05 28/week @ 2023-09-12 98/week @ 2023-09-19 38/week @ 2023-09-26 29/week @ 2023-10-03 37/week @ 2023-10-10 30/week @ 2023-10-17 24/week @ 2023-10-24 116/week @ 2023-10-31 96/week @ 2023-11-07 12/week @ 2023-11-14 65/week @ 2023-11-21

291 downloads per month
Used in qoqo-qryd


3.5K SLoC


Crates.io GitHub Workflow Status docs.rs Crates.io

The roqoqo-qryd rust crate implements modules to support qoqo usage with quantum computers and quantum computer emulators of the QRydDemo project.

The QRydDemo project builds on quantum computers using Rydberg atoms. qoqo is quantum computing toolkit by HQS Quantum Simulations.

The roqoqo-qryd package contains the following functionality:

Interface to the current QRydDemo WebAPI

At the moment QRydDemo WebAPI allows access to Quantum Hardware Emulators of different device topology. roqoqo-qryd supports interfacing with the corresponding REST-API with low level calls as well as a high-level backend to qoqo quantum programs. For this it provides the backend APIBackend to evaluate roqoqo quantum programs and the api_devices module to represent devices available on the emulators.

QRydDemo specific hardware operations (prototype)

Rydberg atom based quantum devices support, in principle, operations not commonly found in other quantum hardware. Changes in device topology are one of these operations. roqoqo-qryd adds support for changes in device topology to roqoqo via the operations in its pragma_operations module. Note that this is a preview prototype and does not represent a finalized set of operations on the QRydDemo hardware.

Local simulator supporting specific hardware operations

roqoqo-qryd includes a local QuEST based simulator for quantum devices supporting the Rydberg specific quantum operations. The simulator is intended to let users test the capabilities of quantum hardware with the additional operations. roqoqo-qryd provides the simulator via the SimulatorBackend backend that implements the roqoqo Backend trait. The backend uses the device prototypes in the module qryd_devices of roqoqo-qryd. Note that the devices for the simulator do not represent a finalized design for QRydDemo.

Accessing QRydDemo WebAPI

To use the WebAPI, a QRydDemo account is required. Users can register via the online registration form.


For using roqoqo-qryd in rust code including the optional simulator simply add

roqoqo-qryd = {version="0.5", features=["simulator"]}

to the [dependencies] section of your Cargo.toml.


Although the code snippets in the user documentation are provided for the python users, the rust user might refer to the user documentation to find some general information, e.g. on "QRydDemo devices and operations.

The API documentation for the roqoqo-qryd rust package can be found here: API-documentation.


Examples are to follow soon.


Acknowledgments related to using OpenSSL for http requests:

"This product includes software developed by the OpenSSL Project for use in the OpenSSL Toolkit (http://www.openssl.org/)."

This product includes cryptographic software written by Eric Young (eay@cryptsoft.com). This product includes software written by Tim Hudson (tjh@cryptsoft.com).


~304K SLoC