EquivalenceLibrary
class qiskit.circuit.EquivalenceLibrary(base=None)
Basen: BaseEquivalenceLibrary
Eine Bibliothek, die ein einseitiges Mapping von Gates auf ihre äquivalenten Implementierungen als QuantumCircuits bereitstellt.
Attribute
graph
Rückgabe eines Diagramms, das die Daten der Äquivalenzbibliothek darstellt.
Diese Eigenschaft sollte als schreibgeschützt behandelt werden, da sie einen Verweis auf den internen Zustand des EquivalenceLibrary objekts liefert. Wenn der von dieser Eigenschaft zurückgegebene Graph verändert wird, könnte dies den Inhalt des Objekts beschädigen. Wenn Sie die Ausgabe PyDiGraph ändern müssen, stellen Sie sicher, dass Sie vor jeder Änderung eine Kopie erstellen.
Rückgabe
Ein Graphobjekt mit Äquivalenzdaten in jedem Knoten.
Rückgabetyp
PyDiGraph
Methoden
add_equivalence
add_equivalence(gate, equivalent_circuit)
Fügen Sie der Bibliothek eine neue Äquivalenz hinzu. Zukünftige Abfragen für das Tor werden die gegebene Schaltung zusätzlich zu allen bestehenden Äquivalenzen (einschließlich derer aus der Basis) enthalten.
Parametrisierte Gatter (die qiskit.circuit.Parameters in ihrem Gate.params enthalten) können als äquivalent zu parametrisierten Schaltungen gekennzeichnet werden, sofern die Parameter übereinstimmen.
Parameter
- gate (Gate) – Eine Gate-Instanz.
- equivalent_circuit (QuantumCircuit) – Eine Schaltung, die das angegebene Gatter äquivalent implementiert.
draw
draw(filename=None)
Zeichnet die in der Bibliothek verfügbaren Äquivalenzbeziehungen.
Diese Funktion ruft das systemeigene Graphviz-Tool für eine Datei auf, die vom Benutzer steuerbare Zeichenfolgen (wie beispielsweise Gate-Namen) enthält. Es wird empfohlen, diese Funktion nur bei vertrauenswürdigen Eingaben aufzurufen.
Parameter
filename (str) – Ein optionaler Pfad, in den das Ausgabebild geschrieben werden soll. Wenn nichts anderes angegeben ist, wird stattdessen das Bild zurückgegeben.
Rückgabe
Wenn filename ist None, dann das gerenderte Bild.
Rückgabetyp
PIL.Image
Erhöht
InvalidFileError – wenn der Dateiname ungültig ist.
get_entry
get_entry(gate)
GateRuft die Menge der QuantumCircuit Schaltkreise aus der Bibliothek ab, die die angegebene Funktion äquivalent implementieren.
Bei parametrisierten Schaltungen werden die Parameter durch die entsprechenden Einträge aus Gate.params ersetzt.
Parameter
gate (Gate) – Eine Gate-Instanz.
Rückgabe
Eine Liste gleichwertiger QuantumCircuit Instanzen.
Wenn leer, enthält die Bibliothek keine bekannten Zerlegungen von Gate.
Die zurückgegebenen Schaltkreise werden nach ihrer Einfügung in die Bibliothek geordnet, vom frühesten zum spätesten, von oben nach unten. Die Reihenfolge der StandardEquivalenceLibrary ist in der Regel nicht in allen Qiskit-Versionen gleich.
Rückgabetyp
Liste [ QuantumCircuit ]
has_entry
has_entry(gate)
Prüfen Sie, ob eine Bibliothek Dekompositionen für Gatter enthält.
Parameter
gate (Gate) – Eine Gate-Instanz.
Rückgabe
Wahr, wenn das Tor eine bekannte Zerlegung in der Bibliothek hat.
Sonst falsch.
Rückgabetyp
keys
keys()
Rückgabe einer Liste von Schlüsseln für die Schlüssel-Knoten-Index-Map.
Rückgabe
Schlüssel zur Schlüssel-Knoten-Index-Map.
Rückgabetyp
Liste
node_index
node_index(key)
Rückgabe des Knotenindex für einen bestimmten Schlüssel.
Parameter
key (Key) – Schlüssel zu einer Äquivalenz.
Rückgabe
Index für den Knoten im Graphen für den angegebenen Schlüssel.
Rückgabetyp
Ganzzahl
set_entry
set_entry(gate, entry)
Setzen Sie den Äquivalenzsatz für ein Gate. Künftige Abfragen nach dem Tor werden nur die angegebenen Schaltkreise zurückgeben.
Parametrisierte Gatter (die qiskit.circuit.Parameters in ihrem Gate.params enthalten) können als äquivalent zu parametrisierten Schaltungen gekennzeichnet werden, sofern die Parameter übereinstimmen.
Parameter
- gate (Gate) – Eine Gate-Instanz.
- entry (List['QuantumCircuit']) – Eine Liste von
QuantumCircuitInstanzen, die jeweils das angegebene Gate auf gleichwertige Weise implementieren.