This software package is designed to support the QRydDemo project on quantum computing with Rydberg atoms. It provides components to support QRydDemo quantum computers based on the qoqo quantum toolkit by HQS Quantum Simulations used to represent quantum circuits.
This repository contains two components:
- roqoqo-qryd: the core rust library that builds on the roqoqo rust library.
- qoqo-qryd: the python interface for roqoqo-qryd that uses the qoqo python interface.
The qoqo-qryd/roqoqo-qryd packages provide the following functionality:
At the moment QRydDemo WebAPI allows access to Quantum Hardware Emulators of different device topology. qoqo-qryd/roqoqo-qryd support interfacing with the corresponding REST-API with low level calls as well as a high-level backend to qoqo quantum programs.
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/qoqo-qryd adds support for changes in device topology to qoqo. Note that this is a preview prototype and does not represent a finalized set of operations on the QRydDemo hardware.
qoqo-qryd/roqoqo-qryd include 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. Note that the devices for the simulator do not represent a finalized design for QRydDemo.
To use the WebAPI, a QRydDemo account is required. Users can register via the online registration form.
Installation instructions are provided by the corresponding READMEs of qoqo-qryd and roqoqo-qryd.
We recommend getting started with the user documentation.
The example code snippets in the documentation are provided for the python users of qoqo-qryd
, the general information on the design principles and the structure of the project also applies to roqoqo-qryd
, e.g. "QRydDemo devices and operations" that the user might refer to.
The roqoqo-qryd
API documentation can be found here.
A small collection of example python programs for the QRydDemo project can be found here.
The examples for the usage of roqoqo-qryd written in rust will follow.
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).