htstabilizer


Namehtstabilizer JSON
Version 1.0.0 PyPI version JSON
download
home_page
SummaryHardware-tailored quantum Clifford circuits for stabilizer state preparation or readout as well as mutually unbiased bases in order to perform efficient full-state tomography on small qubit systems.
upload_time2024-02-18 09:34:49
maintainer
docs_urlNone
authorMc-Zen
requires_python>=3.10
licenseMIT License Copyright (c) 2023 Mc-Zen Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
keywords quantum circuits clifford hardware-tailored full-state tomography stabilizer quantum state preparation quantum readout circuits mutually unbiased bases short circuits full state tomography circuit optimization
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            # Hardware-Tailored Stabilizer Circuits Python library

<p align="center">
  <a href="https://github.com/Mc-Zen/quill/blob/main/LICENSE">
    <img alt="MIT License" src="https://img.shields.io/badge/license-MIT-blue"/>
  </a>
  <a href="https://github.com/Mc-Zen/htstabilizer/actions/workflows/run-tests.yml">
    <img alt="MIT License" src="https://github.com/Mc-Zen/htstabilizer/actions/workflows/run-tests.yml/badge.svg"/>
  </a>
</p>




This library provides 
- *hardware-tailored* quantum Clifford circuits for **stabilizer state preparation** or **measurement** as well as 
- mutually unbiased bases in order to perform more efficient **full-state tomography** on small qubit systems. 

Hereby, two-qubit gate count is minimized. All delivered circuits are designed to fully comply to a desired hardware connectivity, **avoiding additional swap operations altogether**. 


## Installation

You can install this package from [PyPi][pypi-page] via 
```
pip install htstabilizer
```
or you can clone the [repository][repository] and include it into your project. 

## Tailored to your hardware connectivity

A total of 19 connectivities are currently supported, ranging from 2 to 6 qubits. For each supported number of qubits, circuits for full connectivity and line connectivity are available. Additionally, other connectivities that occur in current quantum chips or which are subgraphs of existing hardware are supported. 

All currently available connectivities are shown below. 

![][hardware-connectivities]

<!-- ### 2 qubits
![][2-qubit-con]

### 3 qubits
![][3-qubit-con]

### 4 qubits
![][4-qubit-con]

### 5 qubits
![][5-qubit-con]

### 6 qubits
![][6-qubit-con] -->

## Usage

```py
from htstabilizer.stabilizer_circuits import *

pqc = get_preparation_circuit(Stabilizer(["XZZ", "ZXI", "ZIX"]), "linear")

rqc = get_readout_circuit(Stabilizer(["XZZ", "ZXI", "ZIX"]), "linear")

qc = QuantumCircuit(5)
# ... build Clifford circuit
compressed_qc = compress_preparation_circuit(qc, "T")
```


## Examples

View examples for exploring the functionality:

- [Compressing Clifford preparation circuits][example-compress]
- [Generating readout circuits][example-readout]
- [Perform state tomography][example-tomography]


## License
[MIT License][license]

[pypi-page]: https://pypi.org/project/htstabilizer/
[repository]: https://github.com/Mc-Zen/htstabilizer
[license]: https://github.com/Mc-Zen/htstabilizer/blob/master/LICENSE.txt

[hardware-connectivities]: https://github.com/Mc-Zen/htstabilizer/raw/master/docs/images/Hardware_Connectivities.svg

[example-compress]: https://github.com/Mc-Zen/htstabilizer/blob/master/examples/compress_preparation_circuit.py
[example-readout]: https://github.com/Mc-Zen/htstabilizer/blob/master/examples/readout_circuit.py
[example-tomography]: https://github.com/Mc-Zen/htstabilizer/blob/master/examples/state_tomography.py



            

