FourierChecking
class qiskit.circuit.library.FourierChecking(f, g)
ベース: QuantumCircuit
フーリエ検査回路。
[で]紹介したフーリエ検査アルゴリズムの回路は、ハダマードの層、関数 、ハダマードのもう1つの層、関数 、そしてハダマードの最後の層を含む。 関数 と は、位相オラクル(対角線上に {-1, 1} を持つ対角演算子)として実現される古典関数である。
全ゼロ文字列を観測する確率は である。このアルゴリズムは、fがgのフーリエ変換と相関があるかどうかを決定する約束フーリエ検査問題を、 または 、これらのどちらか一方が真であることを約束するかどうかをテストすることによって解決する。
関数 と は現在、真理値表から実装されているが、特殊なクラスの関数については簡潔に表現し、効率的に実装することができるだろう。
フーリエ検査は、 -fold forrelation [2] の特別なケースである。
参照資料:
[1] S. Aaronson, BQP and Polynomial Hierarchy, 2009 (Section 3.2 ). arXiv:0910.4698
[2] S. Aaronson、A. Ambainis、Forrelation: 量子コンピューティングと古典コンピューティングを最適に分離する問題、2014年。 arXiv:1411.5729
フーリエ検査回路を作成する。
クラス qiskit.circuit.library.fourier_checking.FourierChecking は Qiskit 2.1 で非推奨となりました。 Qiskit 3.0 で削除されます。 代わりに qiskit.circuit.library.fourier_checking。
パラメーター
レイズ
CircuitError - 入力fとgが有効でない場合。
基準回路:

属性
name
タイプ: str
人間が読める回路名。
例
from qiskit import QuantumCircuit
qc = QuantumCircuit(2, 2, name="my_circuit")
print(qc.name)my_circuit