EquivalenceLibrary
class qiskit.circuit.EquivalenceLibrary(base=None)
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)
Dessine les relations d'équivalence disponibles dans la bibliothèque.
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
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
QuantumCircuitd'instances, chacune implémentant de manière équivalente la porte donnée.