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 guide.

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.33.0rc0-cp312-cp312-win_amd64.whl (8.4 MB view details)

Uploaded CPython 3.12 Windows x86-64

pytket-1.33.0rc0-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (8.0 MB view details)

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

pytket-1.33.0rc0-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.33.0rc0-cp312-cp312-macosx_12_0_x86_64.whl (6.9 MB view details)

Uploaded CPython 3.12 macOS 12.0+ x86-64

pytket-1.33.0rc0-cp312-cp312-macosx_12_0_arm64.whl (6.2 MB view details)

Uploaded CPython 3.12 macOS 12.0+ ARM64

pytket-1.33.0rc0-cp311-cp311-win_amd64.whl (8.4 MB view details)

Uploaded CPython 3.11 Windows x86-64

pytket-1.33.0rc0-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (8.0 MB view details)

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

pytket-1.33.0rc0-cp311-cp311-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl (7.5 MB view details)

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

pytket-1.33.0rc0-cp311-cp311-macosx_12_0_x86_64.whl (6.6 MB view details)

Uploaded CPython 3.11 macOS 12.0+ x86-64

pytket-1.33.0rc0-cp311-cp311-macosx_12_0_arm64.whl (6.1 MB view details)

Uploaded CPython 3.11 macOS 12.0+ ARM64

pytket-1.33.0rc0-cp310-cp310-win_amd64.whl (8.3 MB view details)

Uploaded CPython 3.10 Windows x86-64

pytket-1.33.0rc0-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.33.0rc0-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.33.0rc0-cp310-cp310-macosx_12_0_x86_64.whl (6.6 MB view details)

Uploaded CPython 3.10 macOS 12.0+ x86-64

pytket-1.33.0rc0-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.33.0rc0-cp312-cp312-win_amd64.whl.

File metadata

File hashes

Hashes for pytket-1.33.0rc0-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 d769733561e2634cf2380880bc801538d2a730439da607119fd60c07fa079560
MD5 69e5c812ddb2e386b7c0cb89c65d797a
BLAKE2b-256 47bff27ae29023b3030b1e531cc03c42f75727ebac67c22579d68014ae3b6ce6

See more details on using hashes here.

File details

Details for the file pytket-1.33.0rc0-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for pytket-1.33.0rc0-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 f578b5c334a993696fe737ff697737c1e2337395c89281d7329bc07de0a8b963
MD5 2e7a622b3e8be7d5d96d62419b035432
BLAKE2b-256 542d63a68389d00a44f001d0be918467469e7c05b497a433be4c0f3d31cf0c8d

See more details on using hashes here.

File details

Details for the file pytket-1.33.0rc0-cp312-cp312-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for pytket-1.33.0rc0-cp312-cp312-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 9a2b8be684aa4d752b350656ea337b6be4846c6b8c8ff118fe3f1230da64c821
MD5 fceffdc8d6c57281db540c2678a139fb
BLAKE2b-256 ae51b0d259a269f22591733d49a61d8db6bc8dc49abc32cd122d1fb6a515192c

See more details on using hashes here.

File details

Details for the file pytket-1.33.0rc0-cp312-cp312-macosx_12_0_x86_64.whl.

File metadata

File hashes

Hashes for pytket-1.33.0rc0-cp312-cp312-macosx_12_0_x86_64.whl
Algorithm Hash digest
SHA256 c924fc02a0d1e76b82658d45be94c4fe2b1ead8a3db02e52f882ea0e837e506b
MD5 a01dfc248544534df9acee7b124b85a0
BLAKE2b-256 aeabf8762c69699580057f9f6f7a0794351d303ad968e94654afb4d6141a1e95

See more details on using hashes here.

File details

Details for the file pytket-1.33.0rc0-cp312-cp312-macosx_12_0_arm64.whl.

File metadata

File hashes

Hashes for pytket-1.33.0rc0-cp312-cp312-macosx_12_0_arm64.whl
Algorithm Hash digest
SHA256 84220fc78e9fe8439fcf0b431121afe2c5f03c62025de4bca261a3c1333d3473
MD5 8101032969921f690c8ca271607672e8
BLAKE2b-256 6131a8772821fc03733a2cfc95470316a1e57fd8af781de44f2ea4dd04cd4b16

See more details on using hashes here.

File details

Details for the file pytket-1.33.0rc0-cp311-cp311-win_amd64.whl.

File metadata

File hashes

Hashes for pytket-1.33.0rc0-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 2f6505c7d84a6415d21ef3cb425eb9567c7590562e92fa780503b6c8a7019361
MD5 f92e816951aeaf6260be2c68059a8905
BLAKE2b-256 273c96f5b3ac1859ff5202cb38465ae17dd93a269f9c562e6ed6826a2b2e4003

See more details on using hashes here.

