HighLevelSynthesisPlugin

class qiskit.transpiler.passes.synthesis.plugin.HighLevelSynthesisPlugin[source]

Bases: ABC

Abstract high-level synthesis plugin class.

This abstract class defines the interface for high-level synthesis plugins.

Methods

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

Run synthesis for the given Operation.

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

  • coupling_map (CouplingMap) – The coupling map of the backend in case synthesis is done on a physical circuit.

  • target (Target) – A target representing the target backend.

  • qubits (list) – List of qubits over which the operation is defined in case synthesis is done on a physical circuit.

  • options – Additional method-specific optional kwargs.

Returns:

The quantum circuit representation of the Operation

when successful, and None otherwise.

Return type:

QuantumCircuit