def test_decompose_two_qubit_interaction_into_two_b_gates(obj: Any): circuit = cirq.Circuit( _decompose_two_qubit_interaction_into_two_b_gates( obj, qubits=cirq.LineQubit.range(2))) desired_unitary = obj if isinstance(obj, np.ndarray) else cirq.unitary(obj) for operation in circuit.all_operations(): assert len(operation.qubits) < 2 or operation.gate == _B assert cirq.approx_eq(cirq.unitary(circuit), desired_unitary, atol=1e-6)
def test_decompose_two_qubit_interaction_into_two_b_gates(obj: Any): circuit = cirq.Circuit( _decompose_two_qubit_interaction_into_two_b_gates( obj, qubits=cirq.LineQubit.range(2))) desired_unitary = obj if isinstance(obj, np.ndarray) else cirq.unitary(obj) assert cirq.approx_eq(cirq.unitary(circuit), desired_unitary, atol=1e-6)