Skip to main content
IBM Quantum Platform

EquivalenceLibrary

class qiskit.circuit.EquivalenceLibrary(base=None)

GitHub

Bases : BaseEquivalenceLibrary

Une bibliothèque fournissant une correspondance unidirectionnelle entre les portes et leurs implémentations équivalentes sous QuantumCircuits.


Attributs

graph

Retourne un graphique représentant les données de la bibliothèque d'équivalence.

Cette propriété doit être traitée en lecture seule car elle fournit une référence à l'état interne de l'objet EquivalenceLibrary de l'objet. Si le graphique renvoyé par cette propriété est modifié, le contenu de l'objet risque d'être corrompu. Si vous devez modifier la sortie PyDiGraph , assurez-vous d'en faire une copie avant toute modification.

Retours

Un objet graphique avec des données d'équivalence dans chaque nœud.

Type de retour

PyDiGraph


Méthodes

add_equivalence

add_equivalence(gate, equivalent_circuit)

Ajouter une nouvelle équivalence à la bibliothèque. Les futures requêtes pour la porte incluront le circuit donné, en plus de toutes les équivalences existantes (y compris celles de la base).

Les portes paramétrées (celles qui incluent qiskit.circuit.Parameters dans leur Gate.params ) peuvent être marquées comme équivalentes à des circuits paramétrés, à condition que les paramètres correspondent.

Paramètres

  • gate (Gate) – Une instance de la Porte.
  • equivalent_circuit (QuantumCircuit) – Un circuit mettant en œuvre de manière équivalente la porte donnée.

draw

draw(filename=None)

GitHub

Dessine les relations d'équivalence disponibles dans la bibliothèque.

Avertissement

Cette fonction lancera l'outil Graphviz du système sur un fichier contenant des chaînes de caractères modifiables par l'utilisateur (telles que les noms de portes). Il est recommandé de n'appeler cette fonction qu'avec des données fiables.

Paramètres

filename (str) – Chemin d'accès facultatif vers lequel enregistrer l'image de sortie. Si aucune valeur n'est spécifiée, c'est l'image qui sera renvoyée.

Retours

Si filename est None, alors l'image affichée.

Type de retour

PIL.Image

Augmentations

InvalidFileError – si le nom de fichier n'est pas valide.

get_entry

get_entry(gate)

GateRécupère l'ensemble des QuantumCircuit circuits de la bibliothèque qui implémentent de manière équivalente le circuit donné.

Les circuits paramétrés verront leurs paramètres remplacés par les entrées correspondantes de Gate.params.

Paramètres

gate (Gate) – Une instance de la Porte.

Retours

Une liste d'instances équivalentes QuantumCircuit .

Si elle est vide, la bibliothèque ne contient aucune décomposition connue de Gate.

Les circuits retournés seront classés en fonction de leur insertion dans la bibliothèque, du plus ancien au plus récent, du haut vers le bas. L'ordre des pages StandardEquivalenceLibrary n'est généralement pas le même d'une version à l'autre de Qiskit.

Type de retour

Liste [ QuantumCircuit ]

has_entry

has_entry(gate)

Vérifier si une bibliothèque contient des décompositions pour les portes.

Paramètres

gate (Gate) – Une instance de la Porte.

Retours

Vrai si la porte a une décomposition connue dans la bibliothèque.

Sinon, False.

Type de retour

booléen

keys

keys()

Retourne la liste des clés pour la carte d'index des nœuds.

Retours

Clés de la carte d'index clé-nœud.

Type de retour

Liste

node_index

node_index(key)

Renvoie l'index du nœud pour une clé donnée.

Paramètres

key (Key) – Clé d'une équivalence.

Retours

Index du nœud du graphe correspondant à la clé donnée.

Type de retour

Ent

set_entry

set_entry(gate, entry)

Établir le record d'équivalence pour une porte. Les futures requêtes concernant la porte ne renverront que les circuits fournis.

Les portes paramétrées (celles qui incluent qiskit.circuit.Parameters dans leur Gate.params ) peuvent être marquées comme équivalentes à des circuits paramétrés, à condition que les paramètres correspondent.

Paramètres

  • gate (Gate) – Une instance de la Porte.
  • entry (List['QuantumCircuit']) – Une liste QuantumCircuit d'instances, chacune implémentant de manière équivalente la porte donnée.
Cette page a-t-elle été utile ?
Signaler un bogue, une coquille ou proposer du contenu sur GitHub.