iqm.benchmarks.compressive_gst.mgst.qiskit_interface.get_qiskit_circuits

iqm.benchmarks.compressive_gst.mgst.qiskit_interface.get_qiskit_circuits#

iqm.benchmarks.compressive_gst.mgst.qiskit_interface.get_qiskit_circuits(gate_sequences: list[list[int]], gate_set: list[IQMCircuit], n_qubits: int, active_qubits: list[int]) list[IQMCircuit]#

Generate a set of Qiskit quantum circuits from specified gate sequences.

This function creates a list of quantum circuits based on the provided sequences of gate indices. Each gate index corresponds to a gate in the provided gate_set. The gates are appended to a quantum circuit of a specified length and then measured.

Parameters:
  • gate_sequences (list[list[int]]) – A list where each element is a sequence of integers representing gate indices. Each integer corresponds to a gate in gate_set.

  • gate_set (list[IQMCircuit]) – A list of Qiskit gate objects. The indices in gate_sequences refer to gates in this list.

  • n_qubits (int) – The total number of qubits in the system.

  • active_qubits (list[int]) – The qubits on which the circuits are run.

Returns:

A list of Qiskit QuantumCircuit objects. Each circuit corresponds to one sequence in gate_sequences,

with gates applied to the first qubit.

Return type:

list[IQMCircuit]