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, 3.12 or 3.13.

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://docs.quantinuum.com/tket/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://docs.quantinuum.com/tket/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.35.0rc1-cp313-cp313-win_amd64.whl (8.6 MB view details)

Uploaded CPython 3.13 Windows x86-64

pytket-1.35.0rc1-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (8.2 MB view details)

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

pytket-1.35.0rc1-cp313-cp313-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl (7.7 MB view details)

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

pytket-1.35.0rc1-cp313-cp313-macosx_13_0_x86_64.whl (7.1 MB view details)

Uploaded CPython 3.13 macOS 13.0+ x86-64

pytket-1.35.0rc1-cp313-cp313-macosx_13_0_arm64.whl (6.3 MB view details)

Uploaded CPython 3.13 macOS 13.0+ ARM64

pytket-1.35.0rc1-cp312-cp312-win_amd64.whl (8.6 MB view details)

Uploaded CPython 3.12 Windows x86-64

pytket-1.35.0rc1-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (8.2 MB view details)

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

pytket-1.35.0rc1-cp312-cp312-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl (7.7 MB view details)

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

pytket-1.35.0rc1-cp312-cp312-macosx_13_0_x86_64.whl (7.1 MB view details)

Uploaded CPython 3.12 macOS 13.0+ x86-64

pytket-1.35.0rc1-cp312-cp312-macosx_13_0_arm64.whl (6.3 MB view details)

Uploaded CPython 3.12 macOS 13.0+ ARM64

pytket-1.35.0rc1-cp311-cp311-win_amd64.whl (8.6 MB view details)

Uploaded CPython 3.11 Windows x86-64

pytket-1.35.0rc1-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (8.2 MB view details)

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

pytket-1.35.0rc1-cp311-cp311-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl (7.7 MB view details)

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

pytket-1.35.0rc1-cp311-cp311-macosx_13_0_x86_64.whl (6.8 MB view details)

Uploaded CPython 3.11 macOS 13.0+ x86-64

pytket-1.35.0rc1-cp311-cp311-macosx_13_0_arm64.whl (6.1 MB view details)

Uploaded CPython 3.11 macOS 13.0+ ARM64

pytket-1.35.0rc1-cp310-cp310-win_amd64.whl (8.6 MB view details)

Uploaded CPython 3.10 Windows x86-64

pytket-1.35.0rc1-cp310-cp310-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (8.2 MB view details)

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

pytket-1.35.0rc1-cp310-cp310-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl (7.7 MB view details)

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

pytket-1.35.0rc1-cp310-cp310-macosx_13_0_x86_64.whl (6.8 MB view details)

Uploaded CPython 3.10 macOS 13.0+ x86-64

pytket-1.35.0rc1-cp310-cp310-macosx_13_0_arm64.whl (6.1 MB view details)

Uploaded CPython 3.10 macOS 13.0+ ARM64

File details

Details for the file pytket-1.35.0rc1-cp313-cp313-win_amd64.whl.

File metadata

File hashes

Hashes for pytket-1.35.0rc1-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 b6d25c0d1ea91b875fb9cfa5be8a0b814a71328a31a906d4709080930bfae34e
MD5 62495ab0ce899604452d2b1ab67970d6
BLAKE2b-256 f54e3942cd2baac52009732aedc78a5f738d058c4b536e40af92678488c01cda

See more details on using hashes here.

File details

Details for the file pytket-1.35.0rc1-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for pytket-1.35.0rc1-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 5ef614c63e715fa803d98d0b1629c77a127db0f043707f4eb86f03d4203768d0
MD5 221abdafc2aaa85eff458b2035ddf717
BLAKE2b-256 387f57dd0ec7af55de50c8ed9e82494220abf1ef4e3602a4665c853713cd2366

See more details on using hashes here.

File details

Details for the file pytket-1.35.0rc1-cp313-cp313-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for pytket-1.35.0rc1-cp313-cp313-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 97c290cb7e7ed37539a928c47b7ea166ab9d48957a7296ab9ec5ae782970472f
MD5 3b508b6213cd7d400b8f8c5bce76ecab
BLAKE2b-256 7cc9e4ca7351793e6f1c88b535ed81b2ba5288d6c5efdd9caf9662cecf329d43

