Spanish
Idiomas
English
Bengali
French
German
Japanese
Korean
Portuguese
Spanish
Tamil

AQCSynthesisPlugin

class AQCSynthesisPlugin[fuente]

Bases: UnitarySynthesisPlugin

An AQC-based Qiskit unitary synthesis plugin.

This plugin is invoked by transpile() when the unitary_synthesis_method parameter is set to "aqc".

This plugin supports customization and additional parameters can be passed to the plugin by passing a dictionary as the unitary_synthesis_plugin_config parameter of the transpile() function.

Supported parameters in the dictionary:

network_layout (str)

Type of network geometry, one of {"sequ", "spin", "cart", "cyclic_spin", "cyclic_line"}. Default value is "spin".

connectivity_type (str)

type of inter-qubit connectivity, {"full", "line", "star"}. Default value is "full".

depth (int)

depth of the CNOT-network, i.e. the number of layers, where each layer consists of a single CNOT-block.

optimizer (Optimizer)

An instance of optimizer to be used in the optimization process.

seed (int)

A random seed.

initial_point (ndarray)

Initial values of angles/parameters to start the optimization process from.

Methods Defined Here

run

Run synthesis for the given unitary matrix

Attributes

max_qubits

Maximum number of supported qubits is 14.

min_qubits

Minimum number of supported qubits is 3.

supported_bases

The plugin does not support bases for synthesis.

supports_basis_gates

The plugin does not support basis gates and by default it synthesizes a circuit using ["rx", "ry", "rz", "cx"] gate basis.

supports_coupling_map

The plugin does not support coupling maps.

supports_gate_errors

The plugin does not support gate errors.

supports_gate_lengths

The plugin does not support gate lengths.

supports_natural_direction

The plugin does not support natural direction, it assumes bidirectional two qubit gates.

supports_pulse_optimize

The plugin does not support optimization of pulses.

supports_target

Whether the plugin supports taking target as an option

target will be a Target object representing the target device for the output of the synthesis pass.

By default this will be False since the plugin interface predates the Target class. If a plugin returns True for this attribute, it is expected that the plugin will use the Target instead of the values passed if any of supports_gate_lengths, supports_gate_errors, supports_coupling_map, and supports_basis_gates are set (although ideally all those parameters should contain duplicate information).