Resource Estimator で既知の見積もりを使用する方法

この記事では、事前計算された見積もりを使用し、 Azure Quantum Resource Estimator の実行を最適化する方法について説明します。

リソース推定ツールを実行する方法については、「 リソース推定ツールを実行する方法を参照してください。

前提条件

VS Code で Python を使用する場合は、次のものが必要です。

  • VS Code の最新バージョンの Python および Jupyter 拡張機能をインストールします。

  • 最新の Azure Quantum qsharp パッケージ。

    python -m pip install --upgrade qsharp 
    

操作に既知の見積もりを使用する

公開された論文などの操作の見積もりを既に把握している場合、実行時間を短縮する 1 つの方法は、既知の見積もりを取得し、それらをプログラム全体のコストに組み込むことです。

事前に計算された見積もりから見積もりを実行する必要があるシナリオをいくつか次に示します。

  • 論文に記載されている新しいアルゴリズムを試して、プログラムのパフォーマンスが向上するかどうかを確認したいと考えています。 論文から見積もりを取り、プログラムに組み込むことができます。
  • プログラムのトップダウンを開発する必要があります。つまり、main 関数から開発を開始してから、下位レベルを実装します。 最上位レベルの既知の見積もりを、プログラム全体に対して予想される見積もりと共に使用できます。 開発プロセスが進むにつれて、新しいコンポーネントが既知の見積もりの呼び出しを開始し、予想される見積もりが実際の実装に置き換えられます。 このように、プログラム全体の見積もりは事前に知られており、開発が進むにつれてより正確になります。

AccountForEstimatesQ#操作を使用して、既知の見積もりを Resource Estimator に渡すことができます。

Note

特別な操作 AccountForEstimates は、リソース推定器の組み込み操作です。 他の実行 targetsではサポートされていません。

たとえば、既知の推定値の一覧と量子ビットの一覧を受け取るFactoringFromLogicalCountsと呼ばれる次のQ#操作について考えてみましょう。

open Microsoft.Quantum.ResourceEstimation;

operation FactoringFromLogicalCounts() : Unit {
    use qubits = Qubit[12581];

    AccountForEstimates(
        [TCount(12), RotationCount(12), RotationDepth(12),
         CczCount(3731607428), MeasurementCount(1078154040)],
        PSSPCLayout(), qubits);
}

AccountForEstimates操作は、次のパラメーターを受け取ることができます。

を使用する関数 AccountForEstimates 説明
AuxQubitCount(amount : Int) 補助量子ビットの数がamountと等しいことを指定するために、AccountForEstimates操作に渡すことができるタプルを返します。
TCount(amount : Int) T ゲートの数がamountと等しいことを指定するために、AccountForEstimates操作に渡すことができるタプルを返します。
MeasurementCount(amount : Int) 測定値の数がamountと等しいことを指定するために、AccountForEstimates操作に渡すことができるタプルを返します。
RotationCount(amount : Int) AccountForEstimates操作に渡して、回転の数がamountと等しいことを指定できるタプルを返します。
RotationDepth(amount : Int) 回転の深さがamountと等しいことを指定するために、AccountForEstimates操作に渡すことができるタプルを返します。
CczCount(amount : Int) CCZ ゲートの数がamountと等しいことを指定するために、AccountForEstimates操作に渡すことができるタプルを返します。
PSSPCLayout() 並列合成シーケンシャル パウリ計算 (PSSPC) レイアウトを示します。 詳細については、 arXiv:2211.0769 を参照してください。

Note

リソース推定ツールの使用中に問題が発生した場合は、 トラブルシューティング ページを確認するか、 AzureQuantumInfo@microsoft.comにお問い合わせください。