What is TKET?
TKET is an advanced software development kit for the creation and execution of programs for gate-based quantum computers. It is platform-inclusive, and its state-of-the-art circuit optimization routines allow users to extract as much power as possible from any of today’s Noisy Intermediate-Scale Quantum (NISQ) devices. TKET is open source and easily accessible through the PyTKET Python package, with extension modules providing compatibility with many quantum computers, classical simulators, and popular quantum software libraries.
TKET can automatically handle many of the idiosyncrasies of NISQ devices, lowering the barrier to working with quantum computers. It enables users to build circuits without worrying about the device architecture, and to use a far larger and more expressive gateset than available natively on any device. As well as reducing circuit size, TKET also provides tools to reduce noise in NISQ devices and improve overall performance. These features free users to focus on their projects and avoid getting lost in low-level programming.
Across multiple platforms
Today, TKET is enabling our partners, collaborators and clients to work effortlessly across multiple platforms and to tackle some of the most challenging problems in finance, chemistry, material science, AI, and optimization.
TKET is platform-inclusive, both in the input language and the target device. It can act as a cross-compiler, translating programs written for one platform to a totally different one. This enables developers and researchers to reuse software, and easily rerun experiments on new hardware, with minimal code changes, and without sacrificing performance. TKET future-proofs high-level solutions as developers can react instantly to the availability of newer and better quantum hardware. TKET also provides high-level operations relevant to specific problems domains, allowing developers to work at a higher level of abstraction, without sacrificing the ability to target particular systems or devices.
Quantum hardware imposes many restrictions which require that circuits have a specific form, otherwise they cannot run. Every device supports only a limited set of quantum gates. Many devices permit multi-qubit operations only between specific pairs of qubits, while others impose unpredictable performance penalties if a gate involves the “wrong” qubits.
TKET’s class-leading circuit layout, qubit routing, and gate synthesis routines automatically ensure that the compiled quantum circuits adhere to restrictions imposed by the quantum hardware, and do so with the minimum performance overhead.
Extension modules are available for interfacing TKET with a number of popular quantum software packages, including Qiskit, Cirq, Pennylane and pyQuil. They target an array of devices, including those provided by IBMQ, Google, Rigetti and Honeywell and utilize highly optimized classical simulators such as Stim and Qulacs. A uniform interface connects with supported backends, allowing for their seamless insertion into high-level code.