cirq.phase_flip

cirq.phase_flip(p: Optional[float] = None) → Union[cirq.ops.common_gates.ZPowGate, cirq.ops.common_channels.PhaseFlipChannel][source]
Returns a PhaseFlipChannel that flips a qubit’s phase with probability p
if p is None, return a guaranteed phase flip in the form of a Z
operation.

This channel evolves a density matrix via:

$$ \rho \rightarrow M_0 \rho M_0^\dagger + M_1 \rho M_1^\dagger $$
With:

$$ \begin{aligned} M_0 =& \sqrt{p} \begin{bmatrix} 1 & 0 \newline 0 & 1 \end{bmatrix} \newline M_1 =& \sqrt{1-p} \begin{bmatrix} 1 & 0 \newline 0 & -1 \end{bmatrix} \end{aligned} $$

Parameters:p – the probability of a phase flip.
Raises:ValueError – if p is not a valid probability.