Skip to main content
IBM Quantum Platform

QFTSynthesisFull

class qiskit.transpiler.passes.synthesis.hls_plugins.QFTSynthesisFull

GitHub

Bases: HighLevelSynthesisPlugin

Plug-in de síntese para portas QFT usando conectividade tudo-para-todos.

O nome do plug-in é:qft.full , que pode ser usado como a chave em um HLSConfig para usar esse método com HighLevelSynthesis.

Observe que o mecanismo de plug-in não será aplicado se o portão for chamado de qft , mas não for uma instância de QFTGate. Isso permite que os usuários criem portões personalizados com o nome qft.

O plug-in é compatível com as seguintes opções adicionais:

  • reverse_qubits (bool): Se deve sintetizar a operação "QFT" (se False,

    que é o padrão) ou a operação "QFT-with-reversal" (se True). Algumas implementações do QFTGate incluem uma camada de portas de troca no final do circuito sintetizado, que, em princípio, pode ser descartada se o próprio QFTGate for a última porta do circuito.

  • approximation_degree (int): O grau de aproximação (0 para nenhuma aproximação).

    É possível implementar o QFT aproximadamente ignorando as rotações de fase controlada com o ângulo abaixo de um limite. Isso é discutido em mais detalhes em [1] ou [2].

  • insert_barriers (bool): Se for true, as barreiras serão inseridas como aprimoramento da visualização.

  • inverse (bool): Se for true, a transformada de Fourier inversa será construída.

  • name (str): O nome do circuito.

Referências

  1. Adriano Barenco, Artur Ekert, Kalle-Antti Suominen e Päivi Törmä, Approximate Quantum Fourier Transform and Decoherence, Physical Review A (1996). arXiv:quant-ph/9601018 [quant-ph]
  2. 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)

GitHub

Executa a síntese para o QFTGate fornecido.

Esta página foi útil?
Relate um bug, erro de digitação ou solicite conteúdo no GitHub.