Circuit cutting¶
This package implements circuit cutting. In this technique, a handful of gates and/or wires are cut, resulting in smaller circuits that are better suited for execution on hardware. The result of the original circuit can then be reconstructed; however, the trade-off is that the overall number of shots must be increased by a factor exponential in the number of cuts.
For a more detailed discussion on circuit cutting, check out our technical guide.
We follow semantic versioning and are guided by the principles in 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.
Note
This package was known as the Circuit Knitting Toolbox prior to September 2024.
Citing this project¶
If you use this package in your research, please cite it according to the [CITATON.bib](CITATION.bib) file included in this repository.
If you are using the entanglement forging tool in Circuit Knitting Toolbox version 0.5 or earlier, please use an older version of the citation file, which includes the authors of that tool.
If you are using the CutQC tool in Circuit Knitting Toolbox version 0.7 or earlier, please use an older version of the citation file, which includes the authors of that tool.
Developer guide¶
The source code to this package is available on GitHub.
The developer guide is located at CONTRIBUTING.md.
Contents¶
- Documentation Home
- Installation Instructions
- Tutorials
- Explanatory Material
- Overview of circuit cutting
- Key terms
- Circuit cutting as a quasiprobability decomposition (QPD)
- An example: cutting a
RZZGate - More general cut two-qubit gates via the KAK decomposition
- Wire cutting phrased as a two-qubit
Moveoperation - Sample weights in the Qiskit addon for circuit cutting
- Sampling overhead reference table
- Current limitations
- References
- How-To Guides
- API References
- Circuit cutting (
qiskit_addon_cutting) - Instructions (
qiskit_addon_cutting.instructions) - Quasi-Probability Decomposition (QPD) (
qiskit_addon_cutting.qpd) - Bitwise utilities (
qiskit_addon_cutting.utils.bitwise) - Iteration utilities (
qiskit_addon_cutting.utils.iteration) - Observable grouping (
qiskit_addon_cutting.utils.observable_grouping) - Observable terms (
qiskit_addon_cutting.utils.observable_terms) - Simulation utilities (
qiskit_addon_cutting.utils.simulation) - Transforms (
qiskit_addon_cutting.utils.transforms) - Transpiler passes (
qiskit_addon_cutting.utils.transpiler_passes)
- Circuit cutting (
- GitHub
- Release Notes