Skip to main contentIBM Quantum Documentation

DefaultUnitarySynthesis

class qiskit.transpiler.passes.synthesis.unitary_synthesis.DefaultUnitarySynthesis

GitHub

Bases: UnitarySynthesisPlugin

The default unitary synthesis plugin.


Attributes

max_qubits

min_qubits

supported_bases

supports_basis_gates

supports_coupling_map

supports_gate_errors

supports_gate_errors_by_qubit

supports_gate_lengths

supports_gate_lengths_by_qubit

supports_natural_direction

supports_pulse_optimize

supports_target


Methods

run

run(unitary, **options)

GitHub

Run synthesis for the given unitary matrix

Parameters

  • unitary (numpy.ndarray) – The unitary matrix to synthesize to a DAGCircuit object
  • options – The optional kwargs that are passed based on the output the support_* methods on the class. Refer to the documentation for these methods on UnitarySynthesisPlugin to see what the keys and values are.

Returns

The dag circuit representation of the unitary. Alternatively, you can return a tuple of the form (dag, wires) where dag is the dag circuit representation of the circuit representation of the unitary and wires is the mapping wires to use for qiskit.dagcircuit.DAGCircuit.substitute_node_with_dag(). If you return a tuple and wires is None this will behave just as if only a DAGCircuit was returned. Additionally if this returns None no substitution will be made.

Return type

DAGCircuit

Was this page helpful?
Report a bug or request content on GitHub.