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.29.0rc1-cp312-cp312-win_amd64.whl (8.3 MB view details)

Uploaded CPython 3.12 Windows x86-64

pytket-1.29.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.29.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.29.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.29.0rc1-cp312-cp312-macosx_12_0_arm64.whl (6.2 MB view details)

Uploaded CPython 3.12 macOS 12.0+ ARM64

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

Uploaded CPython 3.11 Windows x86-64

pytket-1.29.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.29.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.29.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.29.0rc1-cp311-cp311-macosx_12_0_arm64.whl (6.0 MB view details)

Uploaded CPython 3.11 macOS 12.0+ ARM64

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

Uploaded CPython 3.10 Windows x86-64

pytket-1.29.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.29.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.29.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.29.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.29.0rc1-cp312-cp312-win_amd64.whl.

File metadata

File hashes

Hashes for pytket-1.29.0rc1-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 a70a3ebe50e7d99957747a45033075731e8d1d8c704d8d11e9c5137c926f0afb
MD5 8418eae03bcbc725ad22dc44e67dbb9f
BLAKE2b-256 ec69b6de278de8bc2531f3daadff9d1be89b836de4ce8e2995cc6cd760608195

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pytket-1.29.0rc1-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 c532999225263dc4808c175bda26996a4b0228edaac29624e0c3217bd4ee6f0d
MD5 76dccbb27617005734c5d078a7737a61
BLAKE2b-256 83e87a17cd1e995991648e9eb95f9aeb42a3d207af564a1c3cdb92cc970530e5

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pytket-1.29.0rc1-cp312-cp312-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 23bd767aa61cee891dc1cb9cb3c20329de531093fc86ff92067628eb1d993f56
MD5 736eae112e5987f74d7858a39bfb1680
BLAKE2b-256 18e19d9f0b6755853b2f04a2143e371689712033e6aec99c12151bd89fdd8592

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pytket-1.29.0rc1-cp312-cp312-macosx_12_0_x86_64.whl
Algorithm Hash digest
SHA256 e53ebed935a5ad1081c3c463943fa267a6c834ab4cd9a5b4f5c2d470943bed22
MD5 61ac5bdc43f8919b011d7f8d6ef52660
BLAKE2b-256 450793fff5a89922b23135a7f11a13c8cf325f2686505d0340b141d50a7df231

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pytket-1.29.0rc1-cp312-cp312-macosx_12_0_arm64.whl
Algorithm Hash digest
SHA256 b64c9a39e53181023456b2aede43d0e385f58ea23c2f289d95b21dc3df5f5b19
MD5 4bd1f973513502dea942377dce484484
BLAKE2b-256 ca72fcd5b658c388d4b387689825daad65d5e472f001d57fcd6765599aed0d9a

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pytket-1.29.0rc1-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 7af6bd1f78d5915fc43ab7e03defd2fe5018cb3589b55ce13acb3e1f04c75d9d
MD5 f00f96f2f8d09b621fde13b28d3f22d5
BLAKE2b-256 47f78f1212f88fc909428cf6789321b22625810ba8ad8f24f2540232bba97388

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pytket-1.29.0rc1-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 d9abc78a016fe8fcb4a36f523e582cdb98a3fb59a2a834f726d1448a253639db
MD5 19ec2c983de5669a56b7ef25bfe04c3f
BLAKE2b-256 1b40d8a17d064bb19a887b45952c11c592d7be33938d5eda63409b2ece561ca8

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pytket-1.29.0rc1-cp311-cp311-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 10fe76d644ff563095c6a5a46d0155d9967a7f0ed55ee9e8b097b86880335aba
MD5 f906582bb8a5cc2dc6c18d877e9a8d9f
BLAKE2b-256 340b6214ec98ebc83c903403ec69abe6f1f3548d175d2ce0dbf52b80a114850a

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pytket-1.29.0rc1-cp311-cp311-macosx_12_0_x86_64.whl
Algorithm Hash digest
SHA256 d20a5df24d672ce7fee068b15636bcc75f1bd90f7f183d5a0e1beecd848382f8
MD5 81da8aac2a70399f1924e602519278c9
BLAKE2b-256 a1e77b6bce4927aa617dc63bf45d94bfbb40555f06b8406166f0c8d71d3506a8

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pytket-1.29.0rc1-cp311-cp311-macosx_12_0_arm64.whl
Algorithm Hash digest
SHA256 2496f6fb153449a3b40271ce0033901a3e91f8c7833f8d68a191ccb699211f91
MD5 15d17f9ada9becd11caa53601139cb56
BLAKE2b-256 30cb408a17aabcdbc9cf6d1907d66788c6ad5223d43c100b78c1ee676ca7be19

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pytket-1.29.0rc1-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 42825948795d05648560c5515314b0cbb8a689dd7e2c588a6fdc82656ef459df
MD5 1064aaebc4cef6e07f6ed1955b4d8b3a
BLAKE2b-256 dcfca37cef92f411ec9409b248f00033981d0b5d166d5629742a87e5c48713b9

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pytket-1.29.0rc1-cp310-cp310-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 121a345157218254b440da4ee79bb736bd3f696566ef54dd2df75cd8dfac8aca
MD5 b52aa69c9ec4e3d2bb27b671cc9ecc7b
BLAKE2b-256 682487eff838f1f0a8f370ddac2b00e127a758d21d738fa9fdafa38cefc2abb9

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pytket-1.29.0rc1-cp310-cp310-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 43b4b0b641296b6de93f7b000f5b174650df238c125bf9f8ee2c1124173d8f4f
MD5 69081cadf275bbf4b9d1a66ece1cde8c
BLAKE2b-256 ccd30873ad1d88e45be71e275788c3be1f08a3db1bfc7ca55258f31e12897b0d

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pytket-1.29.0rc1-cp310-cp310-macosx_12_0_x86_64.whl
Algorithm Hash digest
SHA256 43a241f4a957a21fa53fdc9b98d3c8c933d2e7dd5e728f43b6ca52ced3e2c94b
MD5 8407bc8dfc5bceaf7c17149e32d0d15e
BLAKE2b-256 caef08e33114850d611ae1ff5a03407e8cf35ce85d1221dd5b10ad1f893fb531

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pytket-1.29.0rc1-cp310-cp310-macosx_12_0_arm64.whl
Algorithm Hash digest
SHA256 23c612adb7edfcbbbe303ef861b5e2e5fe7be0dd09a39b44436ec5d00619ea9e
MD5 c89a895859f08eedbc4b4f2713c81ed8
BLAKE2b-256 22a8494055bda41280ee33ac8b3f76ea36de3ae4b8ddd1e55c90045d2b98d956

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