Adder and other arithmetic circuits can be made cheaper using measurement-based uncompute techniques. These involve measuring an ancilla qubit and cleaning a kickback phase instead of doing actual full unitary uncompute.
The measurements lead to small amounts of branching in circuits which make them efficiently simulable. This is quite important for us to be able to validate adder constructions, particularly once we start to include complex features such as bridge qubits and auto-correction gadgets.
Circuits in the class of arithmetic + measurement based uncompute are known as "kickmix" circuits and are described/defined here:
Google's ECC work
page 56, subsection 4
Techniques for efficient evaluation and validation of them via classical simulation are described here: Gidney post
I would like us to consider incorporating a kickmix circuit simulation backend, perhaps with ppvm if they are compatible, and an evaluation of how ambitious simulations of auto-corrected measurement-uncompute adder circuits we could do: here goes a quirk example for concreteness
Adder and other arithmetic circuits can be made cheaper using measurement-based uncompute techniques. These involve measuring an ancilla qubit and cleaning a kickback phase instead of doing actual full unitary uncompute.
The measurements lead to small amounts of branching in circuits which make them efficiently simulable. This is quite important for us to be able to validate adder constructions, particularly once we start to include complex features such as bridge qubits and auto-correction gadgets.
Circuits in the class of arithmetic + measurement based uncompute are known as "kickmix" circuits and are described/defined here:
Google's ECC work
page 56, subsection 4
Techniques for efficient evaluation and validation of them via classical simulation are described here: Gidney post
I would like us to consider incorporating a kickmix circuit simulation backend, perhaps with ppvm if they are compatible, and an evaluation of how ambitious simulations of auto-corrected measurement-uncompute adder circuits we could do: here goes a quirk example for concreteness