Skip to main content

Python module for interfacing with the CQC tket library of quantum software

Project description

Pytket is a python module for interfacing with TKET, an optimising compiler for quantum circuits developed by Quantinuum. In addition to pytket there are several extension modules for accessing a range of quantum hardware and classical simulators. The extension modules also provide integration with several widely used quantum software tools.

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@cambridgequantum.com

For discussion, join the public slack channel here.

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

Uploaded CPython 3.12 Windows x86-64

pytket-1.27.0rc0-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (7.8 MB view details)

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

pytket-1.27.0rc0-cp312-cp312-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl (7.3 MB view details)

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

pytket-1.27.0rc0-cp312-cp312-macosx_13_0_arm64.whl (6.1 MB view details)

Uploaded CPython 3.12 macOS 13.0+ ARM64

pytket-1.27.0rc0-cp312-cp312-macosx_12_0_x86_64.whl (6.6 MB view details)

Uploaded CPython 3.12 macOS 12.0+ x86-64

pytket-1.27.0rc0-cp311-cp311-win_amd64.whl (8.1 MB view details)

Uploaded CPython 3.11 Windows x86-64

pytket-1.27.0rc0-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (7.8 MB view details)

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

pytket-1.27.0rc0-cp311-cp311-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl (7.3 MB view details)

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

pytket-1.27.0rc0-cp311-cp311-macosx_13_0_arm64.whl (5.9 MB view details)

Uploaded CPython 3.11 macOS 13.0+ ARM64

pytket-1.27.0rc0-cp311-cp311-macosx_12_0_x86_64.whl (6.3 MB view details)

Uploaded CPython 3.11 macOS 12.0+ x86-64

pytket-1.27.0rc0-cp310-cp310-win_amd64.whl (8.1 MB view details)

Uploaded CPython 3.10 Windows x86-64

pytket-1.27.0rc0-cp310-cp310-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (7.8 MB view details)

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

pytket-1.27.0rc0-cp310-cp310-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl (7.3 MB view details)

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

pytket-1.27.0rc0-cp310-cp310-macosx_13_0_arm64.whl (5.9 MB view details)

Uploaded CPython 3.10 macOS 13.0+ ARM64

pytket-1.27.0rc0-cp310-cp310-macosx_12_0_x86_64.whl (6.3 MB view details)

Uploaded CPython 3.10 macOS 12.0+ x86-64

File details

Details for the file pytket-1.27.0rc0-cp312-cp312-win_amd64.whl.

File metadata

File hashes

Hashes for pytket-1.27.0rc0-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 48d1371301eab61148f01fd079e6d9b6634e21ccb314ee6c106a030888eac7ab
MD5 cfc152a6ec341c23a02374fac5f8e703
BLAKE2b-256 d42e23f1904e4d7d7ae230560d0e5d42d470528b3da5f130819ee2f46647952b

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pytket-1.27.0rc0-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 6f070ab1b62f6a6ff5b857990ece620bd7c58a045bc2c8ec5f7b362f756eba8c
MD5 ddeb6c43ede5d0752f6dac0597a21746
BLAKE2b-256 7a736b7116cc68734b1fae66bbe63443906c4a93e32a6dac195472ae91eeff0b

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pytket-1.27.0rc0-cp312-cp312-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 989dbd3ae5aedc10252fd998c5e9b288b7c475c113f0f0e8aa003eeefa823ce3
MD5 5d2067f879ee03586853fc87d5e9205d
BLAKE2b-256 a63be9e2691c950f58f7fd327ea009da41765fcfeafcfcdeff45e21313e82618

See more details on using hashes here.

File details

Details for the file pytket-1.27.0rc0-cp312-cp312-macosx_13_0_arm64.whl.

File metadata

File hashes

