Skip to main content

Quantum computing toolkit and interface to the TKET compiler

Project description

Pytket is a python module for interfacing with TKET, a quantum computing toolkit and optimising compiler developed by Quantinuum. In addition to pytket there are several pytket extension modules for accessing a range of quantum hardware and classical simulators. The extension modules also allow circuit conversion between several widely used quantum software tools including qiskit, cirq and pennylane.

The source code for the TKET compiler can be found in this github repository.

Installation

Installation is supported for Linux, MacOS and Windows. Installation requires python 3.10, 3.11 or 3.12.

To install run the pip command:

pip install pytket

See Installation troubleshooting for help with installation.

To install the pytket extension modules add a hyphen and the extension name to the command:

pip install pytket-quantinuum

For a list of pytket extensions see this page: https://tket.quantinuum.com/api-docs/extensions.

Warning. There is a known issue with installing pytket in a conda environment on MacOS: you may not be able to install versions more recent then 1.11.0. The only known remedy is to use an official Python distribution instead.

Documentation and Examples

API reference: https://tket.quantinuum.com/api-docs/

To get started using pytket see the user manual.

For worked examples using TKET see our notebook examples.

Support and Discussion

For bugs and feature requests we recommend creating an issue on the github repository.

User support: tket-support@quantinuum.com

For discussion, join the public slack channel here.

There is also a pytket tag on quantum computing stack exchange.

Mailing list: join here.

Citation

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 (a.k.a. allocation) and routing (a.k.a. swap network insertion, connectivity solving). https://arxiv.org/abs/1902.08091 .
  • "Phase Gadget Synthesis for Shallow Circuits" for representing exponentiated Pauli operators in the ZX calculus and their circuit decompositions. https://arxiv.org/abs/1906.01734 .
  • "A Generic Compilation Strategy for the Unitary Coupled Cluster Ansatz" for sequencing of terms in Trotterisation and Pauli diagonalisation. https://arxiv.org/abs/2007.10515 .

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

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distributions

pytket-1.28.0rc1-cp312-cp312-win_amd64.whl (8.3 MB view details)

Uploaded CPython 3.12 Windows x86-64

pytket-1.28.0rc1-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (7.9 MB view details)

Uploaded CPython 3.12 manylinux: glibc 2.27+ x86-64 manylinux: glibc 2.28+ x86-64

pytket-1.28.0rc1-cp312-cp312-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl (7.4 MB view details)

Uploaded CPython 3.12 manylinux: glibc 2.27+ ARM64 manylinux: glibc 2.28+ ARM64

pytket-1.28.0rc1-cp312-cp312-macosx_12_0_x86_64.whl (6.7 MB view details)

Uploaded CPython 3.12 macOS 12.0+ x86-64

pytket-1.28.0rc1-cp312-cp312-macosx_12_0_arm64.whl (6.2 MB view details)

Uploaded CPython 3.12 macOS 12.0+ ARM64

pytket-1.28.0rc1-cp311-cp311-win_amd64.whl (8.3 MB view details)

Uploaded CPython 3.11 Windows x86-64

pytket-1.28.0rc1-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (7.9 MB view details)

Uploaded CPython 3.11 manylinux: glibc 2.27+ x86-64 manylinux: glibc 2.28+ x86-64

pytket-1.28.0rc1-cp311-cp311-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl (7.4 MB view details)

Uploaded CPython 3.11 manylinux: glibc 2.27+ ARM64 manylinux: glibc 2.28+ ARM64

pytket-1.28.0rc1-cp311-cp311-macosx_12_0_x86_64.whl (6.4 MB view details)

Uploaded CPython 3.11 macOS 12.0+ x86-64

pytket-1.28.0rc1-cp311-cp311-macosx_12_0_arm64.whl (6.0 MB view details)

Uploaded CPython 3.11 macOS 12.0+ ARM64

pytket-1.28.0rc1-cp310-cp310-win_amd64.whl (8.3 MB view details)

Uploaded CPython 3.10 Windows x86-64

pytket-1.28.0rc1-cp310-cp310-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (7.9 MB view details)

Uploaded CPython 3.10 manylinux: glibc 2.27+ x86-64 manylinux: glibc 2.28+ x86-64

