Pushes Z gates towards the end of the circuit.

Used in the notebooks

Used in the tutorials

As the Z gates get pushed they may absorb other Z gates, get absorbed into measurements, cross CZ gates, cross PhasedXPowGate (aka W) gates (by phasing them), etc.

circuit Input circuit to transform.
context cirq.TransformerContext storing common configurable options for transformers.
atol Maximum absolute error tolerance. The optimization is permitted to simply drop negligible combinations of Z gates, with a threshold determined by this tolerance.
eject_parameterized If True, the optimization will attempt to eject parameterized Z gates as well. This may result in other gates parameterized by symbolic expressions.

Copy of the transformed input circuit.