Skip to main content

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

Project description

PyPI version Binder

pytket is a python module for interfacing with CQC tket, a set of quantum programming tools.

This repo contains API documentation and example notebooks to get you started using pytket. It does not contain source code.

Getting Started

pytket is available for python3.7 or higher, on Linux, MacOS and Windows. To install, ensure that you have pip version 19 or above, and run

pip install pytket

Note: attempting to install from source will not set up the required binaries for the tket compiler, so we recommend the PyPI installation.

See the Getting Started page for a quick introduction to using pytket.

Documentation can be found at cqcl.github.io/pytket

To get more in depth on features, see the examples.

Interfaces

We currently support circuits and device architectures from Google Cirq, IBM Qiskit, Pyzx, ProjectQ, Rigetti pyQuil, AQT, Honeywell, Microsoft QDK, Amazon Braket, and Qulacs, allowing the tket tools to be used in conjunction with projects on these platforms.

To use pytket in conjunction with other platforms you must download an additional separate module for each. This can be done from pip.

For each subpackage:

  • Qiskit: pip install pytket-qiskit
  • Cirq: pip install pytket-cirq
  • PyQuil: pip install pytket-pyquil
  • ProjectQ: pip install pytket-projectq
  • PyZX: pip install pytket-pyzx
  • AQT: pip install pytket-aqt
  • Honeywell: pip install pytket-honeywell
  • Q#: pip install pytket-qsharp
  • Braket: pip install pytket-braket
  • Qulacs: pip install pytket-qulacs

LICENCE

Copyright 2019-2021 Cambridge Quantum Computing

You may not use this product except in compliance with the Licence. You may obtain a copy of the Licence in the LICENCE file accompanying these documents or view them here.

How To Cite

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:

We are also keen for others to benchmark their compilation techniques against us. We recommend checking our benchmark repository for examples on how to run basic benchmarks with the latest version of pytket. Please list the release version of pytket with any benchmarks you give, and feel free to get in touch for any assistance needed in setting up fair and representative tests.

Telemetry

pytket features a telemetry module which can be used to keep track of pyktet usage and will provide usage analytics and error reporting at a later date. Telemetry is disabled by default, but may be enabled either through function calls or in the pytket configuration file.

In order to opt in to telemetry a helper function is provided in the pytket.telemetry module that need only be run once.

from pytket import telemetry
telemetry.opt_in()

Similarly the opt_out function will allow a user to opt out.

Alternatively the config file located either at $HOME/.config/pytket/config.json or $XDG_CONFIG_HOME/pytket/config.json if $XDG_CONFIG_HOME is set can be edited manually.

Once a user has opted in to telemetry they will be assigned a telemetry ID by making an HTTP request to a CQC server with some information about their system.

Telemetry Data Policy

Our telemetry data policy can be viewed here.

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-0.10.0-cp39-cp39-win_amd64.whl (4.3 MB view details)

Uploaded CPython 3.9 Windows x86-64

pytket-0.10.0-cp39-cp39-manylinux2014_x86_64.whl (5.3 MB view details)

Uploaded CPython 3.9

pytket-0.10.0-cp39-cp39-macosx_10_14_x86_64.whl (4.9 MB view details)

Uploaded CPython 3.9 macOS 10.14+ x86-64

pytket-0.10.0-cp38-cp38-win_amd64.whl (4.4 MB view details)

Uploaded CPython 3.8 Windows x86-64

pytket-0.10.0-cp38-cp38-manylinux2014_x86_64.whl (5.3 MB view details)

Uploaded CPython 3.8

pytket-0.10.0-cp38-cp38-macosx_10_14_x86_64.whl (4.9 MB view details)

Uploaded CPython 3.8 macOS 10.14+ x86-64

pytket-0.10.0-cp37-cp37m-win_amd64.whl (4.4 MB view details)

Uploaded CPython 3.7m Windows x86-64

pytket-0.10.0-cp37-cp37m-manylinux2014_x86_64.whl (5.3 MB view details)

Uploaded CPython 3.7m

