Circuit Knitting Toolbox

Circuit Knitting is the process of decomposing a quantum circuit into smaller circuits, executing those smaller circuits on a quantum processor(s), and then knitting their results into a reconstruction of the original circuit’s outcome. Circuit knitting includes techniques such as entanglement forging, circuit cutting, and classical embedding. The Circuit Knitting Toolbox (CKT) is a collection of such tools.

Each tool in the CKT partitions a user’s problem into quantum and classical components to enable efficient use of resources constrained by scaling limits, i.e. size of quantum processors and classical compute capability. It is designed to work seamlessly with the Quantum Serverless framework, which enables users to run parallelized and hybrid (quantum + classical) workloads without worrying about allocating and managing underlying infrastructure.

The toolbox currently contains the following tools:

  • Circuit Cutting

  • Entanglement Forging

The source code to the toolbox is available on GitHub.

Note

The Quantum Serverless framework is documented separately, as it lives in its own repository. Check out Entanglement Forging Tutorial 2: Forging with Quantum Serverless and CutQC Tutorial 3: Circuit Cutting with Quantum Serverless for examples on how to integrate Quantum Serverless into circuit knitting workflows.

This project is meant to evolve rapidly and, as such, does not follow Qiskit’s deprecation policy. We may occasionally make breaking changes in order to improve the user experience. When possible, we will keep old interfaces and mark them as deprecated, as long as they can co-exist with the new ones. Each substantial improvement, breaking change, or deprecation will be documented in the Release Notes.

Citing this project

If you use the Circuit Knitting Toolbox in your research, please cite it according to CITATON.bib file included in this repository:

@misc{circuit-knitting-toolbox,
  author = {Luciano Bello and Agata M. Bra\'{n}czyk and Sergey Bravyi and Almudena {Carrera Vazquez} and Andrew Eddins and Daniel J. Egger and Bryce Fuller and Julien Gacon and James R. Garrison and Jennifer R. Glick and Tanvi P. Gujarati and Ikko Hamamura and Areeq I. Hasan and Takashi Imamichi and Caleb Johnson and Ieva Liepuoniute and Owen Lockwood and Mario Motta and C. D. Pemmaraju and Pedro Rivero and Max Rossmannek and Travis L. Scholten and Seetharami Seelam and Iskandar Sitdikov and Dharmashankar Subramanian and Wei Tang and Stefan Woerner},
  title = {{Circuit Knitting Toolbox}},
  howpublished = {\url{https://github.com/Qiskit-Extensions/circuit-knitting-toolbox}},
  year = {2023},
  doi = {10.5281/zenodo.7987997}
}

Contents