|View source on GitHub|
Implements action of multi-controlled unitary gate.
cirq.optimizers.decompose_multi_controlled_rotation( matrix: np.ndarray, controls: List['cirq.Qid'], target: "cirq.Qid" ) -> List['cirq.Operation']
Returns a sequence of operations, which is equivalent to applying
single-qubit gate with matrix
target, controlled by
Result is guaranteed to consist exclusively of 1-qubit, CNOT and CCNOT gates.
If matrix is special unitary, result has length
Otherwise result has length
 Barenco, Bennett et al. Elementary gates for quantum computation. 1995. https://arxiv.org/pdf/quant-ph/9503016.pdf
|matrix - 2x2 numpy unitary matrix (of real or complex dtype). controls - control qubits. targets - target qubits.|
A list of operations which, applied in a sequence, are equivalent to