Hybrid quantum-classical circuit simplification with the ZX-calculus
arXiv:2109.06071 · doi:10.1007/978-3-030-89051-3_8
Abstract
We present a complete optimization procedure for hybrid quantum-classical circuits with classical parity logic. While common optimization techniques for quantum algorithms focus on rewriting solely the pure quantum segments, there is interest in applying a global optimization process for applications such as quantum error correction and quantum assertions. This work, based on the pure-quantum circuit optimization procedure by Duncan et al., uses an extension of the formal graphical ZX-calculus called ZX-ground as an intermediary representation of the hybrid circuits to allow for granular optimizations below the quantum-gate level. We define a translation from hybrid circuits into diagrams that admit the graph-theoretical focused-gFlow property, needed for the final extraction back into a circuit. We then derive a number of gFlow-preserving optimization rules for ZX-ground diagrams that reduce the size of the graph, and devise an strategy to find optimization opportunities by rewriting the diagram guided by a Gauss elimination process. Then, after extracting the circuit, we present a general procedure for detecting segments of circuit-like ZX-ground diagrams which can be implemented with classical gates in the extracted circuit. We have implemented our optimization procedure as an extension to the open-source python library PyZX.
arXiv comment28 pages, to be published in the APLAS 2021 conference proceedings
References in corpus (16)
- ProjectQ: An Open Source Software Framework for Quantum Computing
- Polynomial-time T-depth Optimization of Clifford+T circuits via Matroid Partitioning
- Quantum circuits of T-depth one
- Graph-theoretic Simplification of Quantum Circuits with the ZX-calculus
- Reducing T-count with the ZX-calculus
- Quipper: A Scalable Quantum Programming Language
- An introduction to measurement based quantum computation
- PyZX: Large Scale Automated Diagrammatic Reasoning
- The ZX calculus is a language for surface code lattice surgery
- Verifying the Steane code with Quantomatic
- ZX-calculus for the working quantum computer scientist
- cQASM v1.0: Towards a Common Quantum Assembly Language
- Which graph states are useful for quantum information processing?
- Graphical Structures for Design and Verification of Quantum Error Correction
- Quantum Circuits for Dynamic Runtime Assertions in Quantum Computation
- Finite Verification of Infinite Families of Diagram Equations