Skip to main content
IBM Quantum Platform

MapperFnEvolutionSynthesis

class MapperFnEvolutionSynthesis(mapper_fn, product_formula=None)

Basi: object

A F2QSynthesisPlugin per la transpilazione Evolution con una mappatura personalizzata.

Questo plugin mappa l'Hamiltoniano fermionico HH del gate Evolution in ingresso su un operatore di qubit utilizzando mapper_fn ed emette un PauliEvolutionGate. In questo modo mantiene la convenzione " eitHe^{-i t H} " del gate Evolution , con lo stesso tempo di evoluzione tt.

Il modo in cui tale espressione viene PauliEvolutionGate successivamente scomposta in porte di base è determinato dalla formula del prodotto passata come product_formula. Lasciando l'impostazione predefinita (None) si ricorre alla sintesi predefinita PauliEvolutionGatedel proprio (una LieTrotter decomposizione di primo ordine con una singola ripetizione). Specificando un’espressione esplicita EvolutionSynthesis – ad esempio di ordine superiore o SuzukiTrotter con diverse ripetizioni – si seleziona una formula di prodotto di Trotter-Suzuki diversa, sacrificando la profondità del circuito a vantaggio di un errore di Trotter minore.

L'inizializzazione di questo plugin per il passaggio di transpilazione può essere effettuata utilizzando gli argomenti elencati di seguito.

Parametri

  • mapper_fn (MapperFunction) – la funzione di mappatura dell'operatore da fermione a qubit.
  • product_formula (EvolutionSynthesis | None) – la formula del prodotto con cui sintetizzare l'emesso PauliEvolutionGate. Se ( None impostazione predefinita), viene utilizzata la sintesi predefinita del gate stesso (una LieTrotter scomposizione di primo ordine con una singola ripetizione).

Attributi

mapper_fn

Tipo: MapperFunction

La funzione di mappatura degli operatori da fermioni a qubit.

I due argomenti di input devono essere i seguenti:

  1. l'operatore da mappare.
  2. il numero di qubit su cui dovrebbe essere definito l'operatore risultante.
Nota

È responsabilità dell'utente assicurarsi che questa funzione sia sincronizzata con l'impostazione F2QLayout globale di transpilazione.

product_formula

Tipo: EvolutionSynthesis | None

La formula del prodotto utilizzata per sintetizzare l'emissione PauliEvolutionGate, oppure None per affidarsi alla sintesi predefinita di quel gate.


Metodi

run

run(in_node, out_dag, *, f2q_layout)

Esegue questo plugin di transpilazione.

L'Hamiltoniano fermionico del gate Evolution in ingresso viene mappato su un operatore di qubit tramite mapper_fn, semplificato, e aggiunto a out_dag come che PauliEvolutionGate implementa eitHe^{-i t H} con il tempo di evoluzione originale tt e la product_formula sintesi.

Parametri

Tipo di restituzione

Nessuna

Vedi anche

La documentazione di F2QSynthesisPlugin per spiegazioni più dettagliate sugli argomenti.

Aumenti

NotImplementedError – quando in_node agisce su modi fermionici distribuiti su più FermionicRegister istanze.

Parametri

Tipo di restituzione

Nessuna

Questa pagina è stata utile?
Segnala un bug, un errore di battitura o richiedi contenuti su GitHub.