See more details on using hashes here.

File details

Details for the file pytket-1.35.0rc1-cp313-cp313-macosx_13_0_x86_64.whl.

File metadata

File hashes

Hashes for pytket-1.35.0rc1-cp313-cp313-macosx_13_0_x86_64.whl
Algorithm Hash digest
SHA256 f39e31ba886772911ec2cf9766b84d953dbf1bbb27d0b9cef90eb7477c5616ed
MD5 11bfab5f695f3d1680dd43f7ae9141b9
BLAKE2b-256 e282a9f720b4088abdda848612f32e0f280352dbc29c29840972eafd8194f7f5

See more details on using hashes here.

File details

Details for the file pytket-1.35.0rc1-cp313-cp313-macosx_13_0_arm64.whl.

File metadata

File hashes

Hashes for pytket-1.35.0rc1-cp313-cp313-macosx_13_0_arm64.whl
Algorithm Hash digest
SHA256 d97df3422cc608b99ea0dbb44f31742fd2653f5bf2bf9949d5921929cc2f30e5
MD5 2ca60f7e87f3950d613e15a7e4f38148
BLAKE2b-256 f0a9473620edc50e1a3da09d4cb304d1b740de09f55cd8f07b0c98bce5eced09

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pytket-1.35.0rc1-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 b1f1708eda232b654130a3bfa2ce4891c76c22fdd28b87a8a6bd428f8f6e065f
MD5 684151a15241d3b29967d67084990c1f
BLAKE2b-256 f56316d6dcff032836a9fe8d7c9f00678790ba902efa86f636506244d5ae01c2

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pytket-1.35.0rc1-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 cf006cd3a5ede691373a2903f8a5adad23bbece7619045c5644736466da0a3b7
MD5 ab9d8cec680fb930745c2c43ae3d3257
BLAKE2b-256 d68576199487cc01987eb3f58242f805da8dccc3146d40a2281b929813016ca3

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pytket-1.35.0rc1-cp312-cp312-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 2bac5730aed07867065f0cc3e75b4eb6f57294e9411d6704f12a2b15ef71cf93
MD5 cccaa763dd78ced9eed954281aa4bcc2
BLAKE2b-256 78fcc988c05c6ccdb84c7bf56d1acfb997371bd0e3b13331c2b817abf2267bc8

See more details on using hashes here.

File details

Details for the file pytket-1.35.0rc1-cp312-cp312-macosx_13_0_x86_64.whl.

File metadata

File hashes

Hashes for pytket-1.35.0rc1-cp312-cp312-macosx_13_0_x86_64.whl
Algorithm Hash digest
SHA256 7b82d715bbe0e5f27ed27f079e4cc93e2e88993a265a188996a2e7112fa38ebd
MD5 17180159c7951f22b96a59e8a9aa2d0e
BLAKE2b-256 14e2044b3b56fbb545cf21b13cff19f8a080a551ad122b6304cbc9c485b16965

See more details on using hashes here.

File details

Details for the file pytket-1.35.0rc1-cp312-cp312-macosx_13_0_arm64.whl.

File metadata

File hashes

Hashes for pytket-1.35.0rc1-cp312-cp312-macosx_13_0_arm64.whl
Algorithm Hash digest
SHA256 2001a555da6c7200dd402a33f8c8f6cd4d3225f78dd301e7333461b31568b61a
MD5 e86fd4ee30cd013e33628907023e417d
BLAKE2b-256 d2d05e448519b6d6b8640ef07789a227e9b0f60b126a3751072e5e607c5d44c9

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pytket-1.35.0rc1-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 d39026491da7c8be6aa9e9768e29757ec15ca837d35f1e13df35b480114a9dd1
MD5 29698923a8b5b9585b583669cd9b571d
BLAKE2b-256 e6d7a2cd84c90d9719093dceb7a95086165c06f05c960d6cbdec64127bac91f1

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pytket-1.35.0rc1-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 64411b765010a849b15de9def6358f0e142f77f27aaf426fbaf28994c0888e13
MD5 8a33ca167478379e0da2f5b37abdde6c
BLAKE2b-256 6d43db94089455cd85ae5d3422c63c1902a15314dd9da4362b3472119c627eff

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pytket-1.35.0rc1-cp311-cp311-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 d2ac4f17b94c7e618654897fa2fffcf7d5f0f9d875f22bc676506a6cdc6c035a
MD5 b19680f15bed1dea70ec9db3d68cb6c0
BLAKE2b-256 ba4cfa8d9d7aeacfd441c03fff2d60720ad3e7a291935e1b2993876ecf65d164

