Application Klasse

Eine Anwendung definiert eine Klasse von Quantenberechnungsproblemen zusammen mit einer Methode, um Ablaufverfolgungen für bestimmte Probleminstanzen zu generieren.

Wir unterscheiden zwischen Anwendungs- und Ablaufverfolgungsparametern. Die Anwendungsparameter definieren, welche bestimmte Instanz der Anwendung berücksichtigt werden soll. Die Ablaufverfolgungsparameter definieren, wie eine Ablaufverfolgung generiert wird. Sie ändern die spezifische Art und Weise, in der wir das Problem lösen, aber nicht das Problem selbst.

In der Quantenkryptalyse könnten die Anwendungsparameter beispielsweise die Schlüsselgröße für ein RSA Prime-Produkt definieren, während die Ablaufverfolgungsparameter definieren, welcher Algorithmus verwendet werden soll, um die Kryptografie zu unterbrechen, sowie Parameter darin.

Konstruktor

Application()

Methoden

context

Erstellen Sie einen neuen Enumerationskontext für diese Anwendung.

disable_parallel_traces

Deaktivieren Sie die parallele Ablaufverfolgungsgenerierung für diese Anwendung.

enumerate_traces

Liefern Sie alle Ablaufverfolgungen einer Anwendung mit ihren Dataclass-Parametern.

enumerate_traces_with_parameters

Ertragspaare (Parameter, Ablaufverfolgung) für eine Anwendung.

Wie enumerate_traces, aber jede zurückgegebene Ablaufverfolgung wird von den Ablaufverfolgungsparametern begleitet, die zum Generieren verwendet wurden.

get_trace

Gibt die Ablaufverfolgung zurück, die dieser Anwendung und parameter entspricht.

post_process

Nach dem Verarbeiten eines Schätzungsergebnisses für einen bestimmten Satz von Ablaufverfolgungsparametern.

q

Erstellen Sie eine Ablaufverfolgungsabfrage für diese Anwendung.

context

Erstellen Sie einen neuen Enumerationskontext für diese Anwendung.

context() -> _Context

disable_parallel_traces

Deaktivieren Sie die parallele Ablaufverfolgungsgenerierung für diese Anwendung.

disable_parallel_traces()

enumerate_traces

Liefern Sie alle Ablaufverfolgungen einer Anwendung mit ihren Dataclass-Parametern.

enumerate_traces(**kwargs) -> Generator[Trace, None, None]

Parameter

Name Beschreibung
**kwargs
Erforderlich

Domänenüberschreibungen, die weitergeleitet werden._enumerate_instances

enumerate_traces_with_parameters

Ertragspaare (Parameter, Ablaufverfolgung) für eine Anwendung.

Wie enumerate_traces, aber jede zurückgegebene Ablaufverfolgung wird von den Ablaufverfolgungsparametern begleitet, die zum Generieren verwendet wurden.

enumerate_traces_with_parameters(**kwargs) -> Generator[tuple[TraceParameters, Trace], None, None]

Parameter

Name Beschreibung
**kwargs
Erforderlich

Domänenüberschreibungen, die weitergeleitet werden._enumerate_instances

get_trace

Gibt die Ablaufverfolgung zurück, die dieser Anwendung und parameter entspricht.

abstract get_trace(parameters: TraceParameters) -> Trace

Parameter

Name Beschreibung
parameters
Erforderlich
<xref:qdk.qre.TraceParameters>

Die Ablaufverfolgungsparameter.

Gibt zurück

Typ Beschreibung

Die Ablaufverfolgung für diese Anwendungsinstanz und Parameter.

post_process

Nach dem Verarbeiten eines Schätzungsergebnisses für einen bestimmten Satz von Ablaufverfolgungsparametern.

post_process(parameters: TraceParameters, estimation: EstimationResult) -> EstimationResult

Parameter

Name Beschreibung
parameters
Erforderlich
estimation
Erforderlich

q

Erstellen Sie eine Ablaufverfolgungsabfrage für diese Anwendung.

static q(**kwargs) -> TraceQuery

Parameter

Name Beschreibung
**kwargs
Erforderlich

Domänenüberschreibungen, die an die Ablaufverfolgungsparameterenumeration weitergeleitet werden.

Gibt zurück

Typ Beschreibung

Eine Ablaufverfolgungsabfrage für diesen Anwendungstyp.