|View source on GitHub|
Pushes X, Y, and PhasedX gates towards the end of the circuit.
cirq.optimizers.EjectPhasedPaulis( tolerance: float = 1e-08, eject_parameterized: bool = False ) -> None
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).
||Maximum absolute error tolerance. The optimization is permitted to simply drop negligible combinations gates with a threshold determined by this tolerance.|
||If True, the optimization will attempt to eject parameterized gates as well. This may result in other gates parameterized by symbolic expressions.|