See more details on using hashes here.

File details

Details for the file pytket-1.35.0rc1-cp311-cp311-macosx_13_0_x86_64.whl.

File metadata

File hashes

Hashes for pytket-1.35.0rc1-cp311-cp311-macosx_13_0_x86_64.whl
Algorithm Hash digest
SHA256 84c965ccf9a148d01073102a7cf712f8031be83edcf25909e09b05342012a9d2
MD5 f9c7a0d166aebd88cdcc1d8d5a9fbe9d
BLAKE2b-256 75272f28679538c3f05e0c2ecbe5758f055a4f826ad72f813d4228005362ca1f

See more details on using hashes here.

File details

Details for the file pytket-1.35.0rc1-cp311-cp311-macosx_13_0_arm64.whl.

File metadata

File hashes

Hashes for pytket-1.35.0rc1-cp311-cp311-macosx_13_0_arm64.whl
Algorithm Hash digest
SHA256 4dac77b1b6518bb928d0fb3c0c9dc3da3104a5f94f2818b59d54c52eb8c44da2
MD5 f2113cfac9860f080ea883ada9dd1636
BLAKE2b-256 2f9576fb10d23b6bb93bce728c90502fb4c7fc67506e200cb61d01b5c858f76a

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pytket-1.35.0rc1-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 f5aafab74f431df1ea0d1c92c7313be8a1a935bdcc59b770c4940ffb2d3bb2de
MD5 453d942eaa043eb04305cded5d43cf2e
BLAKE2b-256 de030eab629a30c7d924e9669500be5848fa014fd0edae40a6800de96fd83089

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pytket-1.35.0rc1-cp310-cp310-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 3fbecaacd9c60aeb2f754f04d1286c78994060ff58a8908d89dd79b53904a703
MD5 53b42524f51d1b3767d463180559a4aa
BLAKE2b-256 6262b81683f7c18b099a2dadd74e41bbaf8062a4e5cc474def1b1951521488ae

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pytket-1.35.0rc1-cp310-cp310-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 23f9655f07ae1b2c706e32ec7a528e2e1ad48853e67fe2a272cf0bfad43e6d0c
MD5 fb9ce240b4346896e9f6143005dd5562
BLAKE2b-256 3a298812ce31a4250d71f91eebf46b39601b3a5439353ac8151c7409b33e5ac8

See more details on using hashes here.

File details

Details for the file pytket-1.35.0rc1-cp310-cp310-macosx_13_0_x86_64.whl.

File metadata

File hashes

Hashes for pytket-1.35.0rc1-cp310-cp310-macosx_13_0_x86_64.whl
Algorithm Hash digest
SHA256 cde9836d321cf5860e981c0a2a77522a56aa12edf363ead6ceeb2b5587a6b27a
MD5 4587a41335c0c41dfa942fc9058d9199
BLAKE2b-256 cbdd755e88e7c43856702390d3cfc3ae5679beeb31da03e5b8023aaa6d91938e

See more details on using hashes here.

File details

Details for the file pytket-1.35.0rc1-cp310-cp310-macosx_13_0_arm64.whl.

File metadata

File hashes

Hashes for pytket-1.35.0rc1-cp310-cp310-macosx_13_0_arm64.whl
Algorithm Hash digest
SHA256 a277d5fdbd1fdf6b0d43de3be3272244a688db45d76af793dc706300d2727e95
MD5 edca2d0a04b7c3a394f217952e75629a
BLAKE2b-256 cf9a89c3e2159c9349b20f62f05b97bcca89d6fc05c2dc757170f7391b196c1b

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