File details

Details for the file pytket-1.33.0rc0-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for pytket-1.33.0rc0-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 d41752c8c84f77571161f4a4c2149d6e623e9ef0cfe16b37654c182cc8946d00
MD5 11c635acef07e1d2290182409b28c5ec
BLAKE2b-256 5a48d5b83e19f8f98d4e449196c78132cc1a589bd6c886273b72aa2ba62cee4a

See more details on using hashes here.

File details

Details for the file pytket-1.33.0rc0-cp311-cp311-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for pytket-1.33.0rc0-cp311-cp311-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 6224f6f2e352580cf494d4a72b76b3f400ed3bad7d40e7b491fdfff7d44a3421
MD5 3fd9c295d96f5eb5f793966bffba8a8d
BLAKE2b-256 a2171302b322124feb1598407dbf1a2fdb7e5c39bc4d859263172d7bdcccfbfc

See more details on using hashes here.

File details

Details for the file pytket-1.33.0rc0-cp311-cp311-macosx_12_0_x86_64.whl.

File metadata

File hashes

Hashes for pytket-1.33.0rc0-cp311-cp311-macosx_12_0_x86_64.whl
Algorithm Hash digest
SHA256 ddf8638367bb31f45c6f46ff854cff8eed444e46795d8da31bcc37c2114205a6
MD5 fc0a95ca2ff363edc7e369370a6b5b02
BLAKE2b-256 88b7bf78263cf5d987549a40d9ef9958fc16fe80764a587048b1fb4939ee6984

See more details on using hashes here.

File details

Details for the file pytket-1.33.0rc0-cp311-cp311-macosx_12_0_arm64.whl.

File metadata

File hashes

Hashes for pytket-1.33.0rc0-cp311-cp311-macosx_12_0_arm64.whl
Algorithm Hash digest
SHA256 684d5b1684d704e22c11a7f68944284c524b58cb158341d505abe1c561558423
MD5 36a06b7001146ad64c789390ca517a68
BLAKE2b-256 1059e0d6ca6581a0b1884f968ee1681a8014adcd1e42903de56b738d58b86b7d

See more details on using hashes here.

File details

Details for the file pytket-1.33.0rc0-cp310-cp310-win_amd64.whl.

File metadata

File hashes

Hashes for pytket-1.33.0rc0-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 5de9472f826c50e18af8c056c9a37e58c9f61a393ca5d066e75f54f0a90c56f5
MD5 7fb0cc0ce614fa22d1dbfdfb3eec661f
BLAKE2b-256 9af4433a50d7728cd3e417124d69d75041140ff66bedd614524abaf2fd6298ec

See more details on using hashes here.

File details

Details for the file pytket-1.33.0rc0-cp310-cp310-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for pytket-1.33.0rc0-cp310-cp310-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 14e8ed575f8ef4c581dc0e01c9fff424b57f88e7858c8d8166c2190297678e44
MD5 27f11ca5c9352e1dd5a9ee5eb41b01a5
BLAKE2b-256 7847bfc718280309f0f7d5482f0352e40f65d68b2bde86a605405a1d4892bc9d

See more details on using hashes here.

File details

Details for the file pytket-1.33.0rc0-cp310-cp310-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for pytket-1.33.0rc0-cp310-cp310-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 7aab287caea6b3f8f2cd7ddf8317c903de4f5ea71155ac8cd120376be41de623
MD5 44be38748d4bf272a44cddaa948cb194
BLAKE2b-256 ee22c4f7c6ff6919269b22f68e6353b18bebce8a688a82143f94863d4552da23

See more details on using hashes here.

File details

Details for the file pytket-1.33.0rc0-cp310-cp310-macosx_12_0_x86_64.whl.

File metadata

File hashes

Hashes for pytket-1.33.0rc0-cp310-cp310-macosx_12_0_x86_64.whl
Algorithm Hash digest
SHA256 3422e47ecd83b4b3b0b713631ae4119c606bbb1acbc9a360ac0e99fd91518320
MD5 92d47beeaf52edc4b825e4879b6c09fb
BLAKE2b-256 75d91d4043b1dc2579481ea8c2605374a00020f9787b251d3285cc7f21596add

See more details on using hashes here.

File details

Details for the file pytket-1.33.0rc0-cp310-cp310-macosx_12_0_arm64.whl.

File metadata

File hashes

Hashes for pytket-1.33.0rc0-cp310-cp310-macosx_12_0_arm64.whl
Algorithm Hash digest
SHA256 452f819805d3fe2656c75e18ab1888ef38e1547eb583abd2227a4eea74a2c7a8
MD5 5382642e01242a4787d212d9e1817aa6
BLAKE2b-256 553e5a840ee3c79d7a88d96f6457231df870e559c6d3f935b393937c77e28859

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