{"id":13536058,"url":"https://github.com/softwareQinc/qpp","last_synced_at":"2025-04-02T02:32:10.925Z","repository":{"id":15263476,"uuid":"17992615","full_name":"softwareQinc/qpp","owner":"softwareQinc","description":"Modern C++ quantum computing library","archived":false,"fork":false,"pushed_at":"2025-02-27T21:43:41.000Z","size":287794,"stargazers_count":583,"open_issues_count":3,"forks_count":128,"subscribers_count":34,"default_branch":"main","last_synced_at":"2025-03-31T00:01:39.680Z","etag":null,"topics":["c-plus-plus","cpp","cpp11","cpp17","quantum","quantum-computing","quantum-development-kit","simulator"],"latest_commit_sha":null,"homepage":"https://journals.plos.org/plosone/article?id=10.1371/journal.pone.0208073","language":"C++","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/softwareQinc.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGES.md","contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE.txt","code_of_conduct":"CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2014-03-21T20:00:40.000Z","updated_at":"2025-03-29T16:33:12.000Z","dependencies_parsed_at":"2023-01-11T20:23:04.361Z","dependency_job_id":"62cd1191-9736-400e-af2e-fbc79a1ef80f","html_url":"https://github.com/softwareQinc/qpp","commit_stats":{"total_commits":3064,"total_committers":13,"mean_commits":"235.69230769230768","dds":0.2134464751958225,"last_synced_commit":"914c19a097367b4d1929074b6cb1443d8d3efd16"},"previous_names":["vsoftco/qpp"],"tags_count":48,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/softwareQinc%2Fqpp","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/softwareQinc%2Fqpp/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/softwareQinc%2Fqpp/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/softwareQinc%2Fqpp/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/softwareQinc","download_url":"https://codeload.github.com/softwareQinc/qpp/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":246743854,"owners_count":20826622,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["c-plus-plus","cpp","cpp11","cpp17","quantum","quantum-computing","quantum-development-kit","simulator"],"created_at":"2024-08-01T09:00:34.227Z","updated_at":"2025-04-02T02:32:10.893Z","avatar_url":"https://github.com/softwareQinc.png","language":"C++","readme":"# Quantum++\n\n## Version 5.1 - 1 March 2024\n\n[![GitHub actions](https://github.com/softwareqinc/qpp/actions/workflows/cmake.yml/badge.svg)](https://github.com/softwareQinc/qpp/actions)\n\n---\n\n## About\n\n**Quantum++** is a modern C++ general purpose quantum computing library,\ncomposed solely of template header files. **Quantum++** is written in standard\nC++17 and has very low external dependencies, using only the\n[Eigen 3](https://eigen.tuxfamily.org) linear algebra header-only template\nlibrary and, if available, the [OpenMP](https://www.openmp.org/)\nmultiprocessing library.\n\n**Quantum++** is not restricted to qubit systems or specific quantum\ninformation processing tasks, being capable of simulating arbitrary quantum\nprocesses. The main design factors taken in consideration were the ease of use,\nhigh portability, and high performance. The library's simulation capabilities\nare only restricted by the amount of available physical memory. On a typical\nmachine (Intel i5 8Gb RAM) **Quantum++** can successfully simulate the\nevolution of 25 qubits in a pure state or of 12 qubits in a mixed state\nreasonably fast.\n\nTo report any bugs or ask for additional features/enhancements, please\n[submit an issue](https://github.com/softwareQinc/qpp/issues) with an\nappropriate label.\n\nIf you are interested in contributing to this project, feel free to contact us.\nAlternatively, fork the repository, create a custom branch, add your\ncontribution, then finally create a pull request. If we accept the pull\nrequest, we will merge your custom branch with the latest main/development\nbranch. The latter will eventually be merged into a future release version. To\ncontribute, it is preferable to have a solid knowledge of modern C++\n(preferably C++17 or later), including templates and the standard library, a\nbasic knowledge of quantum computing and linear algebra, and working experience\nwith [Eigen 3](https://eigen.tuxfamily.org).\n\nFor additional [Eigen 3](https://eigen.tuxfamily.org) documentation\nsee \u003chttps://eigen.tuxfamily.org/dox/\u003e. For a simple\n[Eigen 3](https://eigen.tuxfamily.org) quick ASCII reference see\n\u003chttps://eigen.tuxfamily.org/dox/AsciiQuickReference.txt\u003e.\n\nCopyright (c) 2017 - 2024 softwareQ Inc. All rights reserved.\n\n---\n\n## License\n\n[Quantum++](https://github.com/softwareQinc/qpp) is distributed under the MIT\nlicense. Please see the\n[`LICENSE.txt`](https://github.com/softwareQinc/qpp/blob/main/LICENSE.txt)\nfile for more details.\n\n---\n\n## Installation instructions and further documentation\n\nPlease see the installation guide\n[`INSTALL.md`](https://github.com/softwareQinc/qpp/blob/main/INSTALL.md) and\nthe comprehensive [Wiki](https://github.com/softwareQinc/qpp/wiki) for further\ndocumentation and detailed examples.\n\nTo generate the full official API documentation in both LaTeX and HTML formats\nrun\n[`doxygen`](https://www.doxygen.nl) on\nthe [`Doxyfile`](https://github.com/softwareQinc/qpp/blob/main/Doxyfile) file.\nThe tool `dot` from the [`Graphviz`](https://www.graphviz.org) package must be\ninstalled (`sudo apt-get install graphviz` on Ubuntu/Debian Linux,\nor `brew install graphviz` on macOS). Running `doxygen` will generate the\ndocumentation directory `doc` containing both the HTML and LaTeX documentation.\n\nThe HTML documentation file will be accessible by opening `doc/html/index.html`\nwith the browser of your choice. To generate a PDF file of the documentation,\nrun\n\n```shell\nlatexmk -pdf refman.tex\n```\n\nfrom the `doc/latex` directory or compile the file `doc/latex/refman.tex` with\nyour LaTeX compiler. This will create the `doc/latex/refman.pdf` documentation\nfile. Consult your favourite LaTeX manual for how to compile/build LaTeX files\nunder your specific operating system.\n\n---\n\n## Python 3 wrapper\n\n[**pyqpp**](https://github.com/softwareQinc/qpp/blob/main/pyqpp) is a Python 3\nwrapper for **Quantum++**. **pyqpp** requires the same dependencies as\n**Quantum++**, and can be installed using `pip`\n\n```shell\npip install git+https://github.com/softwareQinc/qpp\n```\n\nFor more details, please see\n[pyqpp/README.md](https://github.com/softwareQinc/qpp/blob/main/pyqpp/README.md).\n","funding_links":[],"categories":["Quantum SDKs","Quantum full-stack libraries","Programming language"],"sub_categories":["C++"],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FsoftwareQinc%2Fqpp","html_url":"https://awesome.ecosyste.ms/projects/github.com%2FsoftwareQinc%2Fqpp","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FsoftwareQinc%2Fqpp/lists"}