Skip to main content
IBM Quantum Platform

gestion_du_bruit

qiskit_addon_utils.noise_management

Outils de gestion du bruit.

trex_factors

trex_factors(measurement_noise_map, basis_dict, /)

GitHub

Calcule le facteur d'échelle de la valeur d'espérance de l'algorithme d'atténuation TREX pour chaque terme de Pauli dans basis_dict.

Calcule l' ZN\langle Z^N \rangle e pour chaque terme de Pauli non identitaire dans chaque observable à l'aide du bruit de mesure appris, où NN sont les indices non identitaires dans le terme.

Paramètres

  • measurement_noise_map (PauliLindbladMap) – Bruit de mesure appris au format PauliLindbladMap.
  • basis_dict (dict[Pauli, list[SparsePauliOp | None]]) – Correspondance entre les bases de mesure et les grandeurs observables, dans laquelle l'algorithme TREX optimise le calcul de leur valeur attendue.

Retours

Une liste de tableaux numpy de valeurs flottantes représentant le facteur d'échelle de la valeur d'espérance de l'algorithme d'atténuation TREX pour chaque terme de Pauli dans chaque observable dans chaque base dans la base donnée (basis_dict).

gamma_from_noisy_boxes

gamma_from_noisy_boxes(noise_models, box_id_to_noise_id, noise_scales_each_box=None)

GitHub

Calculer le facteur gamma d'un circuit à partir des modèles de bruit de Pauli-Lindblad pour les boîtiers de ce circuit.

Cette fonction s'attend à ce que les modèles de bruit représentent le bruit dans le circuit, et donc à ce qu'ils aient des taux de Lindblad positifs. Le gamma renvoyé est celui associé aux cartes de bruit inverse nécessaires pour annuler le bruit dans le circuit.

Paramètres

  • noise_models (dict[str, PauliLindbladMap]) – Dict des ID des modèles de bruit (chaînes) et des modèles de bruit appris pour chaque boîte bruyante unique dans le circuit.
  • box_id_to_noise_id (dict[str, str]) – Dict des ID des boîtes et des ID des modèles de bruit.
  • noise_scales_each_box (dict[str, ndarray] | None) – Dict d'ID de boîtes et de facteurs permettant de réévaluer les taux d'erreur Lindblad de chaque générateur dans le modèle de bruit associé.

Retours

Le facteur gamma.

Augmentations

ValueError si la longueur de un tableau dans noise_scales\each_box n'est pas égale à la longueur de rates of *\Nthe associated - PauliLindbladMap in noise_models.

Type de retour

Float

PostSelectionSummary

class PostSelectionSummary(primary_cregs, measure_map, edges, *, post_selection_suffix='_ps')

GitHub

Bases : object

Une classe d'aide pour stocker les propriétés d'un circuit quantique nécessaire pour post-sélectionner les résultats.

Initialise un objet PostSelectionSummary .

Paramètres

  • primary_cregs (set[str]) – Les noms des registres classiques "primaires", c'est-à-dire ceux qui ne se terminent pas par le suffixe post-sélection.
  • measure_map (dict[int, tuple[str, int]]) – Une carte entre les indices de qubits dans le registre et les clbits qui définissent de manière unique une mesure sur ces qubits.
  • edges (set[frozenset[int]]) – Une liste de tuples définissant des paires de qubits voisins.
  • post_selection_suffix (str) – Le suffixe des registres de sélection des postes.

edges

Type : set[frozenset[int]]

Un ensemble d'arêtes à prendre en compte pour la sélection des postes basée sur les arêtes.

from_circuit

classmethod from_circuit(circuit, coupling_map, *, post_selection_suffix='_ps')

GitHub

Initialiser à partir de circuits quantiques.

Paramètres

  • circuit (QuantumCircuit) – Le circuit pour créer un résumé de.
  • coupling_map (CouplingMap |list[tuple[int, int]]) – Une carte de couplage ou une liste de tuples indiquant les paires de qubits voisins.
  • post_selection_suffix (str) – Un suffixe fixe à ajouter aux noms des registres classiques lors de leur copie.

Type de retour

PostSelectionSummary

measure_map

Type : dict[int, tuple[str, int]]

Une carte des indices de qubits vers le registre et l'indice de clbit utilisés pour mesurer ces qubits.

post_selection_suffix

Type : str

Le suffixe des registres de sélection des postes.

primary_cregs

Type : set[str]

Les noms des registres classiques "primaires".

PostSelector

class PostSelector(summary)

GitHub

Bases : object

Classe permettant de traiter les résultats des programmes quantiques en fonction des résultats des mesures post-sélection.

Initialise un objet PostSelector .

Paramètres

summary (PostSelectionSummary) – Un résumé du circuit en cours de post-sélection.

compute_mask

compute_mask(result, strategy=PostSelectionStrategy.NODE)

GitHub

Calculer des masques booléens indiquant quels plans doivent être conservés ou rejetés pour le résultat donné.

Cette fonction compare les bits renvoyés par chaque paire de mesures et de mesures de post-sélection, en identifiant tous ceux qui ne se sont pas retournés. Les plans qui doivent être conservés sont marqués comme True dans le masque renvoyé, ceux qui doivent être rejetés sont marqués comme False.

Par construction, le masque retourné a la même forme que les tableaux dans le résultat correspondant, mais avec une dimension de moins (le dernier axe de chaque tableau, sur clbits, n'est pas présent dans le masque).

Paramètres

  • result (dict[str, ndarray[tuple[int, ...], dtype[bool]]]) – Le résultat à post-traiter. Il doit s'agir d'un site QuantumProgramResult contenant un seul élément ou d'un dictionnaire.
  • strategy (str | PostSelectionStrategy) – La stratégie de post-sélection utilisée pour traiter le résultat.

Type de retour

ndarray[ tuple[ int,...], dtype[* bool* ]]

from_circuit

classmethod from_circuit(circuit, coupling_map, *, post_selection_suffix='_ps')

GitHub

Initialiser à partir de circuits quantiques.

Paramètres

  • circuits - Les circuits pour traiter les résultats de.
  • coupling_map (CouplingMap |list[tuple[int, int]]) – Une carte de couplage ou une liste de tuples indiquant les paires de qubits voisins.
  • post_selection_suffix (str) – Un suffixe fixe à ajouter aux noms des registres classiques lors de leur copie.
  • circuit (QuantumCircuit)

Type de retour

PostSelector

summary

Type : PostSelectionSummary

Un résumé du circuit en cours de post-sélection.

Cette page a-t-elle été utile ?
Signaler un bogue, une coquille ou proposer du contenu sur GitHub.