Skip to main content

Pasqal interface for circuit-based quantum computing SDKs

Project description

Qadence

Qadence is a Python package that provides a simple interface to build digital-analog quantum programs with tunable qubit interaction defined on arbitrary register topologies realizable on neutral atom devices.

pre-commit tests Build documentation

Documentation can be found here.

Feature highlights

  • A block-based system for composing complex digital-analog programs in a flexible and scalable manner, inspired by the Julia quantum SDK Yao.jl and functional programming concepts.

  • A simple interface to work with interacting neutral-atom qubit systems using arbitrary registers topologies.

  • An intuitive expression-based system developed on top of the symbolic library Sympy to construct parametric quantum programs easily.

  • [High-order generalized parameter shift rules](link to psr tutorial) for differentiating parametrized quantum operations.

  • Out-of-the-box automatic differentiability of quantum programs with PyTorch integration.

  • Efficient execution on a variety of different purpose backends: from state vector simulators to tensor network emulators and real devices.

Installation guide

Qadence can be installed from PyPI with pip as follows:

pip install qadence

The default backend for Qadence is PyQTorch, a differentiable state vector simulator for digital-analog simulation. It is possible to install additional backends and the circuit visualization library using the following extras:

  • braket: the Braket backend.
  • pulser: the Pulser backend for composing, simulating and executing pulse sequences for neutral-atom quantum devices.
  • visualization: to display diagrammatically quantum circuits.

by running:

pip install qadence[braket, pulser, visualization]

!!! warning In order to correctly install the visualization extra, the graphviz package needs to be installed in your system:

```bash
# on Ubuntu
sudo apt install graphviz

# on MacOS
brew install graphviz

# via conda
conda install python-graphviz
```

Citation

If you use Qadence for a publication, we kindly ask you to cite our work using the following BibTex entry:

@misc{qadence2023pasqal,
  url = {https://github.com/pasqal-io/qadence},
  title = {Qadence: {A} {D}igital-analog quantum programming interface.},
  year = {2023}
}

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

qadence-0.9.1.tar.gz (136.8 kB view hashes)

Uploaded Source

Built Distribution

qadence-0.9.1-py3-none-any.whl (176.1 kB view hashes)

Uploaded Python 3

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