iqm.benchmarks.randomized_benchmarking.mirror_rb.mirror_rb.generate_pauli_dressed_mrb_circuits#
- iqm.benchmarks.randomized_benchmarking.mirror_rb.mirror_rb.generate_pauli_dressed_mrb_circuits(qubits: list[int], backend_arg: IQMBackendBase | str, mrb_config: list, routing_method: RoutingMethod = RoutingMethod.BASIC, simulation_method: Literal['automatic', 'statevector', 'stabilizer', 'extended_stabilizer', 'matrix_product_state'] = 'automatic') dict[str, list[IQMCircuit]]#
Samples a mirror circuit and generates samples of “Pauli-dressed” circuits.
For each circuit, random Pauli layers are interleaved between each layer of the circuit.
- Parameters:
backend_arg (IQMBackendBase | str) – Backend.
mrb_config (list) – Wraps the following parameters. pauli_samples_per_circ: number of Pauli samples per circuit. depth: depth (number of canonical layers) of the circuits. density_2q_gates: expected density of 2Q gates. two_qubit_gate_ensemble: dictionary with keys being str specifying 2Q gates, and values being corresponding probabilities; default is None. clifford_sqg_probability: probability with which to uniformly sample Clifford 1Q gates; default is 1.0. sqg_gate_ensemble: dictionary with keys being str specifying 1Q gates, and values being corresponding probabilities; default is None. qiskit_optim_level: Qiskit transpiler optimization level; default is 1.
routing_method (RoutingMethod) – Qiskit transpiler routing method. Default is “basic”.
simulation_method (Literal['automatic', 'statevector', 'stabilizer', 'extended_stabilizer', 'matrix_product_state']) – Qiskit’s Aer simulation method. Default is “automatic”.
- Returns:
Samples of “Pauli-dressed” circuits.
- Return type:
dict[str, list[IQMCircuit]]