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

This version

0.7.0

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

If you're not sure about the file name format, learn more about wheel file names.

pytket-0.7.0-cp38-cp38-win_amd64.whl (4.2 MB view details)

Uploaded CPython 3.8Windows x86-64

pytket-0.7.0-cp38-cp38-manylinux2014_x86_64.whl (5.0 MB view details)

Uploaded CPython 3.8

pytket-0.7.0-cp38-cp38-macosx_10_14_x86_64.whl (4.7 MB view details)

Uploaded CPython 3.8macOS 10.14+ x86-64

pytket-0.7.0-cp37-cp37m-win_amd64.whl (4.2 MB view details)

Uploaded CPython 3.7mWindows x86-64

pytket-0.7.0-cp37-cp37m-manylinux2014_x86_64.whl (5.0 MB view details)

Uploaded CPython 3.7m

pytket-0.7.0-cp37-cp37m-macosx_10_14_x86_64.whl (4.7 MB view details)

Uploaded CPython 3.7mmacOS 10.14+ x86-64

pytket-0.7.0-cp36-cp36m-win_amd64.whl (4.2 MB view details)

Uploaded CPython 3.6mWindows x86-64

pytket-0.7.0-cp36-cp36m-manylinux2014_x86_64.whl (5.0 MB view details)

Uploaded CPython 3.6m

pytket-0.7.0-cp36-cp36m-macosx_10_14_x86_64.whl (4.7 MB view details)

Uploaded CPython 3.6mmacOS 10.14+ x86-64

File details

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

File metadata

  • Download URL: pytket-0.7.0-cp38-cp38-win_amd64.whl
  • Upload date:
  • Size: 4.2 MB
  • Tags: CPython 3.8, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.4.2 requests/2.22.0 setuptools/45.2.0 requests-toolbelt/0.8.0 tqdm/4.30.0 CPython/3.8.5

File hashes

Hashes for pytket-0.7.0-cp38-cp38-win_amd64.whl
Algorithm Hash digest
SHA256 0565ad142bf4781f6b3ec09fe4ea1f86e5bc03ea281d75122ebfcc9fa7b67dba
MD5 9c720d32b4f744df3bfeb434e6702214
BLAKE2b-256 a8b0753a9edd06e3b2d0311c68533fa2420bcccf436930e365758948e0108501

See more details on using hashes here.

File details

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

File metadata

  • Download URL: pytket-0.7.0-cp38-cp38-manylinux2014_x86_64.whl
  • Upload date:
  • Size: 5.0 MB
  • Tags: CPython 3.8
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.4.2 requests/2.22.0 setuptools/45.2.0 requests-toolbelt/0.8.0 tqdm/4.30.0 CPython/3.8.5

File hashes

Hashes for pytket-0.7.0-cp38-cp38-manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 4b30baeb62bcb354320e7294480fcf600326fddd126672b8c7eeeda755223136
MD5 037b6e571d128e8820d3444248c3675d
BLAKE2b-256 8cec62d27827e642453d934eb582658e10638b83e337fe905a030b8350268038

See more details on using hashes here.

File details

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

File metadata

  • Download URL: pytket-0.7.0-cp38-cp38-macosx_10_14_x86_64.whl
  • Upload date:
  • Size: 4.7 MB
  • Tags: CPython 3.8, macOS 10.14+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.4.2 requests/2.22.0 setuptools/45.2.0 requests-toolbelt/0.8.0 tqdm/4.30.0 CPython/3.8.5

File hashes

Hashes for pytket-0.7.0-cp38-cp38-macosx_10_14_x86_64.whl
Algorithm Hash digest
SHA256 f0ba5412724feff037b2dc6f590e3cf8c69a177562374085ba0311abc813a847
MD5 dd51311393c8276cff68627caa19a751
BLAKE2b-256 2d34093637e472ee399914ac576da96b43de3c01a19b948b2d170ac133467be2

See more details on using hashes here.

File details

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

File metadata

  • Download URL: pytket-0.7.0-cp37-cp37m-win_amd64.whl
  • Upload date:
  • Size: 4.2 MB
  • Tags: CPython 3.7m, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.4.2 requests/2.22.0 setuptools/45.2.0 requests-toolbelt/0.8.0 tqdm/4.30.0 CPython/3.8.5

File hashes

Hashes for pytket-0.7.0-cp37-cp37m-win_amd64.whl
Algorithm Hash digest
SHA256 6c08dbdc70b9d2f103be805e471fa9550f7e28d35cab9515b04d18b931bdd332
MD5 a2f3d5fd8bef9d8796bb3b6a76184c84
BLAKE2b-256 022ac66fd7a11e84012a8f91e39f4b75d5339b9e1ea248848e990931d02eb857

