Example #1
0
 def _unitary_(self) -> np.ndarray:
     mat = np.eye(2)
     qubit = named_qubit.NamedQubit('arbitrary')
     for op in op_tree.flatten_op_tree(self.default_decompose((qubit, ))):
         mat = protocols.unitary(op).dot(mat)
     return mat
Example #2
0
 def _unitary_(self) -> np.ndarray:
     mat = np.eye(2)
     qubit = named_qubit.NamedQubit('arbitrary')
     for op in protocols.decompose_once_with_qubits(self, (qubit, )):
         mat = protocols.unitary(op).dot(mat)
     return mat