Application 類別
應用程式定義了一類量子計算問題,並結合一種產生特定問題實例痕跡的方法。
我們區分應用參數與追蹤參數。 應用程式參數定義了我們想要考慮的應用程式實例。 追蹤參數定義了如何產生追蹤。 它們改變了我們解決問題的具體方式,但不會改變問題本身。
例如,在量子密碼分析中,應用參數可以定義 RSA prime 產品的金鑰大小,而追蹤參數則決定用哪種演算法破解密碼學,以及其中的參數。
建構函式
Application()
方法
| context |
為此應用程式建立新的列舉上下文。 |
| disable_parallel_traces |
在此應用中關閉平行追蹤產生。 |
| enumerate_traces |
根據應用程式的資料類別參數,提供所有痕跡。 |
| enumerate_traces_with_parameters |
為應用提供(參數、追蹤)對。 類似 |
| get_trace |
回傳對應此應用與參數的追蹤。 |
| post_process |
後處理給定一組痕跡參數的估計結果。 |
| q |
為此應用程式建立追蹤查詢。 |
context
為此應用程式建立新的列舉上下文。
context() -> _Context
disable_parallel_traces
在此應用中關閉平行追蹤產生。
disable_parallel_traces()
enumerate_traces
根據應用程式的資料類別參數,提供所有痕跡。
enumerate_traces(**kwargs) -> Generator[Trace, None, None]
參數
| 名稱 | Description |
|---|---|
|
**kwargs
必要
|
網域覆寫會轉發到 |
enumerate_traces_with_parameters
為應用提供(參數、追蹤)對。
類似 enumerate_traces,但每個產生的痕跡都附有用於生成該軌跡的痕跡參數。
enumerate_traces_with_parameters(**kwargs) -> Generator[tuple[TraceParameters, Trace], None, None]
參數
| 名稱 | Description |
|---|---|
|
**kwargs
必要
|
網域覆寫會轉發到 |
get_trace
回傳對應此應用與參數的追蹤。
abstract get_trace(parameters: TraceParameters) -> Trace
參數
| 名稱 | Description |
|---|---|
|
parameters
必要
|
<xref:qdk.qre.TraceParameters>
痕跡參數。 |
傳回
| 類型 | Description |
|---|---|
|
此應用實例與參數的追蹤。 |
post_process
後處理給定一組痕跡參數的估計結果。
post_process(parameters: TraceParameters, estimation: EstimationResult) -> EstimationResult
參數
| 名稱 | Description |
|---|---|
|
parameters
必要
|
|
|
estimation
必要
|
|
q
為此應用程式建立追蹤查詢。
static q(**kwargs) -> TraceQuery
參數
| 名稱 | Description |
|---|---|
|
**kwargs
必要
|
域覆寫轉發至追蹤參數列舉。 |
傳回
| 類型 | Description |
|---|---|
|
此應用程式類型的追蹤查詢。 |