dlyongemallo / qiskit-zx-transpiler

A transpiler pass for Qiskit which uses ZX-Calculus for circuit optimization, implemented using PyZX.
Apache License 2.0
1 stars 0 forks source link

use the "ground" operation in PyZX to handle hybrid quantum-classical circuits #18

Open dlyongemallo opened 6 months ago

dlyongemallo commented 6 months ago

Right now, the transpiler separates operations natively supported in PyZX from those which aren't, optimises the subset which is supported, and then splices everything back together. In particular, this is a common pattern: circuit = [A, measure, B, conditional subcircuit], where only A and B are optimised.

It might be possible to handle the measure and conditional subcircuit parts using the "ground" operation in PyZX.

See this paper for details: https://arxiv.org/abs/2109.06071

dlyongemallo commented 2 months ago

This is blocked by pyzx not being able to convert "ground"s into measurements and classically-conditioned gates when extracting circuits.