# cirq.PhaseFlipChannel¶

class cirq.PhaseFlipChannel(p)[source]

Probabilistically flip the sign of the phase of a qubit.

__init__(p) → None[source]

The phase flip channel.

Construct a channel to flip the phase with probability p.

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{1 - p} \begin{bmatrix} 1 & 0 \newline 0 & 1 \end{bmatrix} \newline M_1 =& \sqrt{p} \begin{bmatrix} 1 & 0 \newline 0 & -1 \end{bmatrix} \end{aligned}

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

Methods

 controlled_by(*control_qubits) Returns a controlled version of this gate. num_qubits() The number of qubits this gate acts on. on(*qubits) Returns an application of this gate to the given qubits. on_each(*targets) Returns a list of operations apply this gate to each of the targets. validate_args(qubits) Checks if this gate can be applied to the given qubits. wrap_in_linear_combination(coefficient, …)