See more details on using hashes here.

File details

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

File metadata

  • Download URL: pytket-0.7.0-cp37-cp37m-manylinux2014_x86_64.whl
  • Upload date:
  • Size: 5.0 MB
  • Tags: CPython 3.7m
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.4.2 requests/2.22.0 setuptools/45.2.0 requests-toolbelt/0.8.0 tqdm/4.30.0 CPython/3.8.5

File hashes

Hashes for pytket-0.7.0-cp37-cp37m-manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 6555b8b9b9e0cadeeb5d2d831ee0e74033b0b2e24b8216ca22716e86741e1f27
MD5 b7db7f1eb28c28f0e9596fb5dc7f52ae
BLAKE2b-256 a0608525d87219228094af93fdd5e13e665ddaa0c7f0de6fa681892e32ead054

See more details on using hashes here.

File details

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

File metadata

  • Download URL: pytket-0.7.0-cp37-cp37m-macosx_10_14_x86_64.whl
  • Upload date:
  • Size: 4.7 MB
  • Tags: CPython 3.7m, macOS 10.14+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.4.2 requests/2.22.0 setuptools/45.2.0 requests-toolbelt/0.8.0 tqdm/4.30.0 CPython/3.8.5

File hashes

Hashes for pytket-0.7.0-cp37-cp37m-macosx_10_14_x86_64.whl
Algorithm Hash digest
SHA256 882dc60c820a1ce209c4421c441e9093991b4ec55a04151406f7161af9da92f5
MD5 1bbddd7b113f3071174d69fbb3ad7a0a
BLAKE2b-256 4fc35bd6bef37dae970ecb0463af73255a9dd27171037332b399808b5a9e64bb

See more details on using hashes here.

File details

Details for the file pytket-0.7.0-cp36-cp36m-win_amd64.whl.

File metadata

  • Download URL: pytket-0.7.0-cp36-cp36m-win_amd64.whl
  • Upload date:
  • Size: 4.2 MB
  • Tags: CPython 3.6m, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.4.2 requests/2.22.0 setuptools/45.2.0 requests-toolbelt/0.8.0 tqdm/4.30.0 CPython/3.8.5

File hashes

Hashes for pytket-0.7.0-cp36-cp36m-win_amd64.whl
Algorithm Hash digest
SHA256 40bf76d8c706271d9f8ecca04c9012366cef5117598ced4b41fb07c9ec995bb3
MD5 d0196b35dfbcef61d98b146383fca10e
BLAKE2b-256 91c0c9eb70cc94d375b2c83c22a952c9749c16dbea4baf6a6275da2882220ae6

See more details on using hashes here.

File details

Details for the file pytket-0.7.0-cp36-cp36m-manylinux2014_x86_64.whl.

File metadata

  • Download URL: pytket-0.7.0-cp36-cp36m-manylinux2014_x86_64.whl
  • Upload date:
  • Size: 5.0 MB
  • Tags: CPython 3.6m
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.4.2 requests/2.22.0 setuptools/45.2.0 requests-toolbelt/0.8.0 tqdm/4.30.0 CPython/3.8.5

File hashes

Hashes for pytket-0.7.0-cp36-cp36m-manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 ba4713c6a974dcb803c41f59ef6dd58bfca820236df7bb74825d6c8ac50b6c08
MD5 2a09e86102550197b8211c1e6e5498ac
BLAKE2b-256 32e7659d1797a6ada03d504bdf014ac0487aa4825a40c9b35a97c657e6f48ae9

See more details on using hashes here.

File details

Details for the file pytket-0.7.0-cp36-cp36m-macosx_10_14_x86_64.whl.

File metadata

  • Download URL: pytket-0.7.0-cp36-cp36m-macosx_10_14_x86_64.whl
  • Upload date:
  • Size: 4.7 MB
  • Tags: CPython 3.6m, macOS 10.14+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.4.2 requests/2.22.0 setuptools/45.2.0 requests-toolbelt/0.8.0 tqdm/4.30.0 CPython/3.8.5

File hashes

Hashes for pytket-0.7.0-cp36-cp36m-macosx_10_14_x86_64.whl
Algorithm Hash digest
SHA256 bf613d8a49406e2bf46168a1186cc198c8f1aae4e3a76a7e32944f5f52e0d94a
MD5 84a9d049343aa93fa4cd208b84d3118b
BLAKE2b-256 4985671a41d76f844b2261d2850d1eccf1fb664bc73ad51709946610f9b14136

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page