cirq.optimizers.EjectPhasedPaulis

Pushes X, Y, and PhasedX gates towards the end of the circuit.

As the gates get pushed, they may absorb Z gates, cancel against other X, Y, or PhasedX gates with exponent=1, get merged into measurements (as output bit flips), and cause phase kickback operations across CZs (which can then be removed by the EjectZ optimization).

tolerance Maximum absolute error tolerance. The optimization is permitted to simply drop negligible combinations gates with a threshold determined by this tolerance.
eject_parameterized If True, the optimization will attempt to eject parameterized gates as well. This may result in other gates parameterized by symbolic expressions.

Methods

optimize_circuit

View source