Skip to main content
IBM Quantum Platform

PauliEvolutionSynthesisRustiq

class qiskit.transpiler.passes.synthesis.hls_plugins.PauliEvolutionSynthesisRustiq

GitHub

Bases: HighLevelSynthesisPlugin

Sintetize um PauliEvolutionGate usando o Rustiq.

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

O algoritmo de síntese do Rustiq está descrito em [1] e é implementado na biblioteca de síntese de circuitos quânticos baseada em Rust, disponível em https://github.com/smartiel/rustiq-core.

Em circuitos grandes, o plug-in pode levar um tempo de execução significativo.

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

  • optimize_count (bool): se true, o algoritmo de síntese tentará otimizar

    a contagem de portas de 2 qubits; e, se Falso, a profundidade de 2 qubits.

  • preserve_order (bool): se a ordem dos paulis deve ser preservada, até

    comutatividade.

  • upto_clifford (bool): se True, o operador Clifford final não é sintetizado.

  • upto_phase (bool): se true, a fase global do circuito retornado pode ser

    diferem da fase global da rede pauli fornecida.

  • resynth_clifford_method (int): descreve a estratégia para sintetizar o

    Operador Clifford. Os valores permitidos são 0 (abordagem ingênua), 1 (síntese gulosa do qiskit), 2 (síntese de isometria do rustiq).

Referências

  1. Timothée Goubault de Brugière e Simon Martiel, Faster and shorter synthesis of Hamiltonian simulation circuits (Síntese mais rápida e mais curta de circuitos de simulação hamiltoniana ), arXiv:2404.03280 [quant-ph]

Métodos

run

run(high_level_object, coupling_map=None, target=None, qubits=None, **options)

GitHub

Executa a síntese para a Operação fornecida.

Parâmetros

  • high_level_object (Operation) – A operação a ser sintetizada em um objeto DAGCircuit objeto.
  • coupling_map (CouplingMap) – O mapa de acoplamento do backend, caso a síntese seja feita em um circuito físico.
  • target (Target) – Um alvo que representa o backend de destino.
  • qubits (list) – Lista de qubits sobre os quais a operação é definida, caso a síntese seja feita em um circuito físico.
  • options - kwargs opcionais adicionais específicos do método.

Retorna

A representação do circuito quântico da Operação

quando bem-sucedido, e None caso contrário.

Tipo de retorno

QuantumCircuit

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