Raw data

            {
    "_id": null,
    "home_page": "",
    "name": "htstabilizer",
    "maintainer": "",
    "docs_url": null,
    "requires_python": ">=3.10",
    "maintainer_email": "",
    "keywords": "quantum circuits,clifford,hardware-tailored,full-state tomography,stabilizer,quantum state preparation,quantum readout circuits,mutually unbiased bases,short circuits,full state tomography,circuit optimization",
    "author": "Mc-Zen",
    "author_email": "",
    "download_url": "https://files.pythonhosted.org/packages/df/f6/78be61c876ce37374936de4419735e95ff952e55d7a9e5dce0696d22d541/htstabilizer-1.0.0.tar.gz",
    "platform": null,
    "description": "# Hardware-Tailored Stabilizer Circuits Python library\n\n<p align=\"center\">\n  <a href=\"https://github.com/Mc-Zen/quill/blob/main/LICENSE\">\n    <img alt=\"MIT License\" src=\"https://img.shields.io/badge/license-MIT-blue\"/>\n  </a>\n  <a href=\"https://github.com/Mc-Zen/htstabilizer/actions/workflows/run-tests.yml\">\n    <img alt=\"MIT License\" src=\"https://github.com/Mc-Zen/htstabilizer/actions/workflows/run-tests.yml/badge.svg\"/>\n  </a>\n</p>\n\n\n\n\nThis library provides \n- *hardware-tailored* quantum Clifford circuits for **stabilizer state preparation** or **measurement** as well as \n- mutually unbiased bases in order to perform more efficient **full-state tomography** on small qubit systems. \n\nHereby, two-qubit gate count is minimized. All delivered circuits are designed to fully comply to a desired hardware connectivity, **avoiding additional swap operations altogether**. \n\n\n## Installation\n\nYou can install this package from [PyPi][pypi-page] via \n```\npip install htstabilizer\n```\nor you can clone the [repository][repository] and include it into your project. \n\n## Tailored to your hardware connectivity\n\nA total of 19 connectivities are currently supported, ranging from 2 to 6 qubits. For each supported number of qubits, circuits for full connectivity and line connectivity are available. Additionally, other connectivities that occur in current quantum chips or which are subgraphs of existing hardware are supported. \n\nAll currently available connectivities are shown below. \n\n![][hardware-connectivities]\n\n<!-- ### 2 qubits\n![][2-qubit-con]\n\n### 3 qubits\n![][3-qubit-con]\n\n### 4 qubits\n![][4-qubit-con]\n\n### 5 qubits\n![][5-qubit-con]\n\n### 6 qubits\n![][6-qubit-con] -->\n\n## Usage\n\n```py\nfrom htstabilizer.stabilizer_circuits import *\n\npqc = get_preparation_circuit(Stabilizer([\"XZZ\", \"ZXI\", \"ZIX\"]), \"linear\")\n\nrqc = get_readout_circuit(Stabilizer([\"XZZ\", \"ZXI\", \"ZIX\"]), \"linear\")\n\nqc = QuantumCircuit(5)\n# ... build Clifford circuit\ncompressed_qc = compress_preparation_circuit(qc, \"T\")\n```\n\n\n## Examples\n\nView examples for exploring the functionality:\n\n- [Compressing Clifford preparation circuits][example-compress]\n- [Generating readout circuits][example-readout]\n- [Perform state tomography][example-tomography]\n\n\n## License\n[MIT License][license]\n\n[pypi-page]: https://pypi.org/project/htstabilizer/\n[repository]: https://github.com/Mc-Zen/htstabilizer\n[license]: https://github.com/Mc-Zen/htstabilizer/blob/master/LICENSE.txt\n\n[hardware-connectivities]: https://github.com/Mc-Zen/htstabilizer/raw/master/docs/images/Hardware_Connectivities.svg\n\n[example-compress]: https://github.com/Mc-Zen/htstabilizer/blob/master/examples/compress_preparation_circuit.py\n[example-readout]: https://github.com/Mc-Zen/htstabilizer/blob/master/examples/readout_circuit.py\n[example-tomography]: https://github.com/Mc-Zen/htstabilizer/blob/master/examples/state_tomography.py\n\n\n",
    "bugtrack_url": null,
    "license": "MIT License  Copyright (c) 2023 Mc-Zen  Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the \"Software\"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:  The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.  THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. ",
    "summary": "Hardware-tailored quantum Clifford circuits for stabilizer state preparation or readout as well as mutually unbiased bases in order to perform efficient full-state tomography on small qubit systems.",
    "version": "1.0.0",
    "project_urls": {
        "Bug Tracker": "https://github.com/Mc-Zen/htstabilizer/issues",
        "Homepage": "https://github.com/Mc-Zen/htstabilizer"
    },
    "split_keywords": [
        "quantum circuits",
        "clifford",
        "hardware-tailored",
        "full-state tomography",
        "stabilizer",
        "quantum state preparation",
        "quantum readout circuits",
        "mutually unbiased bases",
        "short circuits",
        "full state tomography",
        "circuit optimization"
    ],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "23e34a538d6c9324693f958a370607b13eb432837add4cc4716cdfa86342e392",
                "md5": "4adbeb18f43b9caee3277a16a300a181",
                "sha256": "ad4b2d44c41c24d2df0cc52c175e4c515271e769d6f75e52e26882d78a54b03d"
            },
            "downloads": -1,
            "filename": "htstabilizer-1.0.0-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "4adbeb18f43b9caee3277a16a300a181",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": ">=3.10",
            "size": 189087,
            "upload_time": "2024-02-18T09:34:47",
            "upload_time_iso_8601": "2024-02-18T09:34:47.832493Z",
            "url": "https://files.pythonhosted.org/packages/23/e3/4a538d6c9324693f958a370607b13eb432837add4cc4716cdfa86342e392/htstabilizer-1.0.0-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "dff678be61c876ce37374936de4419735e95ff952e55d7a9e5dce0696d22d541",
                "md5": "8cda52dcdfc39b0c7fcc7d415b7328fa",
                "sha256": "8858823290c961a12628b17836a8bcb76bc3be160017c585ef618bd49c744906"
            },
            "downloads": -1,
            "filename": "htstabilizer-1.0.0.tar.gz",
            "has_sig": false,
            "md5_digest": "8cda52dcdfc39b0c7fcc7d415b7328fa",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.10",
            "size": 182363,
            "upload_time": "2024-02-18T09:34:49",
            "upload_time_iso_8601": "2024-02-18T09:34:49.172607Z",
            "url": "https://files.pythonhosted.org/packages/df/f6/78be61c876ce37374936de4419735e95ff952e55d7a9e5dce0696d22d541/htstabilizer-1.0.0.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2024-02-18 09:34:49",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "Mc-Zen",
    "github_project": "htstabilizer",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": true,
    "lcname": "htstabilizer"
}
        
Elapsed time: 0.19328s