QFTSynthesisLine
class qiskit.transpiler.passes.synthesis.hls_plugins.QFTSynthesisLine
Bases: HighLevelSynthesisPlugin
Plugin de síntesis para puertas QFT utilizando conectividad lineal.
El nombre de este plugin es :qft.line que puede usarse como clave en un HLSConfig para utilizar este método con HighLevelSynthesis.
Tenga en cuenta que el mecanismo de complemento no se aplica si la puerta se llama qft pero no es una instancia de QFTGate. Esto permite a los usuarios crear puertas personalizadas con el nombre qft.
El plugin admite las siguientes opciones adicionales:
-
reverse\qubits (bool): Si se sintetiza la operación "QFT" (si
False,que es la predeterminada) o la operación "QFT-con-reversión" (si
True). Algunas implementaciones deQFTGateincluyen una capa de puertas de intercambio al final del circuito sintetizado, que en principio puede suprimirse si la propiaQFTGatees la última puerta del circuito. -
grado_de_aproximación (int): el grado de aproximación (0 para ninguna aproximación).
Es posible implementar la QFT aproximadamente ignorando las rotaciones de fase controlada con el ángulo por debajo de un umbral. Esto se trata con más detalle en [1] ó [2].
Referencias
- Adriano Barenco, Artur Ekert, Kalle-Antti Suominen y Päivi Törmä, Approximate Quantum Fourier Transform and Decoherence, Physical Review A (1996). arXiv:quant-ph/9601018 [quant-ph]
- Donny Cheung, Improved Bounds for the Approximate QFT (2004), arXiv:quant-ph/0403071 [quant-ph]
Métodos
run
run(high_level_object, coupling_map=None, target=None, qubits=None, **options)
Ejecuta la síntesis para el QFTGate dado.