ISAContext Klasse
Kontext, der über enumeration übergeben wurde und den freigegebenen Zustand enthält.
Initialisieren Sie den ISA-Kontext für die angegebene Architektur.
Konstruktor
ISAContext(arch: Architecture)
Parameter
| Name | Beschreibung |
|---|---|
|
arch
Erforderlich
|
Die Architektur, die die Basis-ISA bereitstellt. |
Methoden
| add_instruction |
Erstellen Sie eine Anweisung, und fügen Sie sie dem Provenienzdiagramm hinzu. Kann auf zwei Arten aufgerufen werden:
Die Provenienz wird aufgezeichnet, wenn Transformation und/oder Quelle bereitgestellt werden:
|
| make_isa |
Erstellen Sie eine ISA, die von dem Provenienzdiagramm dieses Kontexts aus den angegebenen Knotenindizes unterstützt wird. |
add_instruction
Erstellen Sie eine Anweisung, und fügen Sie sie dem Provenienzdiagramm hinzu.
Kann auf zwei Arten aufgerufen werden:
Mit Schlüsselwortargumenten zum Erstellen einer neuen Anweisung:
ctx.add_instruction(T, encoding=LOGICAL, time=1000, error_rate=1e-8)Mit einem bereits vorhandenen
InstructionObjekt (z. B. vonwith_id()):ctx.add_instruction(existing_instruction)
Die Provenienz wird aufgezeichnet, wenn Transformation und/oder Quelle bereitgestellt werden:
transform - das
ISATransformhat die Anweisung erzeugt.Quelle – Eingabeanweisungen, die von der Transformation verbraucht werden.
add_instruction(id_or_instruction: int | Instruction, encoding: Encoding = 0, *, arity: int | None = 1, time: int | _IntFunction = 0, space: int | None | _IntFunction = None, length: int | _IntFunction | None = None, error_rate: float | _FloatFunction = 0.0, transform: ISATransform | None = None, source: list[Instruction] | None = None, **kwargs: int) -> int
Parameter
| Name | Beschreibung |
|---|---|
|
id_or_instruction
Erforderlich
|
Entweder eine Anweisungs-ID (int) zum Erstellen einer neuen Anweisung oder eines vorhandenen |
|
encoding
|
Die Anweisungscodierung (0 = Physisch, 1 = Logisch).
Wird ignoriert, wenn ein vorhandenes Standardwert: 0
|
|
arity
Erforderlich
|
Die Anweisungsarität.
|
|
time
Erforderlich
|
Anweisungszeit in ns (oder |
|
space
Erforderlich
|
Anweisungsraum in physischen Qubits (oder |
|
length
Erforderlich
|
Arität einschließlich Ancilla-Qubits. Wird ignoriert, wenn ein vorhandenes |
|
error_rate
Erforderlich
|
Fehlerrate der Anweisung (oder |
|
transform
Erforderlich
|
Das |
|
source
Erforderlich
|
Liste der von der Transformation verbrauchten Quellobjekte |
|
**kwargs
Erforderlich
|
Zusätzliche Eigenschaften (z. B. |
Nur Schlüsselwortparameter
| Name | Beschreibung |
|---|---|
|
arity
|
Standardwert: 1
|
|
time
|
Standardwert: 0
|
|
space
|
Standardwert: None
|
|
length
|
Standardwert: None
|
|
error_rate
|
Standardwert: 0.0
|
|
transform
|
Standardwert: None
|
|
source
|
Standardwert: None
|
Gibt zurück
| Typ | Beschreibung |
|---|---|
|
Der Knotenindex im Provenienzdiagramm. |
Ausnahmen
| Typ | Beschreibung |
|---|---|
|
Wenn in Kwargs ein unbekannter Eigenschaftsname angegeben wird. |
make_isa
Erstellen Sie eine ISA, die von dem Provenienzdiagramm dieses Kontexts aus den angegebenen Knotenindizes unterstützt wird.
make_isa(*node_indices: int) -> ISA
Parameter
| Name | Beschreibung |
|---|---|
|
*node_indices
Erforderlich
|
Knotenindizes im Provenienzdiagramm. |
Gibt zurück
| Typ | Beschreibung |
|---|---|
|
Eine ISA, die auf das Provenienzdiagramm verweist. |
Attribute
isa
Die von der Architektur für diesen Kontext bereitgestellte ISA.