toqito


Nametoqito JSON
Version 1.1.0 PyPI version JSON
download
home_pagehttps://vprusso.github.io/toqito/
SummaryPython tools for the study of quantum information.
upload_time2024-10-11 19:14:05
maintainerVincent Russo
docs_urlNone
authorVincent Russo
requires_python<4,>=3.10
licenseNone
keywords quantum information quantum computing nonlocal games
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage
            [![build status](https://github.com/vprusso/toqito/actions/workflows/build-test-actions.yml/badge.svg?style=plastic)](https://github.com/vprusso/toqito/actions/workflows/build-test-actions.yml)
[![doc status](https://readthedocs.org/projects/toqito/badge/?version=latest&style=plastic)](https://toqito.readthedocs.io/en/latest/)
[![codecov](https://codecov.io/gh/vprusso/toqito/branch/master/graph/badge.svg?style=plastic)](https://codecov.io/gh/vprusso/toqito)
[![DOI](https://zenodo.org/badge/DOI/10.5281/zenodo.4743211.svg)](https://doi.org/10.5281/zenodo.4743211)
[![Downloads](https://static.pepy.tech/personalized-badge/toqito?style=platic&period=total&units=none&left_color=black&right_color=brightgreen&left_text=Downloads)](https://pepy.tech/project/toqito)
[![Unitary Fund](https://img.shields.io/badge/Supported%20By-UNITARY%20FUND-brightgreen.svg?style=plastic)](http://unitary.fund)


<p align="center">
 <picture>
   <source media="(prefers-color-scheme: dark)" srcset="https://github.com/vprusso/toqito/raw/cfb62c4a5ce04b782f64229e7acd2b1c97f09801/docs/figures/logo.svg" width="60%">
   <img src="https://github.com/vprusso/toqito/raw/cfb62c4a5ce04b782f64229e7acd2b1c97f09801/docs/figures/logo.svg" width="60%">
 </picture>
 </p>


# toqito: Theory of Quantum Information Toolkit

The `toqito` package is an open-source Python library for studying various
objects in quantum information, namely, states, channels, and measurements.

<p align="center">
  <a href="https://toqito.readthedocs.io/en/latest/">
  <img width=30% src="https://img.shields.io/badge/documentation-blue?style=for-the-badge&logo=read%20the%20docs" alt="Documentation" />
  </a>
</p>

Specifically, `toqito` focuses on providing numerical tools to study problems
about entanglement theory, nonlocal games, matrix analysis, and other
aspects of quantum information that are often associated with computer science.

`toqito` aims to fill the needs of quantum information researchers who want
numerical and computational tools for manipulating quantum states,
measurements, and channels. It can also be used as a tool to enhance the
experience of students and instructors in classes about quantum
information.


## Getting Started

toqito is available via [PyPi](https://pypi.org/project/toqito/) for Linux, and macOS, with support for Python 3.10 to 3.12.

```console
(venv) $ pip install toqito
```

The following code gives an example on the usage:

```python
# Calculate the classical and quantum value of the CHSH game.
import numpy as np
from toqito.nonlocal_games.xor_game import XORGame

# The probability matrix.
prob_mat = np.array([[1/4, 1/4], [1/4, 1/4]])

# The predicate matrix.
pred_mat = np.array([[0, 0], [0, 1]])

# Define CHSH game from matrices.
chsh = XORGame(prob_mat, pred_mat)

chsh.classical_value()
# 0.75
chsh.quantum_value()
# 0.8535533

```

**Detailed documentation on all available methods, options, and input formats is available at [ReadTheDocs](https://toqito.readthedocs.io/en/latest/).**

## Using

Full documentation along with specific examples and tutorials are provided here:
[https://toqito.readthedocs.io/](https://toqito.readthedocs.io/). 

More information can also be found on the following
[toqito homepage](https://vprusso.github.io/toqito/).

Chat with us in our `toqito` channel on [Discord](http://discord.unitary.fund/). 

## Testing

The `pytest` module is used for testing. To run the suite of tests for `toqito`,
run the following command in the root directory of this project.

```
pytest --cov-report term-missing --cov=toqito
```

## Citing

You can cite `toqito` using the following DOI:
10.5281/zenodo.4743211


If you are using the `toqito` software package in research work, please include
an explicit mention of `toqito` in your publication. Something along the lines
of:

```
To solve problem "X" we used `toqito`; a package for studying certain
aspects of quantum information.
```

A BibTeX entry that you can use to cite `toqito` is provided here:

```bib
@misc{toqito,
   author       = {Vincent Russo},
   title        = {toqito: A {P}ython toolkit for quantum information, version 1.0.0},
   howpublished = {\url{https://github.com/vprusso/toqito}},
   month        = May,
   year         = 2021,
   doi          = {10.5281/zenodo.4743211}
 }
```

## References

The `toqito` project has been used or referenced in the following works:

- [![a](https://img.shields.io/static/v1?label=arXiv&message=2406.13430&color=inactive&style=flat-square)](https://arxiv.org/abs/2406.13430) Bandyopadhyay, Somshubhro and Russo, Vincent
"Distinguishing a maximally entangled basis using LOCC and shared entanglement", (2024).

- [![a](https://img.shields.io/static/v1?label=arXiv&message=2307.2551&color=inactive&style=flat-square)](https://arxiv.org/abs/2307.02551) Tavakoli, Armin and Pozas-Kerstjens, Alejandro and Brown, Peter and Araújo, Mateus
"Semidefinite programming relaxations for quantum correlations", (2023).

- [![a](https://img.shields.io/static/v1?label=arXiv&message=2311.17047&color=inactive&style=flat-square)](https://arxiv.org/abs/2311.17047) Johnston, Nathaniel and Russo, Vincent and Sikora, Jamie
"Tight bounds for antidistinguishability and circulant sets of pure quantum states", (2023).

- [![a](https://img.shields.io/static/v1?label=arXiv&message=2308.15579&color=inactive&style=flat-square)](https://arxiv.org/abs/2308.15579) Pelofske, Elijah and Bartschi, Andreas and Eidenbenz, Stephan and Garcia, Bryan and Kiefer, Boris
"Probing Quantum Telecloning on Superconducting Quantum Processors", (2023).
 
- [![a](https://img.shields.io/static/v1?label=arXiv&message=2303.07911&color=inactive&style=flat-square)](https://arxiv.org/abs/2303.07911) Philip, Aby and Rethinasamy, Soorya and Russo, Vincent and Wilde, Mark. 
"Quantum Steering Algorithm for Estimating Fidelity of Separability.", Quantum 8, 1366, (2023).

- [![a](https://img.shields.io/static/v1?label=arXiv&message=2302.09401&color=inactive&style=flat-square)](https://arxiv.org/abs/2302.09401) Miszczak, Jarosław Adam. 
"Symbolic quantum programming for supporting applications of quantum computing technologies.", (2023).

- [![a](https://img.shields.io/static/v1?label=arXiv&message=2306.09444&color=inactive&style=flat-square)](https://arxiv.org/abs/2306.09444) Casalé, Balthazar and Di Molfetta, Giuseppe and Anthoine, Sandrine and Kadri, Hachem. 
"Large-Scale Quantum Separability Through a Reproducible Machine Learning Lens.", (2023).

- [![a](https://img.shields.io/static/v1?label=arXiv&message=2206.08313&color=inactive&style=flat-square)](https://arxiv.org/abs/2206.08313) Russo, Vincent and Sikora, Jamie "Inner products of pure states and their antidistinguishability", Physical Review A, Vol. 107, No. 3, (2023).

## Contributing

All contributions, bug reports, bug fixes, documentation improvements,
enhancements, and ideas are welcome.

A detailed overview of how to contribute can be found in the
[contributing guide](https://toqito.readthedocs.io/en/latest/getting_started.html#contributing).


## License

[MIT License](http://opensource.org/licenses/mit-license.php>)


            

Raw data

            {
    "_id": null,
    "home_page": "https://vprusso.github.io/toqito/",
    "name": "toqito",
    "maintainer": "Vincent Russo",
    "docs_url": null,
    "requires_python": "<4,>=3.10",
    "maintainer_email": "vincentrusso1@gmail.com>, Purva Thakre <purva.athakre@gmail.com",
    "keywords": "quantum information, quantum computing, nonlocal games",
    "author": "Vincent Russo",
    "author_email": "vincentrusso1@gmail.com",
    "download_url": "https://files.pythonhosted.org/packages/6c/e3/a82d1c401b840e99594bd2143adb68d7edbba7e1581da143f11f5a598905/toqito-1.1.0.tar.gz",
    "platform": null,
    "description": "[![build status](https://github.com/vprusso/toqito/actions/workflows/build-test-actions.yml/badge.svg?style=plastic)](https://github.com/vprusso/toqito/actions/workflows/build-test-actions.yml)\n[![doc status](https://readthedocs.org/projects/toqito/badge/?version=latest&style=plastic)](https://toqito.readthedocs.io/en/latest/)\n[![codecov](https://codecov.io/gh/vprusso/toqito/branch/master/graph/badge.svg?style=plastic)](https://codecov.io/gh/vprusso/toqito)\n[![DOI](https://zenodo.org/badge/DOI/10.5281/zenodo.4743211.svg)](https://doi.org/10.5281/zenodo.4743211)\n[![Downloads](https://static.pepy.tech/personalized-badge/toqito?style=platic&period=total&units=none&left_color=black&right_color=brightgreen&left_text=Downloads)](https://pepy.tech/project/toqito)\n[![Unitary Fund](https://img.shields.io/badge/Supported%20By-UNITARY%20FUND-brightgreen.svg?style=plastic)](http://unitary.fund)\n\n\n<p align=\"center\">\n <picture>\n   <source media=\"(prefers-color-scheme: dark)\" srcset=\"https://github.com/vprusso/toqito/raw/cfb62c4a5ce04b782f64229e7acd2b1c97f09801/docs/figures/logo.svg\" width=\"60%\">\n   <img src=\"https://github.com/vprusso/toqito/raw/cfb62c4a5ce04b782f64229e7acd2b1c97f09801/docs/figures/logo.svg\" width=\"60%\">\n </picture>\n </p>\n\n\n# toqito: Theory of Quantum Information Toolkit\n\nThe `toqito` package is an open-source Python library for studying various\nobjects in quantum information, namely, states, channels, and measurements.\n\n<p align=\"center\">\n  <a href=\"https://toqito.readthedocs.io/en/latest/\">\n  <img width=30% src=\"https://img.shields.io/badge/documentation-blue?style=for-the-badge&logo=read%20the%20docs\" alt=\"Documentation\" />\n  </a>\n</p>\n\nSpecifically, `toqito` focuses on providing numerical tools to study problems\nabout entanglement theory, nonlocal games, matrix analysis, and other\naspects of quantum information that are often associated with computer science.\n\n`toqito` aims to fill the needs of quantum information researchers who want\nnumerical and computational tools for manipulating quantum states,\nmeasurements, and channels. It can also be used as a tool to enhance the\nexperience of students and instructors in classes about quantum\ninformation.\n\n\n## Getting Started\n\ntoqito is available via [PyPi](https://pypi.org/project/toqito/) for Linux, and macOS, with support for Python 3.10 to 3.12.\n\n```console\n(venv) $ pip install toqito\n```\n\nThe following code gives an example on the usage:\n\n```python\n# Calculate the classical and quantum value of the CHSH game.\nimport numpy as np\nfrom toqito.nonlocal_games.xor_game import XORGame\n\n# The probability matrix.\nprob_mat = np.array([[1/4, 1/4], [1/4, 1/4]])\n\n# The predicate matrix.\npred_mat = np.array([[0, 0], [0, 1]])\n\n# Define CHSH game from matrices.\nchsh = XORGame(prob_mat, pred_mat)\n\nchsh.classical_value()\n# 0.75\nchsh.quantum_value()\n# 0.8535533\n\n```\n\n**Detailed documentation on all available methods, options, and input formats is available at [ReadTheDocs](https://toqito.readthedocs.io/en/latest/).**\n\n## Using\n\nFull documentation along with specific examples and tutorials are provided here:\n[https://toqito.readthedocs.io/](https://toqito.readthedocs.io/). \n\nMore information can also be found on the following\n[toqito homepage](https://vprusso.github.io/toqito/).\n\nChat with us in our `toqito` channel on [Discord](http://discord.unitary.fund/). \n\n## Testing\n\nThe `pytest` module is used for testing. To run the suite of tests for `toqito`,\nrun the following command in the root directory of this project.\n\n```\npytest --cov-report term-missing --cov=toqito\n```\n\n## Citing\n\nYou can cite `toqito` using the following DOI:\n10.5281/zenodo.4743211\n\n\nIf you are using the `toqito` software package in research work, please include\nan explicit mention of `toqito` in your publication. Something along the lines\nof:\n\n```\nTo solve problem \"X\" we used `toqito`; a package for studying certain\naspects of quantum information.\n```\n\nA BibTeX entry that you can use to cite `toqito` is provided here:\n\n```bib\n@misc{toqito,\n   author       = {Vincent Russo},\n   title        = {toqito: A {P}ython toolkit for quantum information, version 1.0.0},\n   howpublished = {\\url{https://github.com/vprusso/toqito}},\n   month        = May,\n   year         = 2021,\n   doi          = {10.5281/zenodo.4743211}\n }\n```\n\n## References\n\nThe `toqito` project has been used or referenced in the following works:\n\n- [![a](https://img.shields.io/static/v1?label=arXiv&message=2406.13430&color=inactive&style=flat-square)](https://arxiv.org/abs/2406.13430) Bandyopadhyay, Somshubhro and Russo, Vincent\n\"Distinguishing a maximally entangled basis using LOCC and shared entanglement\", (2024).\n\n- [![a](https://img.shields.io/static/v1?label=arXiv&message=2307.2551&color=inactive&style=flat-square)](https://arxiv.org/abs/2307.02551) Tavakoli, Armin and Pozas-Kerstjens, Alejandro and Brown, Peter and Ara\u00fajo, Mateus\n\"Semidefinite programming relaxations for quantum correlations\", (2023).\n\n- [![a](https://img.shields.io/static/v1?label=arXiv&message=2311.17047&color=inactive&style=flat-square)](https://arxiv.org/abs/2311.17047) Johnston, Nathaniel and Russo, Vincent and Sikora, Jamie\n\"Tight bounds for antidistinguishability and circulant sets of pure quantum states\", (2023).\n\n- [![a](https://img.shields.io/static/v1?label=arXiv&message=2308.15579&color=inactive&style=flat-square)](https://arxiv.org/abs/2308.15579) Pelofske, Elijah and Bartschi, Andreas and Eidenbenz, Stephan and Garcia, Bryan and Kiefer, Boris\n\"Probing Quantum Telecloning on Superconducting Quantum Processors\", (2023).\n \n- [![a](https://img.shields.io/static/v1?label=arXiv&message=2303.07911&color=inactive&style=flat-square)](https://arxiv.org/abs/2303.07911) Philip, Aby and Rethinasamy, Soorya and Russo, Vincent and Wilde, Mark. \n\"Quantum Steering Algorithm for Estimating Fidelity of Separability.\", Quantum 8, 1366, (2023).\n\n- [![a](https://img.shields.io/static/v1?label=arXiv&message=2302.09401&color=inactive&style=flat-square)](https://arxiv.org/abs/2302.09401) Miszczak, Jaros\u0142aw Adam. \n\"Symbolic quantum programming for supporting applications of quantum computing technologies.\", (2023).\n\n- [![a](https://img.shields.io/static/v1?label=arXiv&message=2306.09444&color=inactive&style=flat-square)](https://arxiv.org/abs/2306.09444) Casal\u00e9, Balthazar and Di Molfetta, Giuseppe and Anthoine, Sandrine and Kadri, Hachem. \n\"Large-Scale Quantum Separability Through a Reproducible Machine Learning Lens.\", (2023).\n\n- [![a](https://img.shields.io/static/v1?label=arXiv&message=2206.08313&color=inactive&style=flat-square)](https://arxiv.org/abs/2206.08313) Russo, Vincent and Sikora, Jamie \"Inner products of pure states and their antidistinguishability\", Physical Review A, Vol. 107, No. 3, (2023).\n\n## Contributing\n\nAll contributions, bug reports, bug fixes, documentation improvements,\nenhancements, and ideas are welcome.\n\nA detailed overview of how to contribute can be found in the\n[contributing guide](https://toqito.readthedocs.io/en/latest/getting_started.html#contributing).\n\n\n## License\n\n[MIT License](http://opensource.org/licenses/mit-license.php>)\n\n",
    "bugtrack_url": null,
    "license": null,
    "summary": "Python tools for the study of quantum information.",
    "version": "1.1.0",
    "project_urls": {
        "Homepage": "https://vprusso.github.io/toqito/",
        "Repository": "https://github.com/vprusso/toqito"
    },
    "split_keywords": [
        "quantum information",
        " quantum computing",
        " nonlocal games"
    ],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "9e8fa9af2690679ef5254112aafbb4f521568f955985036573c323f08b7076d6",
                "md5": "c626ed2b9ca2b29b78220f46118a4a59",
                "sha256": "bece714022fb47095aa9e970faf10dc34de0d041e086edf05f77462d45b69360"
            },
            "downloads": -1,
            "filename": "toqito-1.1.0-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "c626ed2b9ca2b29b78220f46118a4a59",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": "<4,>=3.10",
            "size": 367791,
            "upload_time": "2024-10-11T19:14:03",
            "upload_time_iso_8601": "2024-10-11T19:14:03.510822Z",
            "url": "https://files.pythonhosted.org/packages/9e/8f/a9af2690679ef5254112aafbb4f521568f955985036573c323f08b7076d6/toqito-1.1.0-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "6ce3a82d1c401b840e99594bd2143adb68d7edbba7e1581da143f11f5a598905",
                "md5": "27cb374fe9f50ef92584c1f70c862bb0",
                "sha256": "6a1121f1d086ed45b62ee96328f5af03d4ceae04028e73f4164dbb6f29540787"
            },
            "downloads": -1,
            "filename": "toqito-1.1.0.tar.gz",
            "has_sig": false,
            "md5_digest": "27cb374fe9f50ef92584c1f70c862bb0",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": "<4,>=3.10",
            "size": 211395,
            "upload_time": "2024-10-11T19:14:05",
            "upload_time_iso_8601": "2024-10-11T19:14:05.324128Z",
            "url": "https://files.pythonhosted.org/packages/6c/e3/a82d1c401b840e99594bd2143adb68d7edbba7e1581da143f11f5a598905/toqito-1.1.0.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2024-10-11 19:14:05",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "vprusso",
    "github_project": "toqito",
    "travis_ci": false,
    "coveralls": true,
    "github_actions": true,
    "lcname": "toqito"
}
        
Elapsed time: 1.45960s