乗算のゲート数が最も少ない


9

2つのnビット整数を乗算する回路のゲート数の最良の結果は何ですか?

明らかな方法は、ゲートを生成します。およびゲートを使用したより良いアプローチがあり。θ(n2)θ(nlog⁡nlog⁡log⁡n)θ(んログ⁡ん2ログ∗⁡(ん))

ゲートの乗算を処理できるブール回路ファミリは見つかりませんでした。そのような回路のファミリーは存在するのだろうか。んログ⁡ん


1
あなたは算術回路またはブール回路を探していますか?
— Suresh Venkat 2014年

1
ブール回路を探しています。
— アミール

レコードのアルゴリズムとは何ですか?それだけ多くのゲートを使わないのですか?O(んログ⁡ん)
— vzn 2014年

3
@vznいいえ、Martin Fuererのアルゴリズムは最もよく知られており、ゲートを持つ回路を提供します。Schonhage-Strassenは、実際には非常に大きな数の一部のコンピュータ代数システムで使用されています。O(んログ⁡ん2ログ∗⁡ん)
— Sasho Nikolov、2014

4
TMを回路に変換するためのオーバーヘッドがいくつかあります。時間アルゴリズムドアは、t (n )ゲートを持つ回路を与えません。一般的な変換は、回路値の問題の回路の複雑さよりも優れていることはできません。一方、逆方向にもオーバーヘッドがあるため、最良の均一な複雑さは回路の複雑さの下限を意味しません。つまり、実行中のTMがない場合でもサイズO (n lg n )の回路が存在する可能性があります。乗算の時間。t(ん)t(ん)O(んlg⁡ん)
— Kaveh

回答:


2

以下は、質問のコメントで議論されたアルゴリズム(Schönhage–Strassenアルゴリズムと Fuererアルゴリズム、調査の335ページを参照)。ただし、実装は別の問題であり、これらのアルゴリズムの一部は実用的とは見なされない場合があります。調査は実際的な実装をカバーしていません。調査には、多項式、べき級数、実数、および2進数のアルゴリズムが含まれますが、整数はこれらの特殊なケースです(336ページの図1を参照)。O(んログ⁡ん2ログ∗⁡ん)

高速乗算とその応用、バーンスタイン(アルゴリズム数論/ MSRI出版物/ボリューム44、2008)


リンクされた論文には335または336ページがありません。おそらく別のファイルにリンクするつもりでしたか?
— argentpepper 2014年

おっとっと!チップのthx。上記のバージョンはドラフトとしてマークされています。引用されたpg #sを含むこのバージョンはおそらく最終版ですか?
— vzn 2014年

1
@vzn: その論文でさえ、周りに大きなOがあります。ログ∗⁡(ん)
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.