pytket-1.28.0rc1-cp310-cp310-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl (7.4 MB view details)

Uploaded CPython 3.10 manylinux: glibc 2.27+ ARM64 manylinux: glibc 2.28+ ARM64

pytket-1.28.0rc1-cp310-cp310-macosx_12_0_x86_64.whl (6.4 MB view details)

Uploaded CPython 3.10 macOS 12.0+ x86-64

pytket-1.28.0rc1-cp310-cp310-macosx_12_0_arm64.whl (6.0 MB view details)

Uploaded CPython 3.10 macOS 12.0+ ARM64

File details

Details for the file pytket-1.28.0rc1-cp312-cp312-win_amd64.whl.

File metadata

File hashes

Hashes for pytket-1.28.0rc1-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 51268bb88ce1977ca48c7f1b218e4d3bc2a1e9de8c55dd6ff0d72d6cdf8e3373
MD5 e087c7f254df8797b50caaaadc3ce157
BLAKE2b-256 6b364399a71bed1197b2e9d0945409ba91fba14466c768a2195ed7ec3cf6ccb4

See more details on using hashes here.

File details

Details for the file pytket-1.28.0rc1-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for pytket-1.28.0rc1-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 d7da0db1853ef0129c0f9cba18d23d5c8261632515ca719a9d824dd20c175c55
MD5 9167762231d7bfcc94cf1c156bc2478c
BLAKE2b-256 618164835ccec80c808e2c33008209ae00bc80650aac4a03d4a845f4d5e97671

See more details on using hashes here.

File details

Details for the file pytket-1.28.0rc1-cp312-cp312-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for pytket-1.28.0rc1-cp312-cp312-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 afdc69597688e71bf079b344ca9fef7d7afe47a70accd58ed3a998e0e89540a7
MD5 76f5b98a80056bae350535ab1bb514c0
BLAKE2b-256 c392cc1697c22465505b01ef9f3a34edd5d95f8dfc28a6d3d7c8368531d87057

See more details on using hashes here.

File details

Details for the file pytket-1.28.0rc1-cp312-cp312-macosx_12_0_x86_64.whl.

File metadata

File hashes

Hashes for pytket-1.28.0rc1-cp312-cp312-macosx_12_0_x86_64.whl
Algorithm Hash digest
SHA256 3e25ea417075784708788b9b0dd9f1dd3453698ce1e7b6724a300444a1260222
MD5 dfe5ebd1aadb43c4bdd999bfb6b85cd0
BLAKE2b-256 402b859a18ef5f7dee9d365c7c60d57402f09a80d9b919902e584b2044d4b859

See more details on using hashes here.

File details

Details for the file pytket-1.28.0rc1-cp312-cp312-macosx_12_0_arm64.whl.

File metadata

File hashes

Hashes for pytket-1.28.0rc1-cp312-cp312-macosx_12_0_arm64.whl
Algorithm Hash digest
SHA256 30e2f03381455c82cf18d8736565a7adcc8732d2c0ffb84e704113272aa0d7fd
MD5 313653eb689cf0138a2d327326e93153
BLAKE2b-256 ea6e9797d00bfa55e2f7952911592c065e13e4a7d4e75e1ada0effbe99ac8c0a

See more details on using hashes here.

File details

Details for the file pytket-1.28.0rc1-cp311-cp311-win_amd64.whl.

File metadata

File hashes

Hashes for pytket-1.28.0rc1-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 4e0f8ebfe52dff650a0704e77fd91a118b4ddd72b0c3584f11e7548b9304e79b
MD5 895ad9d1e9d40fbffb06e9a2436c3697
BLAKE2b-256 00684d9d4a317a8f8f083e4116e018f70f070a21a8e9cc896e35d081ebb96c8d

See more details on using hashes here.

File details

Details for the file pytket-1.28.0rc1-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for pytket-1.28.0rc1-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 613c6edb03c4209da5b022719a4140e2a1fce10eefec73bb7e458537e5c65f24
MD5 2dda1b0a2066549f9f53d76fbfe55aff
BLAKE2b-256 3d9d074537992408ee43268819c231563d01c0054d147e051d5d1a2e16c0f6e0

See more details on using hashes here.

File details

