Skip to main contentIBM Quantum Documentation Mirror

ModularAdderSynthesisDefault

class qiskit.transpiler.passes.synthesis.hls_plugins.ModularAdderSynthesisDefault

GitHub

Bases: HighLevelSynthesisPlugin

The default modular adder (no carry in, no carry out qubit) synthesis.

This plugin name is:ModularAdder.default which can be used as the key on an HLSConfig object to use this method with HighLevelSynthesis.

The plugin supports the following plugin-specific options:

  • optimization_metric: The optimization metric, indicating the property of the output circuit (e.g., the 2-qubit gate count or the T-count) that should be minimized. See OptimizationMetric.
  • num_clean_ancillas: The number of clean ancillary qubits available.
  • num_dirty_ancillas: The number of dirty ancillary qubits available.

Methods

run

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

GitHub

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