pytket-0.10.0-cp37-cp37m-macosx_10_14_x86_64.whl (4.9 MB view details)

Uploaded CPython 3.7m macOS 10.14+ x86-64

File details

Details for the file pytket-0.10.0-cp39-cp39-win_amd64.whl.

File metadata

  • Download URL: pytket-0.10.0-cp39-cp39-win_amd64.whl
  • Upload date:
  • Size: 4.3 MB
  • Tags: CPython 3.9, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.1 importlib_metadata/4.0.1 pkginfo/1.7.0 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.60.0 CPython/3.8.8

File hashes

Hashes for pytket-0.10.0-cp39-cp39-win_amd64.whl
Algorithm Hash digest
SHA256 5575ef781a48b160095313b6b6ef90c1f4823dea4615c91922f9dc6cd9afac03
MD5 04eafd6c18258b84878eba1b45d395e6
BLAKE2b-256 06290fb4e1778f60a9c82dca4639032088d32829a2ccb4c0a8483a6763b304f1

See more details on using hashes here.

File details

Details for the file pytket-0.10.0-cp39-cp39-manylinux2014_x86_64.whl.

File metadata

  • Download URL: pytket-0.10.0-cp39-cp39-manylinux2014_x86_64.whl
  • Upload date:
  • Size: 5.3 MB
  • Tags: CPython 3.9
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.1 importlib_metadata/4.0.1 pkginfo/1.7.0 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.60.0 CPython/3.8.8

File hashes

Hashes for pytket-0.10.0-cp39-cp39-manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 85cdeffddf3f27d45de246e697e7ecb9df4ac959e57d109e3e82109f6824ce38
MD5 3153ea4988f2d144c7fa05e0525ae1a0
BLAKE2b-256 450d8964e83039541edfb817e8bf8d11f0a9dfef61f68f1a6fab3861fbdc4eaf

See more details on using hashes here.

File details

Details for the file pytket-0.10.0-cp39-cp39-macosx_10_14_x86_64.whl.

File metadata

  • Download URL: pytket-0.10.0-cp39-cp39-macosx_10_14_x86_64.whl
  • Upload date:
  • Size: 4.9 MB
  • Tags: CPython 3.9, macOS 10.14+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.1 importlib_metadata/4.0.1 pkginfo/1.7.0 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.60.0 CPython/3.8.8

File hashes

Hashes for pytket-0.10.0-cp39-cp39-macosx_10_14_x86_64.whl
Algorithm Hash digest
SHA256 81376c5afe6f1c7062667ed70e6ce38bb60ade80497714a1b40389c89ca3ab48
MD5 6904c935d6bfa0c4346d4ad287709358
BLAKE2b-256 be15a055f6ab3331e546e14462d006a0055ca6be20f89cf6ca714093f2b281a7

See more details on using hashes here.

File details

Details for the file pytket-0.10.0-cp38-cp38-win_amd64.whl.

File metadata

  • Download URL: pytket-0.10.0-cp38-cp38-win_amd64.whl
  • Upload date:
  • Size: 4.4 MB
  • Tags: CPython 3.8, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.1 importlib_metadata/4.0.1 pkginfo/1.7.0 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.60.0 CPython/3.8.8

File hashes

Hashes for pytket-0.10.0-cp38-cp38-win_amd64.whl
Algorithm Hash digest
SHA256 2aeb62018e3483ec2615244515ef0fb8bfc17a7d23f84636dbba9f2846d8954b
MD5 a3f1f3cebe51b99ac57b9cd86d39239f
BLAKE2b-256 92229254b4fcdd88c3b1037b0bf29794223166e8979ecd1ccc35823a5db6120e

See more details on using hashes here.

File details

Details for the file pytket-0.10.0-cp38-cp38-manylinux2014_x86_64.whl.

File metadata

  • Download URL: pytket-0.10.0-cp38-cp38-manylinux2014_x86_64.whl
  • Upload date:
  • Size: 5.3 MB
  • Tags: CPython 3.8
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.1 importlib_metadata/4.0.1 pkginfo/1.7.0 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.60.0 CPython/3.8.8

