Skip to main content
IBM Quantum Platform

CollectPermutations

class qiskit_ibm_transpiler.ai.CollectPermutations(do_commutative_analysis: bool = True, min_block_size: int = 4, max_block_size: int = PERMUTATION_MAX_BLOCK_SIZE, collect_from_back: bool = False, num_reps: int = 10)

GitHub

Basi: RepeatedCollectAndCollapse

Raccoglie blocchi di circuiti SWAP come permutazioni.

Parametri

  • do_commutative_analysis (bool) – Abilita o disabilita l'analisi commutativa, per impostazione predefinita è Vero
  • min_block_size (int, optional) – Imposta la dimensione minima per i blocchi generati durante il passaggio di raccolta delle permutazioni, per impostazione predefinita 4.
  • max_block_size (int, optional) – Imposta la dimensione massima per i blocchi generati durante il passaggio di raccolta delle permutazioni, per impostazione predefinita 12.
  • collect_from_back (bool, optional) – Specifica se raccogliere o meno i blocchi in ordine inverso; l'impostazione predefinita è False.
  • num_reps (int, optional) – Specificare il numero di volte in cui ripetere il processo di ottimizzazione, per impostazione predefinita 10.
  • collect_function (callable) – una funzione che prende un DAG e restituisce un elenco di blocchi di nodi "raccolti"
  • collapse_function (callable) – una funzione che prende un DAG e un elenco di blocchi "raccolti" e consolida ogni blocco.
  • do_commutative_analysis - se Vero, sfrutta le relazioni di commutatività tra i nodi.

Attributi

is_analysis_pass

Controlla se il passaggio è un passaggio di analisi.

Se il passo è un AnalysisPass,, significa che il passo può analizzare il DAG e scrivere i risultati di tale analisi nel set di proprietà. Questo tipo di passaggio non consente di modificare il DAG.

is_transformation_pass

Controlla se il passaggio è un passaggio di trasformazione.

Se il passaggio è un TransformationPass,, significa che il passaggio può manipolare il DAG, ma non può modificare il set di proprietà (ma può essere letto).


Metodi

execute

execute(passmanager_ir, state, callback=None)

Eseguire l'attività di ottimizzazione per l'IR Qiskit in ingresso.

Parametri

  • passmanager_ir (Any) – Qiskit IR per ottimizzare.
  • state (PassManagerState) – Stato associato all'esecuzione del flusso di lavoro da parte del gestore del passaggio stesso.
  • callback (Callable) – Una funzione di callback che viene chiamata per ogni esecuzione dell'attività di ottimizzazione.

Risultati

Qiskit IR ottimizzato e stato del flusso di lavoro.

Tipo di restituzione

tupla [*Qualsiasi*, PassManagerState ]

name

name()

Nome del passo.

Tipo di restituzione

STR

run

run(dag)

GitHub

Esegue il passaggio CollectLinearFunctions su dag. :param dag: il DAG da ottimizzare. :type dag: DAGCircuito

Risultati

il DAG ottimizzato.

Tipo di restituzione

DAGCircuito

update_status

update_status(state, run_state)

Aggiornare lo stato del flusso di lavoro.

Parametri

  • state (PassManagerState) – Passare lo stato del gestore da aggiornare.
  • run_state (RunState) – Stato di completamento dell'attività corrente.

Risultati

Stato aggiornato del gestore dei passaggi.

Tipo di restituzione

PassManagerState

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