Protocols interface for running experiments using Qadence.
Project description
Qadence-Protocols
Qadence-Protocols is a Python package that provides extra functionality for Qadence.
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 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-Protocols will soon be available on PyPI.
pip install qadence_protocols
Contributing
Before making a contribution, please review our code of conduct.
- Submitting Issues: To submit bug reports or feature requests, please use our issue tracker.
- Developing in qadence: To learn more about how to develop within
qadence
, please refer to contributing guidelines.
Setting up qadence in development mode
We recommend to use the hatch
environment manager to install qadence_protocols
from source:
python -m pip install hatch
# get into a shell with all the dependencies
python -m hatch shell
# run a command within the virtual environment with all the dependencies
python -m hatch run python my_script.py
WARNING
hatch
will not combine nicely with other environment managers such as Conda. If you still want to use Conda,
install it from source using pip
:
# within the Conda environment
python -m pip install -e .
Citation
If you use Qadence-Protocols 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}
}
License
Qadence-Protocols is a free and open source software package, released under the Apache License, Version 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
Built Distribution
Hashes for qadence_protocols-0.1.3-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | eb5dc6b01d310c8763297964b56df49df87819f890afe9682ef85c4af0e7fb9b |
|
MD5 | a917a9701a13652e3f7fcb23e2a06909 |
|
BLAKE2b-256 | 9d42e14f1ed396b4473d5785b7286eebebc85542b12c179a5d5637a44f0ce030 |