qiskit_noise_learning.analysis.FlipPostSelect
class qiskit_noise_learning.analysis.FlipPostSelect(creg_identifier: Callable[[list[str]], Iterator[tuple[str, ...]]] | None = None, mode: Literal['node', 'edge'] = 'edge')
Basi: AnalysisStage
Applicare una maschera ai dati grezzi in base agli errori di inversione di bit nei registri classici.
Questa fase successiva alla selezione identifica gruppi composti da uno o due creg, contrassegna le parti difettose di ciascun gruppo e maschera le riprese in base alla struttura dei difetti. Entrambe le regole interpretano l’ esito di un bit, data ^ measurement_flips, che corrisponde al valore misurato una volta annullato il ribaltamento introdotto dalla misurazione. Ciò che viene considerato un fallimento dipende dalle dimensioni del gruppo:
- Due serie di misurazioni
(base, ps): il test è fallitojse il risultato è lo stesso in entrambe, ovvero se non si è verificata alcuna variazione tra le due misurazioni. - Un creg
(base,): il bit viene considerato nonjriuscito se il suo risultato è True. Questa è la regola naturale quando ci si aspetta che un creg restituisca tutti zeri, e coincide con la regola dei due creg per un registropscomposto interamente da uno.
Tenuto conto dei bit difettosi, la modalità determina quali scatti vengono scartati:
"node": Le misurazioni vengono scartate se almeno un bit risulta errato."edge": Gli scatti vengono scartati se nella mappa di accoppiamento esiste una coppia di qubit adiacenti per i quali entrambi i bit hanno dato esito negativo.
Parametri
- creg_identifier – Una funzione che, dato un elenco di nomi di creg presenti, restituisce un iteratore su tuple di nomi di creg su cui effettuare una selezione successiva. Ogni tupla contiene uno o due nomi, a seconda della regola corrispondente sopra indicata. Per impostazione predefinita, ogni creg denominato viene associato
"*_ps"a"*"se quest'ultimo è presente; in caso contrario, viene trattato come un elemento a sé stante. - modalità – Modalità post-selezione; o o
"node""edge".
Aumenti
ValueError : se non mode è o "node" "edge".
__init__
__init__(creg_identifier: Callable[[list[str]], Iterator[tuple[str, ...]]] | None = None, mode: Literal['node', 'edge'] = 'edge')
Metodi
Rubrica 1 | Rubrica 2 |
|---|---|
__init__([creg_identifier, mode]) | |
run(adatto) | Esegui questa fase, restituendo un nuovo oggetto Fit con il livello di output compilato. |
Attributi
Rubrica 1 | Rubrica 2 |
|---|---|
creg_identifier | |
input_level | Il livello di dati letto in questa fase. |
mode | |
output_level | Il livello di dati in cui questa fase effettua la scrittura. |
input_level
Il livello di dati letto in questa fase.
output_level
Il livello di dati in cui questa fase effettua la scrittura.