Skip to content

Quick is an agnostic gate-based circuit SDK, providing an integrated interface for using any supported quantum circuit framework seamlessly.

License

Notifications You must be signed in to change notification settings

Qualition/quick

Folders and files

NameName
Last commit message
Last commit date

Latest commit

9c8d43c · Apr 14, 2025
Jan 19, 2025
Feb 22, 2025
Feb 26, 2025
Feb 25, 2025
Feb 25, 2025
Mar 5, 2024
Jan 19, 2025
Feb 22, 2025
Feb 26, 2025
Jan 18, 2025
Apr 14, 2025
Feb 22, 2025
Aug 20, 2024

Repository files navigation

Quick

PyPI version License Tests codecov Codacy Badge Ruff

Quick Logo (Light Mode)

Quick Logo (Dark Mode)

quick is an agnostic gate-based circuit SDK, providing an integrated interface for using any supported quantum circuit framework seamlessly, and provides a complete pipeline from construction of circuits to mapping on actual hardware.

Getting Started

Prerequisites

  • python 3.10, 3.11, 3.12
  • Ubuntu

Currently, due to this issue quick works reliably only on Ubuntu.

Quick Installation

quick can be installed with the command:

pip install quick-core

Pip will handle all dependencies automatically and you will always install the latest (and well-tested) version.

To install from source:

pip install git+https://github.com/Qualition/quick

Usage

The docs/examples are a good way for understanding how quick works. Depending on your preference, you may use the package as end-to-end, or use it in parts for low-level modifications.

The /notebooks directory contains pedagogical material for utilizing quick:

  • Creating and Manipulating Circuits : This notebook demonstrates the basics of creating quantum circuits, and how different existing frameworks have been integrated within quick.
  • Preparing Quantum States and Operators : This notebook demonstrates how to prepare arbitrary statevectors and unitary operators to quantum circuits using exact encoding schema.
  • Running Quantum Circuits : This notebook demonstrates the different backends available for running circuits, ranging from simulators to QPUs.

Testing

Run tests with the command:

pytest tests

To run all tests including slow ones, use:

pytest tests --runslow

Linting

Run lint checks with the commands:

mypy quick
ruff check quick

Contribution Guidelines

If you'd like to contribute to quick, please take a look at our contribution guidelines. By participating, you are expected to uphold our code of conduct.

We use GitHub issues for tracking requests and bugs.

Citation

If you wish to attribute/distribute our work, please cite the accompanying paper:

@article{malekaninezhad2024quick,
   title={quick: {A} {H}igh-{L}evel {P}ython {L}ibrary for {I}ntegrating {Q}uantum {G}ate-based {F}rameworks},
   author={Amir Ali Malekani Nezhad},
   year={2024},
   journal={arXiv preprint arXiv:TBD},
}

License

Distributed under Apache v2.0 License. See LICENSE for details.

About

Quick is an agnostic gate-based circuit SDK, providing an integrated interface for using any supported quantum circuit framework seamlessly.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages