Skip to main content
IBM Quantum Platform

PauliEvolutionSynthesisRustiq

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

GitHub

Basi: HighLevelSynthesisPlugin

Sintetizzare un PauliEvolutionGate utilizzando Rustiq.

Il nome del plugin è:PauliEvolution.rustiq che può essere utilizzato come chiave di un oggetto HLSConfig per utilizzare questo metodo con HighLevelSynthesis.

L'algoritmo di sintesi di Rustiq è descritto in [1] ed è implementato nella libreria di sintesi di circuiti quantistici basata su Rust, disponibile all'indirizzo https://github.com/smartiel/rustiq-core.

Su circuiti di grandi dimensioni, il plugin può richiedere un tempo di esecuzione significativo.

Il plugin supporta le seguenti opzioni aggiuntive:

  • optimize_count (bool): se True l'algoritmo di sintesi cercherà di ottimizzare

    il numero di gate a 2-qubit; e se Falso, la profondità a 2-qubit.

  • preserve_order (bool): se l'ordine dei pauli deve essere conservato, fino a

    commutatività.

  • upto_clifford (bool): se True, l'operatore Clifford finale non viene sintetizzato.

  • upto_phase (bool): se Vero, la fase globale del circuito restituito può

    differiscono dalla fase globale della rete pauli data.

  • resynth_clifford_method (int): descrive la strategia per sintetizzare la versione finale di

    Operatore Clifford. I valori ammessi sono 0 (approccio ingenuo), 1 (sintesi greedy di qiskit), 2 (sintesi isometrica di rustiq).

Riferimenti

  1. Timothée Goubault de Brugière e Simon Martiel, Sintesi più veloce e più breve di circuiti di simulazione hamiltoniana, arXiv:2404.03280 [quant-ph]

Metodi

run

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

GitHub

Esegue la sintesi per l'operazione indicata.

Parametri

  • high_level_object (Operation) – L'operazione da sintetizzare in un DAGCircuit oggetto.
  • coupling_map (CouplingMap) – La mappa di accoppiamento del backend nel caso in cui la sintesi venga effettuata su un circuito fisico.
  • target (Target) – Un obiettivo che rappresenta il backend di destinazione.
  • qubits (list) – Elenco dei qubit su cui è definita l'operazione nel caso in cui la sintesi sia effettuata su un circuito fisico.
  • options - Kwarg opzionali aggiuntivi specifici per il metodo.

Risultati

La rappresentazione del circuito quantistico dell'operazione

in caso di successo e None in caso contrario.

Tipo di restituzione

QuantumCircuit

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