Skip to main content
IBM Quantum Platform

Rumore

qiskit_mitigation.noise

Funzionalità per la definizione e la trasformazione del rumore quantistico.

create_postselected_noise_mask

create_postselected_noise_mask(noisy_circuit, noise_maps, detectors)

GitHub

Identificare i generatori in noise_maps che anticommutano con uno o più detectors.

Ogni rivelatore, rappresentato come operatore di Pauli alla fine di, viene noisy_circuit fatto evolvere a ritroso attraverso il circuito. In ogni InjectNoise sito, un generatore che anticommuta con un rilevatore evoluto ottiene scala 0; un generatore sopravvissuto ottiene 1.

Parametri

  • noisy_circuit (QuantumCircuit) – Una serie di istruzioni di box. Le istruzioni della scatola possono contenere istruzioni di Clifford, e qualsiasi istruzione non di Clifford in esse contenuta deve commutare con tutte le altre detectors. InjectNoise Le annotazioni dovrebbero essere utilizzate per indicare i livelli soggetti a rumore nel circuito, e ogni ID di riferimento InjectNoise dovrebbe costituire una chiave in noise_maps.
  • detectors (PauliList |Sequence[Pauli |str]) – Rilevatori di Pauli definiti alla fine di noisy_circuit su tutti i qubit.
  • noise_maps (dict[str, PauliLindbladMap]) – Una corrispondenza tra ciascun ID di riferimento InjectNoise univoco e il rumore di Pauli-Lindblad associato a quel livello del circuito.

Risultati

  • Una mappatura dict di ciascun riquadro "rumoroso" InjectNoise.modifier_ref su un array allineato con i noise_maps generatori di quel riquadro, pronto per essere utilizzato come "samplomatic 0"1 local_scales
  • Il costo di campionamento γ2=e(4∑λ⋅mask)\gamma^2 = e^{(4 \sum \lambda \cdot \text{mask})} derivante dall'invertire solo i generatori sopravvissuti con PEC.

Tipo di restituzione

tupla [ dizionario [ stringa, matrice ], numero in virgola mobile ]

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