Overview
qBraid-SDK extension providing support for QIR conversions.
Motivation
This project aims to make QIR
representations accessible via the qBraid-SDK
transpiler, and by doing so, open the
door to language-specific conversions from any and all high-level quantum
languages supported by
qbraid
.
See QIR Alliance: Why do we need it?
Installation
qBraid-QIR requires Python 3.9 or greater, and can be installed with pip as follows:
Optional dependencies
qBraid-QIR offers integrations that require extra (optional) dependencies, which can be installed as follows:
For Cirq to QIR conversions, install the cirq
extra:
For OpenQASM 3 to QIR conversions, install the qasm3
extra:
Install from source
You can also install from source by cloning this repository and running a pip install command in the root directory of the repository:
To include optional dependencies when installing from source, use the same “extras_require” format, e.g.
Check version
You can view the version of qbraid-qir you have installed within a Python shell as follows:
Usage examples
Cirq conversions
OpenQASM 3 conversions
Currently Supported Operations
Add QIR node to qBraid conversion graph
Architecture diagram
qBraid-SDK transpiler hub-and-spokes architecture with qbraid-qir integration (left) mapped to language specific conversion step in QIR abstraction layers (right).
Contributing
- Interested in contributing code, or making a PR? See CONTRIBUTING.md
- For feature requests and bug reports: Submit an issue
- For discussions, and specific questions about qBraid-QIR join our discord community
- For questions that are more suited for a forum, post to
Quantum Computing Stack Exchange
with the
qbraid
tag.
Citation
If you use qBraid-QIR in your research, we kindly request that you cite it appropriately. The BibTeX entry below is aligned with the latest stable release. For the most up-to-date citation details, please refer to CITATION.cff.
Acknowledgements
This project was conceived in cooperation with the Quantum Open Source Foundation (QOSF).