RBDefaultCliffordSynthesis

class RBDefaultCliffordSynthesis[source]

Default Clifford synthesis plugin for randomized benchmarking.

Methods

run(high_level_object, coupling_map=None, target=None, qubits=None, **options)[source]

Run synthesis for the given Clifford.

Parameters:
  • high_level_object (Operation) – The operation to synthesize to a QuantumCircuit object.

  • coupling_map (CouplingMap | None) – The reduced coupling map of the backend. For example, if physical qubits [5, 6, 7] to be benchmarked is connected as 5 - 7 - 6 linearly, the reduced coupling map is 0 - 2 - 1.

  • target (Target | None) – A target representing the target backend, which will be ignored in this plugin.

  • qubits (Sequence | None) – List of physical qubits over which the operation is defined, which will be ignored in this plugin.

  • options – Additional method-specific optional kwargs, which must include basis_gates, basis gates to be used for the synthesis.

Returns:

The quantum circuit representation of the Operation when successful, and None otherwise.

Raises:

QiskitError – If basis_gates is not supplied.

Return type:

QuantumCircuit