示例#1
0
 def test_type_invalid(self, circuit: Circuit, op: Operation) -> None:
     try:
         circuit.check_valid_operation(op)
     except TypeError:
         return
     except BaseException:
         assert False, 'Unexpected Exception.'
示例#2
0
 def test_radix_mismatch_2(self, qutrit_gate: Gate) -> None:
     circuit = Circuit(qutrit_gate.get_size())
     location = list(range(qutrit_gate.get_size()))
     params = [0] * qutrit_gate.get_num_params()
     op = Operation(qutrit_gate, location, params)
     try:
         circuit.check_valid_operation(op)
     except ValueError:
         return
     except BaseException:
         assert False, 'Unexpected Exception'
     assert False
示例#3
0
 def test_valid_3(self) -> None:
     circuit = Circuit(2, [3, 2])
     gate = ConstantUnitaryGate(np.identity(6), [2, 3])
     circuit.check_valid_operation(Operation(gate, [1, 0]))
示例#4
0
 def test_valid_2(self, gate: Gate) -> None:
     circuit = Circuit(gate.get_size() + 2, (2, 2) + gate.get_radixes())
     location = [x + 2 for x in list(range(gate.get_size()))]
     params = [0] * gate.get_num_params()
     circuit.check_valid_operation(Operation(gate, location, params))
示例#5
0
 def test_valid_1(self, gate: Gate) -> None:
     circuit = Circuit(gate.get_size(), gate.get_radixes())
     location = list(range(gate.get_size()))
     params = [0] * gate.get_num_params()
     circuit.check_valid_operation(Operation(gate, location, params))