次の方法で共有


LookAheadDKRSAddLE 操作

完全修飾名: Std.Arithmetic.LookAheadDKRSAddLE

operation LookAheadDKRSAddLE(xs : Qubit[], ys : Qubit[], zs : Qubit[]) : Unit is Adj

概要

再読み込みアルゴリズムを使用して、ゼロ初期化のリトル エンディアン レジスタ z をリトル エンディアン レジスタ xs と y の合計に設定します。

説明

zs := xs + ys + zs[0] 剰余 2ⁿ を計算します。 ここで、xs、ys、zs はリトル エンディアン レジスタ、Length(xs) = Length(ys) ≤ Length(zs) = n です。ただし、zs[0] を除き、zs[0] は |0> または |1> 状態になり、持ち込みとして使用できます。 注: zs[Length(xs)] は、zsxsよりも長い場合は、実行として使用できます。 この操作では、先読みアルゴリズムを使用します。

リファレンス

  • arXiv:quant-ph/0406142 "A logic-depth quantum carry-lookahead adder", Thomas G. Drr, Samuel A. Kutin, Eric M. Rains, Krysta M. Svore