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

Uploaded CPython 3.9 Windows x86-64

pytket-0.12.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (5.6 MB view details)

Uploaded CPython 3.9 manylinux: glibc 2.17+ x86-64

pytket-0.12.0-cp39-cp39-macosx_10_14_x86_64.whl (5.2 MB view details)

Uploaded CPython 3.9 macOS 10.14+ x86-64

pytket-0.12.0-cp38-cp38-win_amd64.whl (4.5 MB view details)

Uploaded CPython 3.8 Windows x86-64

pytket-0.12.0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (5.6 MB view details)

Uploaded CPython 3.8 manylinux: glibc 2.17+ x86-64

pytket-0.12.0-cp38-cp38-macosx_10_14_x86_64.whl (5.2 MB view details)

Uploaded CPython 3.8 macOS 10.14+ x86-64

pytket-0.12.0-cp37-cp37m-win_amd64.whl (4.5 MB view details)

Uploaded CPython 3.7m Windows x86-64

pytket-0.12.0-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (5.6 MB view details)

Uploaded CPython 3.7m manylinux: glibc 2.17+ x86-64

pytket-0.12.0-cp37-cp37m-macosx_10_14_x86_64.whl (5.1 MB view details)

Uploaded CPython 3.7m macOS 10.14+ x86-64

File details

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

File metadata

  • Download URL: pytket-0.12.0-cp39-cp39-win_amd64.whl
  • Upload date:
  • Size: 4.5 MB
  • Tags: CPython 3.9, 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.12.0-cp39-cp39-win_amd64.whl
Algorithm Hash digest
SHA256 248c2eed8cc47e2a4e2a032a3fab4928171c62a3302828761ee72d61ec7c77ae
MD5 4d46488a6a7caa88e76d78667cb7e821
BLAKE2b-256 2dc79e726fa6fa702c3756bbdbe17ab61f2abab5f505acc64b621a5b0b273ea3

See more details on using hashes here.

File details

Details for the file pytket-0.12.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for pytket-0.12.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 fb21e6255492b7b7505c5576eae8776980c0b75d490ebf22ff6a97c8f499a6b0
MD5 0e15dc462906dcfee2d4bec8b84564da
BLAKE2b-256 3d69656d8723a162c8b6886b84f32d4322dd641f6d37314f8d873444141366ad

See more details on using hashes here.

File details

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

File metadata

  • Download URL: pytket-0.12.0-cp39-cp39-macosx_10_14_x86_64.whl
  • Upload date:
  • Size: 5.2 MB
  • Tags: CPython 3.9, 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.12.0-cp39-cp39-macosx_10_14_x86_64.whl
Algorithm Hash digest
SHA256 a9fa041d5b61c28a0d5e6e1946e4fb1a8ca8f5ef703fc5dfd0e09b2fe858e240
MD5 2e9990e3f99d1bd2cdd59e099cd74168
BLAKE2b-256 5acf5f18124df676ad6a04313a5cfd8aa8e8daa1556f180e5492d606ff4d03d3

See more details on using hashes here.

File details

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

File metadata

  • Download URL: pytket-0.12.0-cp38-cp38-win_amd64.whl
  • Upload date:
  • Size: 4.5 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.12.0-cp38-cp38-win_amd64.whl
Algorithm Hash digest
SHA256 85a2b7f3638420dd7cc4b158666078b477b5915501c4c7507ac7f1513926bf51
MD5 58189b41e3536e43bce432197f7e4267
BLAKE2b-256 ff7bfcc4a0fb7f1f80f1dac0fba05a4201a7c7320ebec1456495855bb796f523

See more details on using hashes here.

File details

Details for the file pytket-0.12.0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for pytket-0.12.0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 bf16bed05ccf391c35bf905356b2ce31de617fbc3f6321200abe29d2e5ef8589
MD5 45f9f346c8320ed99b4e572423d66b22
BLAKE2b-256 25221d11292749b84f35cef965698c116922ddad0aeb423ea813f27920ce4820

See more details on using hashes here.

File details

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

File metadata

  • Download URL: pytket-0.12.0-cp38-cp38-macosx_10_14_x86_64.whl
  • Upload date:
  • Size: 5.2 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.12.0-cp38-cp38-macosx_10_14_x86_64.whl
Algorithm Hash digest
SHA256 ebef20d6623180d141e376c0d674d123a38575b610d6d1147231c993b825ee92
MD5 a07a2d40c1e935bc18eccc5a48e80b12
BLAKE2b-256 66be718dc73d9997b622f64d4f0e049cb75f51bf3990fb7ad5611c067ef347ff

See more details on using hashes here.

File details

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

File metadata

  • Download URL: pytket-0.12.0-cp37-cp37m-win_amd64.whl
  • Upload date:
  • Size: 4.5 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.12.0-cp37-cp37m-win_amd64.whl
Algorithm Hash digest
SHA256 767754c277a1e88b5073514da760516188013320ddae3018aba025d2370135ff
MD5 2a59c2f067afd334e086f637d8d3ea52
BLAKE2b-256 59d7f2634a5615e204c40a686bd4c714a71b87761f0d2f0cf19f8ca977c97193

See more details on using hashes here.

File details

Details for the file pytket-0.12.0-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for pytket-0.12.0-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 5225fe57ed99031664890bc59d6907baed42f5c14bebe020af1a718256c1ab33
MD5 cc797dfc5c1224e6d016e1733c3e843e
BLAKE2b-256 2d259bf07df9c90f2567af276fc5171685632e10d38044210a4ec1c534171fc4

See more details on using hashes here.

File details

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

File metadata

  • Download URL: pytket-0.12.0-cp37-cp37m-macosx_10_14_x86_64.whl
  • Upload date:
  • Size: 5.1 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.12.0-cp37-cp37m-macosx_10_14_x86_64.whl
Algorithm Hash digest
SHA256 4a1d09016d7a6d1f2235642db37276aed2d2b3c2a8e656fecc319d5917f65058
MD5 8c519e5708ed27f7e4215ba507a0565c
BLAKE2b-256 7df9fe11ce17d9548b78ead93cc9792e2f9298109ce3ad8350bd36bd8e2e7a14

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