QFTSynthesisFull
class qiskit.transpiler.passes.synthesis.high_level_synthesis.QFTSynthesisFull
Bases: HighLevelSynthesisPlugin
Synthesis plugin for QFT gates using alltoall connectivity.
This plugin name is :qft.full
which can be used as the key on an HLSConfig
object to use this method with HighLevelSynthesis
.
The plugin supports the following additional options:

reverse_qubits (bool): Whether to synthesize the “QFT” operation (if
False
,which is the default) or the “QFTwithreversal” operation (if
True
). Some implementation of theQFTGate
include a layer of swap gates at the end of the synthesized circuit, which can in principle be dropped if theQFTGate
itself is the last gate in the circuit. 
approximation_degree (int): The degree of approximation (0 for no approximation).
It is possible to implement the QFT approximately by ignoring controlledphase rotations with the angle beneath a threshold. This is discussed in more detail in [1] or [2].

insert_barriers (bool): If True, barriers are inserted as visualization improvement.

inverse (bool): If True, the inverse Fourier transform is constructed.

name (str): The name of the circuit.
References
 Adriano Barenco, Artur Ekert, KalleAntti Suominen, and Päivi Törmä, Approximate Quantum Fourier Transform and Decoherence, Physical Review A (1996). arXiv:quantph/9601018 [quantph]
 Donny Cheung, Improved Bounds for the Approximate QFT (2004), arXiv:quantph/0403071 [quantph]
Methods
run
run(high_level_object, coupling_map=None, target=None, qubits=None, **options)
Run synthesis for the given QFTGate.