File hashes

Hashes for pytket-0.10.0-cp38-cp38-manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 91286acfa411f6ba71b04331dcae3416ca948f9692e7e9f5d286d2f3fe5dd9f1
MD5 9d9cb076593c4748201ada9640be4f3e
BLAKE2b-256 3da9f33bc1aa1b378043c9b1f7e5edbbc18e013e9b7d2c8b8475a8039b1f81a7

See more details on using hashes here.

File details

Details for the file pytket-0.10.0-cp38-cp38-macosx_10_14_x86_64.whl.

File metadata

  • Download URL: pytket-0.10.0-cp38-cp38-macosx_10_14_x86_64.whl
  • Upload date:
  • Size: 4.9 MB
  • Tags: CPython 3.8, macOS 10.14+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.1 importlib_metadata/4.0.1 pkginfo/1.7.0 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.60.0 CPython/3.8.8

File hashes

Hashes for pytket-0.10.0-cp38-cp38-macosx_10_14_x86_64.whl
Algorithm Hash digest
SHA256 06e7288df16b80ad15ff96a2dc24c293f736af171207b4c44e4b25c59225c13d
MD5 f738664b71b129a814ba7f7a9da07f14
BLAKE2b-256 7f5511937a921477c18c1262cffec078ddb018392fd447d9d23a359cc6c4aacf

See more details on using hashes here.

File details

Details for the file pytket-0.10.0-cp37-cp37m-win_amd64.whl.

File metadata

  • Download URL: pytket-0.10.0-cp37-cp37m-win_amd64.whl
  • Upload date:
  • Size: 4.4 MB
  • Tags: CPython 3.7m, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.1 importlib_metadata/4.0.1 pkginfo/1.7.0 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.60.0 CPython/3.8.8

File hashes

Hashes for pytket-0.10.0-cp37-cp37m-win_amd64.whl
Algorithm Hash digest
SHA256 8585230b7e6e39256b8bf9ffb16ac504dc635f42424527db0c07a5d40bd00476
MD5 488945665beb29296897583ddeedc1b1
BLAKE2b-256 62a77907935d210a952afc344df9b73cd2874182410d5bcebc0bc4d925e10fee

See more details on using hashes here.

File details

Details for the file pytket-0.10.0-cp37-cp37m-manylinux2014_x86_64.whl.

File metadata

  • Download URL: pytket-0.10.0-cp37-cp37m-manylinux2014_x86_64.whl
  • Upload date:
  • Size: 5.3 MB
  • Tags: CPython 3.7m
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.1 importlib_metadata/4.0.1 pkginfo/1.7.0 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.60.0 CPython/3.8.8

File hashes

Hashes for pytket-0.10.0-cp37-cp37m-manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 2c2e6da0eabb03e55df6201812cb0c2d768f2f5dc04287b14367858eaae559b4
MD5 5aeb7a319a7f9a368d1bcb8046552291
BLAKE2b-256 8e2409c62de46ee6a5fcc2128d5de81c559df6149041b2b9feebd9c737ae9c5f

See more details on using hashes here.

File details

Details for the file pytket-0.10.0-cp37-cp37m-macosx_10_14_x86_64.whl.

File metadata

  • Download URL: pytket-0.10.0-cp37-cp37m-macosx_10_14_x86_64.whl
  • Upload date:
  • Size: 4.9 MB
  • Tags: CPython 3.7m, macOS 10.14+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.1 importlib_metadata/4.0.1 pkginfo/1.7.0 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.60.0 CPython/3.8.8

File hashes

Hashes for pytket-0.10.0-cp37-cp37m-macosx_10_14_x86_64.whl
Algorithm Hash digest
SHA256 7ba43837b7eadac91d14ef2354d56286256f7a0b7a92405383bd81dfbccaabe1
MD5 e1f4bd1269bc0473117b55d6fc9b79c9
BLAKE2b-256 d88b75bcc9fc86962227efebab1a992b6901c38b8c428975189f30d1937b5d69

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