Skip to main content
IBM Quantum Platform

MapperFnEvolutionSynthesis

class MapperFnEvolutionSynthesis(mapper_fn, product_formula=None)

Bases: object

A F2QSynthesisPlugin para compilação dinâmica Evolution com um mapeamento personalizado.

Este plug-in mapeia o hamiltoniano fermiónico HH do gate Evolution de entrada para um operador de qubit usando mapper_fn e emite um PauliEvolutionGate. Dessa forma, preserva a convenção “ eitHe^{-i t H} ” da porta Evolution , com o mesmo tempo de evolução tt.

A forma como isso PauliEvolutionGate é posteriormente decomposto em portas de base é determinada pela fórmula de produto passada como product_formula. Deixá-lo em seu valor padrão (None) faz com que seja utilizada a síntese padrão PauliEvolutionGatedo próprio (uma LieTrotter decomposição de primeira ordem com uma única repetição). O fornecimento de um explícito EvolutionSynthesis — por exemplo, um de ordem superior ou SuzukiTrotter com várias repetições — seleciona uma fórmula de produto de Trotter-Suzuki diferente, trocando a profundidade do circuito por um erro de Trotter menor.

A inicialização deste plug-in de passagem do transpiler pode ser feita com os argumentos listados abaixo.

Parâmetros

  • mapper_fn (MapperFunction) – a função de mapeamento do operador de férmion para qubit.
  • product_formula (EvolutionSynthesis | None) – a fórmula do produto com a qual se sintetiza o emitido PauliEvolutionGate. Se ( None padrão), é utilizada a síntese padrão da própria porta (uma LieTrotter decomposição de primeira ordem com uma única repetição).

Atributos

mapper_fn

Tipo: MapperFunction

A função de mapeamento do operador de férmion para qubit.

Os dois argumentos de entrada devem ser os seguintes:

  1. o operador a ser mapeado.
  2. o número de qubits sobre os quais o operador resultante deve ser definido.
Nota

É de responsabilidade do usuário garantir que essa função esteja em sincronia com a configuração F2QLayout global de transpilação.

product_formula

Tipo: EvolutionSynthesis | None

A fórmula do produto usada para sintetizar o sinal emitido PauliEvolutionGate, ou None para recorrer à síntese padrão própria dessa porta.


Métodos

run

run(in_node, out_dag, *, f2q_layout)

Executa este plug-in de transpilagem.

O hamiltoniano fermiónico do portão Evolution de entrada é mapeado para um operador de qubit por meio de mapper_fn, simplificado e anexado a out_dag como um que PauliEvolutionGate implementa eitHe^{-i t H} com o tempo de evolução original tt e a product_formula síntese.

Parâmetros

Tipo de retorno

Nenhum

Veja Também

Consulte a documentação de F2QSynthesisPlugin para obter explicações mais detalhadas sobre os argumentos.

Aumentos

NotImplementedError – quando in_node atua sobre modos fermiónicos distribuídos por várias FermionicRegister instâncias.

Parâmetros

Tipo de retorno

Nenhum

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