次の方法で共有


操作の選択

完全修飾名: Microsoft.Quantum.Unstable.TableLookup.Select

operation Select(data : Bool[][], address : Qubit[], target : Qubit[]) : Unit is Adj + Ctl

概要

SELECT ネットワークを使用してテーブル参照を実行します

形容

ゼロ初期化 target レジスタを想定すると、この操作では、address レジスタの計算値に従って、インデックスの data のビット文字列を使用して初期化されます。

インプット

データ

addressの状態に関して target で準備された古典的なテーブル参照データ。 データの長さは 2ⁿ 未満にする必要があります。n は addressの長さです。 データ内の各エントリの長さは、targetの長さと同じである必要があります。

住所

アドレス レジスタ

ターゲット

ゼロ初期化ターゲット レジスタ

備考

SELECT ネットワークの実装は、[1] で示されている単項エンコードに基づいています。 そのアルゴリズムの再帰的な実装は[3]に示されています。 隣接するバリアントは、測定ベースの検索解除操作 [3] を使用して最適化されます。 制御された隣接バリアントは、この手法を使用して最適化されていません。

参照

  1. arXiv:1805.03662 "線形T複素数を持つ量子回路における電子スペクトルのエンコード"
  2. arXiv:1905.07682 "ウィンドウ算術"
  3. arXiv:2211.01133 "Space-time optimized table lookup"