I know that I can just use the $RZ$ gate to replace the $PH$ phase gate. But I need a way to implement the controlled phase gate $C-PH$ this cannot just be replaced with a $CRZ$ gate.

  • $\begingroup$ Could you expand your question? Not sure what you are confused by. $\endgroup$
    – AHusain
    Commented Aug 8, 2019 at 12:41
  • 1
    $\begingroup$ to do an $RZ$ on google cirq I can use cirq.ops.common_gates.Rz. I didn't find any way to do a phase gate on google cirq, so I just replaced all of my phase gates into $RZ$ gates. Now that I have controlled phase gates, I don't know how to implement that on google cirq because even though an RZ does the same as a Phase gate, the controlled version don't, because the controlled version of a gate does change with global phase shifts. $\endgroup$ Commented Aug 8, 2019 at 12:56
  • 1
    $\begingroup$ Can you not compensate with RZ on each of the two qubits? $\endgroup$
    – DaftWullie
    Commented Aug 8, 2019 at 13:21
  • $\begingroup$ I could, but I came here to find the minimal amount of gate, or some kind of workaround like if it was possible to define my own abstract gate in google cirq. $\endgroup$ Commented Aug 8, 2019 at 13:27
  • $\begingroup$ the documentation mentions circ.CZ, and the possibility to use it to do things like cirq.CZ**t $\endgroup$
    – DaftWullie
    Commented Aug 8, 2019 at 14:35

1 Answer 1



or equivalently

cirq.CZ(control_qubit, target_qubit)**(t / pi)


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.