# CPHASE¶

pyquil.gates.CPHASE(angle, control, target)[source]

Produces a controlled-phase instruction:

CPHASE(phi) = diag([1, 1, 1, exp(1j * phi)])


This gate applies to two qubit arguments to produce the variant of the controlled phase instruction that affects the state 11.

Compare with the CPHASExx variants. This variant is the most common and does not have a suffix, although you can think of it as CPHASE11.

Parameters: angle (Union[Expression, MemoryReference, int64, int, float, complex]) – The input phase angle to apply when both qubits are in the |1> state. control (Union[Qubit, QubitPlaceholder, int]) – Qubit 1. target (Union[Qubit, QubitPlaceholder, int]) – Qubit 2. Gate A Gate object.