Python module for interfacing with the CQC t|ket> library of quantum software
Project description
pytket
is a python module for interfacing with CQC t|ket>, a set of quantum programming tools. We currently support circuits and device architectures from Google Cirq, IBM Qiskit, Pyzx, ProjectQ, Rigetti pyQuil, AQT, Honeywell and Microsoft QDK, allowing the t|ket> tools to be used in conjunction with projects on these platforms.
Getting Started
pytket
is available for python3.6
or higher, on Linux, MacOS and Windows.
To install, ensure that you have pip
version 19 or above, and run
pip install pytket
Note: attempting to install from source will not set up the required binaries for the t|ket> compiler, so we recommend the PyPI installation.
See the Getting Started page for a quick introduction to using pytket
.
Documentation can be found at cqcl.github.io/pytket
To get more in depth on features, see the examples.
Interfaces
To use pytket
in conjunction with other platforms you must download an additional separate module for each.
This can be done from pip
, or from source, as the binaries are included with the core pytket
package.
For each subpackage:
- Qiskit:
pip install pytket-qiskit
- Cirq:
pip install pytket-cirq
- PyQuil:
pip install pytket-pyquil
- ProjectQ:
pip install pytket-projectq
- PyZX:
pip install pytket-pyzx
- AQT:
pip install pytket-aqt
- Honeywell:
pip install pytket-honeywell
- Q#:
pip install pytket-qsharp
A command-line interface tket
is also included in this repo, enabling basic compilation and running of circuits on any installed backends. Type tket -h
for help.
LICENCE
Copyright 2019-2020 Cambridge Quantum Computing
Licensed under a Non-Commercial Use Software Licence (the "Licence"); you may not use this product except in compliance with the Licence. You may obtain a copy of the Licence in the LICENCE file accompanying these documents or view them here.
Unless required by applicable law or agreed to in writing, software distributed under the Licence is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the Licence for the specific language governing permissions and limitations under the Licence, but note it is strictly for non-commercial use.
How To Cite
If you wish to cite tket in any academic publications, we generally recommend citing our software overview paper for most cases.
If your work is on the topic of specific compilation tasks, it may be more appropriate to cite one of our other papers:
- "On the qubit routing problem" for qubit placement (aka allocation, mapping) and routing (aka swap network insertion, connectivity solving).
- "Phase Gadget Synthesis for Shallow Circuits" for representing exponentiated Pauli operators in the ZX calculus and their circuit decompositions.
- "A Generic Compilation Strategy for the Unitary Coupled Cluster Ansatz" for sequencing of terms in Trotterisation and Pauli diagonalisation.
We are also keen for others to benchmark their compilation techniques against us. We recommend checking our benchmark repository for examples on how to run basic benchmarks with the latest version of pytket
. Please list the release version of pytket
with any benchmarks you give, and feel free to get in touch for any assistance needed in setting up fair and representative tests.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distributions
Built Distributions
File details
Details for the file pytket-0.6.0-cp38-cp38-win_amd64.whl
.
File metadata
- Download URL: pytket-0.6.0-cp38-cp38-win_amd64.whl
- Upload date:
- Size: 3.5 MB
- Tags: CPython 3.8, Windows x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.22.0 setuptools/42.0.2.post20191203 requests-toolbelt/0.9.1 tqdm/4.42.1 CPython/3.7.4
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 2bbdf9a7990108b5101f579a173c3b935e2076a01031e5208d440b4e1bcffff3 |
|
MD5 | 594e73850b7fd10138a1511940f105b2 |
|
BLAKE2b-256 | 7d185a58354f34c55015f37ccfb33df3ea85a4fd309d1c902cb37aed8e6b81e8 |
File details
Details for the file pytket-0.6.0-cp38-cp38-manylinux2014_x86_64.whl
.
File metadata
- Download URL: pytket-0.6.0-cp38-cp38-manylinux2014_x86_64.whl
- Upload date:
- Size: 4.8 MB
- Tags: CPython 3.8
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.22.0 setuptools/42.0.2.post20191203 requests-toolbelt/0.9.1 tqdm/4.42.1 CPython/3.7.4
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 0f21efaf83df80878aac74a3259c51c65d4d74e473f0f00f7aa10ae0e7785f45 |
|
MD5 | 3d41c81fa4e4ec374e779a46c4092772 |
|
BLAKE2b-256 | f321a595d3977efb36684a0ecf895c25f4e2e9f7724a8cd737a562409f742b2b |
File details
Details for the file pytket-0.6.0-cp38-cp38-macosx_10_14_x86_64.whl
.
File metadata
- Download URL: pytket-0.6.0-cp38-cp38-macosx_10_14_x86_64.whl
- Upload date:
- Size: 4.5 MB
- Tags: CPython 3.8, macOS 10.14+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.22.0 setuptools/42.0.2.post20191203 requests-toolbelt/0.9.1 tqdm/4.42.1 CPython/3.7.4
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | e159b398c321b82883bd45c19c616eff48849f1ffba6a5d3eac726a12608342b |
|
MD5 | 372a4801fa67a396e8e68b10b3a5dc57 |
|
BLAKE2b-256 | a1eef322149976aa62119090c161a822ea78a927e5950d4acfbb2125f312a6ec |
File details
Details for the file pytket-0.6.0-cp37-cp37m-win_amd64.whl
.
File metadata
- Download URL: pytket-0.6.0-cp37-cp37m-win_amd64.whl
- Upload date:
- Size: 3.5 MB
- Tags: CPython 3.7m, Windows x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.22.0 setuptools/42.0.2.post20191203 requests-toolbelt/0.9.1 tqdm/4.42.1 CPython/3.7.4
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | e38d8d5c5d69d6cb0db6afa8a740d81f6f598820aa1ba7edb6bdf461f85e0090 |
|
MD5 | 95b432c6cb7ec276b849477ee5f485ee |
|
BLAKE2b-256 | 06eb93ff4cc936f1e6cb7079855927be12c97c08020d56cf4a8c5216b3f56ed0 |
File details
Details for the file pytket-0.6.0-cp37-cp37m-manylinux2014_x86_64.whl
.
File metadata
- Download URL: pytket-0.6.0-cp37-cp37m-manylinux2014_x86_64.whl
- Upload date:
- Size: 4.8 MB
- Tags: CPython 3.7m
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.22.0 setuptools/42.0.2.post20191203 requests-toolbelt/0.9.1 tqdm/4.42.1 CPython/3.7.4
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 8ce47d1a1c13f0a6faf5d82af12bcde2b514fa1dac9b350f526fa1bb061eda29 |
|
MD5 | 0a579c0bb3d3837536ede14f2502a19c |
|
BLAKE2b-256 | 3fc52b1b53e1b2442fcad1184b8a88d150611d5b5f2405d5677856d1c7da2f9a |
File details
Details for the file pytket-0.6.0-cp37-cp37m-macosx_10_14_x86_64.whl
.
File metadata
- Download URL: pytket-0.6.0-cp37-cp37m-macosx_10_14_x86_64.whl
- Upload date:
- Size: 4.4 MB
- Tags: CPython 3.7m, macOS 10.14+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.22.0 setuptools/42.0.2.post20191203 requests-toolbelt/0.9.1 tqdm/4.42.1 CPython/3.7.4
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 535d0d97c0f8f66750353cd7e2ceefbb836a91fc54bb310f79660a4e9e6bf99a |
|
MD5 | 8f976f905f52177c90a7e2a24569d0c9 |
|
BLAKE2b-256 | 6bc9207d2ffd2c05aa5a26cc88f218ab92aa054173af5dc4a3ea45485cff7c09 |
File details
Details for the file pytket-0.6.0-cp36-cp36m-win_amd64.whl
.
File metadata
- Download URL: pytket-0.6.0-cp36-cp36m-win_amd64.whl
- Upload date:
- Size: 3.5 MB
- Tags: CPython 3.6m, Windows x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.22.0 setuptools/42.0.2.post20191203 requests-toolbelt/0.9.1 tqdm/4.42.1 CPython/3.7.4
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | f6a46dff242470ff7e05b7b03a347b7ffe74a33b457d40f0f4afad1449470db8 |
|
MD5 | 4cf2243a9fc352637fe74a55d7bf092f |
|
BLAKE2b-256 | 9330d812a96573d7681c6e211712eeca01109d09560cfb0727e3514e045b97e2 |
File details
Details for the file pytket-0.6.0-cp36-cp36m-manylinux2014_x86_64.whl
.
File metadata
- Download URL: pytket-0.6.0-cp36-cp36m-manylinux2014_x86_64.whl
- Upload date:
- Size: 4.8 MB
- Tags: CPython 3.6m
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.22.0 setuptools/42.0.2.post20191203 requests-toolbelt/0.9.1 tqdm/4.42.1 CPython/3.7.4
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | c9d8fc84e7533c167184d088df915ebbf51e3a8c812957ccc2aec52bd9a26f95 |
|
MD5 | 9cb1961e5e577b61ed274a9347647d68 |
|
BLAKE2b-256 | af325150fb2c4a05edd0a9257d6bee0ca347883f80e715a3ed9db86b4a1ac034 |
File details
Details for the file pytket-0.6.0-cp36-cp36m-macosx_10_14_x86_64.whl
.
File metadata
- Download URL: pytket-0.6.0-cp36-cp36m-macosx_10_14_x86_64.whl
- Upload date:
- Size: 4.4 MB
- Tags: CPython 3.6m, macOS 10.14+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.22.0 setuptools/42.0.2.post20191203 requests-toolbelt/0.9.1 tqdm/4.42.1 CPython/3.7.4
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 7592f845b13e83e6c9c53a91518816d87e6df71bd55e7aed2fda0b043ff016cc |
|
MD5 | afaf1a95b459941dfb55f5953596a758 |
|
BLAKE2b-256 | 221a19fe34dc7b4f487d0bca93ac93d0b873b12aa806e24eb3e5489d05fa6297 |