Hashes for pytket-1.27.0rc0-cp312-cp312-macosx_13_0_arm64.whl
Algorithm Hash digest
SHA256 2ba3c71245732c9c6f3a840cc6f15717caa189e7060644b5aa74c848c5b4dd5a
MD5 696494f4435b96adf73a4dfe0762cfe6
BLAKE2b-256 e30751249ba0c198da34d26db5da548efca1581763466ca6ea9ea73c845a4b23

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pytket-1.27.0rc0-cp312-cp312-macosx_12_0_x86_64.whl
Algorithm Hash digest
SHA256 d8e41805dde72a6240e929f6f923eaf14289db3821804d3f9aa328263000fac8
MD5 23f01fb1d7e002e398fdc66117ce1324
BLAKE2b-256 15e5c6a0c937a08df53deec8f9d4ef5c0f88c496115e98f122dfffca70bd5e95

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pytket-1.27.0rc0-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 a36acdc0b6867f15287a65b5cdff6240125335d4c3aa0f0773e262d9ef08679f
MD5 0b0d575e42a7ee2b1ed4c82673004f7b
BLAKE2b-256 aa9339f2ece10a4a6010582717412143accaa962bebe011ca5c5924d2e3e948d

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pytket-1.27.0rc0-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 70af067e93146c8a4e97ff2d631e6e0d0645893b5099052fc0dbc909dba5558a
MD5 5cbbae374a912af4a3069e0035588a0f
BLAKE2b-256 21cff83b3a3d573d89f9641c18ee64c8f1602c77acfae4484d30b828d87c305f

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pytket-1.27.0rc0-cp311-cp311-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 33b163e085d046933ffeaa0b61c727ed94c40e6982e60a93ae1f49f5cffacc1b
MD5 d7744420f8c3bf491dcfba90b1c555b0
BLAKE2b-256 17413100cda7dd061b1a26fcb9d3b7b2e7f8bae482e840a5f049f5093b0bea57

See more details on using hashes here.

File details

Details for the file pytket-1.27.0rc0-cp311-cp311-macosx_13_0_arm64.whl.

File metadata

File hashes

Hashes for pytket-1.27.0rc0-cp311-cp311-macosx_13_0_arm64.whl
Algorithm Hash digest
SHA256 12467d02a8fd9c17300a06a469d4b554ff2937fccb405867b688cee1418dc870
MD5 00fe4e8cc56aaa0cfdcee2ffa8416385
BLAKE2b-256 4f88d5852de1d999a7859f480914df5e421bf238b4e58e79e859609966e1c8aa

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pytket-1.27.0rc0-cp311-cp311-macosx_12_0_x86_64.whl
Algorithm Hash digest
SHA256 e27369c31b9dc328ac6465c395d606bc9cc24b4d64b50d833060aab525e50935
MD5 212e15a30043bc6cf218e2da96a7830f
BLAKE2b-256 bf0f82db84181886ced423773972c118bf6284ba0cbd48ac005ca13cfe093504

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pytket-1.27.0rc0-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 1471ddcfff88a5d12fb518eaa1f48726916b13e6790d079e041f853ad984bad6
MD5 a0c7290a8bbcb11a1c48b81644c7f47e
BLAKE2b-256 c0f4eecdae07d81bf13d0a844ca8cb3f60272d1bb9141930baf8a794f7f370e2

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pytket-1.27.0rc0-cp310-cp310-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 cf5e3d7f24030e61a78ea7d5ecfd8b87cf45ff0ac458fbf24dc5799ae8d5d675
MD5 17e50fc39bb5a6e97a92568dc4c99c59
BLAKE2b-256 10b8978bc9e5fc152bb5741f65055f08a3b1f248335840eb223bb2bd696cb83b

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pytket-1.27.0rc0-cp310-cp310-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 2e3dab67a8a53c9ad58891693d1e74ad345a41703c8dfea9ebffea69a211dc8c
MD5 c8ae3c54463f02f68b13b0978a42b9d0
BLAKE2b-256 a9ce33e5ca36d3693f24cf527b20e4cd93f012162e26a814150211148e10a450

See more details on using hashes here.

File details

Details for the file pytket-1.27.0rc0-cp310-cp310-macosx_13_0_arm64.whl.

File metadata

File hashes

Hashes for pytket-1.27.0rc0-cp310-cp310-macosx_13_0_arm64.whl
Algorithm Hash digest
SHA256 78be48df42739f6d02ac2f44a9b7eed54d9d73f4b0e89e2df96e00e39f15b6b6
MD5 0d4971dc0a33fbfdd46c74027de25122
BLAKE2b-256 0fd6c7d6f0fde8cc8c34c61bdd708e9eb9abcf14478b95d9e0d1f6b0f017ee0f

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pytket-1.27.0rc0-cp310-cp310-macosx_12_0_x86_64.whl
Algorithm Hash digest
SHA256 1cc4d26605c79787dbb2446137468255f3a6e2646f925b10243f92dc02cefdb4
MD5 42b86897bb51d7a42e1f5f7ac2046918
BLAKE2b-256 f4f5a1589bb3f8f98edd113c16f37e5a561825f03554b13497a5771fcc622929

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