iqm.benchmarks.compressive_gst.compressive_gst.create_predefined_gate_set

iqm.benchmarks.compressive_gst.compressive_gst.create_predefined_gate_set#

iqm.benchmarks.compressive_gst.compressive_gst.create_predefined_gate_set(gate_set: str | list[Any], num_qubits: int, qubit_layouts: list[list[int]]) tuple[list[IQMCircuit], dict[str, dict[int, str]], int]#

Create a list of quantum circuits corresponding to a predefined gate set.

The circuits are assigned to the specified qubit_layouts on the backend only during transipilation, so the qubit labels at this stage may not represent the actual qubit labels on the backend.

Parameters:
  • gate_set (str | list[Any]) – The name of the gate set

  • num_qubits (int) – The number of qubits on which the gate set is defined

  • qubit_layouts (list[list[int]]) – A List of physical qubit layouts, each of which is a list of qubit labels, where the benchmark is meant to be run.

Returns:

The gate set as a list of circuits gate_labels_dict:

The names of gates, i.e. “Rx_pi_2” for a pi/2 rotation around the x-axis.

num_gates:

The number of gates in the gate set

Return type:

gates