def test_converter_gate_registration(self): """Verify converters register gates in session equivalence library.""" qc_gate = QuantumCircuit(2) qc_gate.h(0) qc_gate.cx(0, 1) from qiskit.circuit.equivalence_library import SessionEquivalenceLibrary as sel bell_gate = circuit_to_gate(qc_gate, equivalence_library=sel) qc_inst = QuantumCircuit(2) qc_inst.h(0) qc_inst.cx(0, 1) bell_inst = circuit_to_instruction(qc_inst, equivalence_library=sel) gate_entry = sel.get_entry(bell_gate) inst_entry = sel.get_entry(bell_inst) self.assertEqual(len(gate_entry), 1) self.assertEqual(len(inst_entry), 1) self.assertEqual(gate_entry[0], qc_gate) self.assertEqual(inst_entry[0], qc_inst)
def decompositions(self): """Get the decompositions of the instruction from the SessionEquivalenceLibrary.""" # pylint: disable=cyclic-import from qiskit.circuit.equivalence_library import SessionEquivalenceLibrary as sel return sel.get_entry(self)