Details for the file pytket-1.28.0rc1-cp311-cp311-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for pytket-1.28.0rc1-cp311-cp311-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 3418c6f29adc8ea1f79c1c6a7b594b8a558b15be1ef1fa2d2ed0b547105cc219
MD5 994e5ffdcea6bb542239e22abe4884f5
BLAKE2b-256 914786c9b3299ae0bf18c723eeaf1c6b6d4c7b4e487ecc716bdfa5e67c461484

See more details on using hashes here.

File details

Details for the file pytket-1.28.0rc1-cp311-cp311-macosx_12_0_x86_64.whl.

File metadata

File hashes

Hashes for pytket-1.28.0rc1-cp311-cp311-macosx_12_0_x86_64.whl
Algorithm Hash digest
SHA256 0380a897c222357774d81645049cd40d988486a5dd31da5099d0d526d619304a
MD5 49dc0704a4c15176cd699e2ce8081252
BLAKE2b-256 a6fb659981d6247bcd1d7de7207ec3b765eb7ce7b1c1f453a873870afe08a18f

See more details on using hashes here.

File details

Details for the file pytket-1.28.0rc1-cp311-cp311-macosx_12_0_arm64.whl.

File metadata

File hashes

Hashes for pytket-1.28.0rc1-cp311-cp311-macosx_12_0_arm64.whl
Algorithm Hash digest
SHA256 e79d13728de320dd8a9499cd23b491432d1fe126ec7296d190253dc0755b093b
MD5 e2d77d73b280980085269babf6dfdf9a
BLAKE2b-256 ff441cda7a8e313ebaf4cea8a9a2e846f0e3517a97409de54e4b37d1a9047e7f

See more details on using hashes here.

File details

Details for the file pytket-1.28.0rc1-cp310-cp310-win_amd64.whl.

File metadata

File hashes

Hashes for pytket-1.28.0rc1-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 19ed303f781fd5ebc2430559cba36870cd3f1f13ac3138b766825327ebc55b84
MD5 85da5dfe037e0dae392bcfbfb951e9e6
BLAKE2b-256 763add06c8a7e7447e8477a7e8d501d6787338edf443cb00742918e8b5cae5fa

See more details on using hashes here.

File details

Details for the file pytket-1.28.0rc1-cp310-cp310-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for pytket-1.28.0rc1-cp310-cp310-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 3181b984f1a72b94564da7dc66c71c7ab75ddd4ba7e330cba5ca362196144e79
MD5 d34a028306d00bd37c6162327c5fe917
BLAKE2b-256 e2c4d4150205a4a4efb76c4a696fa4650dcf490403b5e66f51ec58c182170eb2

See more details on using hashes here.

File details

Details for the file pytket-1.28.0rc1-cp310-cp310-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for pytket-1.28.0rc1-cp310-cp310-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 e9a4aa7493adc5dcad30c1c209962c291e5189a910d27dc01edb55eb540c8244
MD5 56718bdf783489f535db4b60b7536445
BLAKE2b-256 e0344897a470389ba82807e55c96566160fb34e30fd2dd409700484b02d02a14

See more details on using hashes here.

File details

Details for the file pytket-1.28.0rc1-cp310-cp310-macosx_12_0_x86_64.whl.

File metadata

File hashes

Hashes for pytket-1.28.0rc1-cp310-cp310-macosx_12_0_x86_64.whl
Algorithm Hash digest
SHA256 e125fa1afe98a0eb64ac52eccdfefc0312860b20280e39885a7aa4bba32e26d1
MD5 c7ec12271ac216cb6b97802931e511e8
BLAKE2b-256 f0ae3106b08aa0aea9fb20409ba1f9977d98009d76da340ba1702f2d44440b47

See more details on using hashes here.

File details

Details for the file pytket-1.28.0rc1-cp310-cp310-macosx_12_0_arm64.whl.

File metadata

File hashes

Hashes for pytket-1.28.0rc1-cp310-cp310-macosx_12_0_arm64.whl
Algorithm Hash digest
SHA256 7d7bf8df761e796a997e73b83a27cdcf573e71e351bd283e84acde36e0d5a589
MD5 50e06a3044220a7e2731cf39ad243137
BLAKE2b-256 fafd8715a4ed3b11d45609e0f222ba8f82f14b05de3b69402d5cc0af273b9bd6

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page