Skip to main content
QUICK REVIEW

[論文レビュー] In-place fast polynomial modular remainder

Jean‐Guillaume Dumas, Bruno Grenet|arXiv (Cornell University)|Feb 27, 2023
Polynomial and algebraic computation被引用数 1
ひとこと要約

本稿では、入力の一時的変更とその後の復元を許容する、新たなインプレースモデルの緩和を用いて、最初の高速かつインプレースな多項式モジュラリズムと関連する演算のアルゴリズムを提示する。トーペイツ行列表現と再帰的還元を活用することで、剰余計算に O(m/n M(n) log n) の演算を達成し、M(n) = Θ(n^{1+ϵ}) のとき標準の複雑度と一致する。この手法は、多項式拡張におけるインプレースモジュラ乗算と累積計算に応用可能である。

ABSTRACT

We consider the simultaneously fast and in-place computation of the Euclidean polynomial modular remainder $R(X) $ ot\equiv$ A(X) \mod B(X)$ with $A$ and $B$ of respective degrees $n$ and $m $\le$ n$. But fast algorithms for this usually come at the expense of (potentially large) extra temporary space. To remain in-place a further issue is to avoid the storage of the whole quotient $Q(X)$ such that $A=BQ+R$. If the multiplication of two polynomials of degree $k$ can be performed with $M(k)$ operations and $O(k)$ extra space, and if it is allowed to use the input space of $A$ or $B$ for intermediate computations, but putting $A$ and $B$ back to their initial states after the completion of the remainder computation, we here propose an in-place algorithm (that is with its extra required space reduced to $O(1)$ only) using at most $O(n/m M(m)\log(m)$ arithmetic operations, if $\M(m)$ is quasi-linear, or $O(n/m M(m)}$ otherwise. We also propose variants that compute -- still in-place and with the same kind of complexity bounds -- the over-place remainder $A(X) $ ot\equiv$ A(X) \mod B(X)$, the accumulated remainder $R(X) += A(X) \mod B(X)$ and the accumulated modular multiplication $R(X) += A(X)C(X) \mod B(X)$. To achieve this, we develop techniques for Toeplitz matrix operations which output is also part of the input. Fast and in-place accumulating versions are obtained for the latter, and thus for convolutions, and then used for polynomial remaindering. This is realized via further reductions to accumulated polynomial multiplication, for which fast in-place algorithms have recently been developed.

研究の動機と目的

  • 出力変数を入力として再利用する多項式および行列演算の高速かつインプレースなアルゴリズムを設計し、高速アルゴリズムにおける空間複雑度のトレードオフを克服すること。
  • 従来、商の保存に O(n) の追加領域を要するが、Euklidean多項式剰余 R(X) ≡ A(X) mod B(X) のインプレース計算を可能にすること。
  • 入力の一時的変更を許容し、その後元の状態に復元する、インプレースモデルの拡張を実現し、新たなクラスの高速かつ空間効率の良いアルゴリズムを可能にすること。
  • 高速多項式乗算、畳み込み、モジュラ算術(累積的およびオーバープレースのものも含む)のインプレースバージョンを提供すること。
  • M(n) = Θ(n^{1+ϵ}) であるとき、標準の非インプレースアルゴリズムと同等の複雑度境界を達成すること(ϵ > 0)。

提案手法

  • 入力の変更を許容するが、計算後に元の状態に復元するという、インプレースモデルを緩和すること。
  • 多項式演算をトーペイツ行列または巡回行列とベクトルの積として表現し、再帰的分解を用いて効率的なインプレース計算を可能にすること。
  • 再帰的ブロック分解と一般化畳み込みを用いて、多項式乗算と剰余を、より小さな部分問題に対するインプレース演算に還元すること。
  • 「元に戻す」技術を適用:中間計算をインプレースで行い、元の入力を復元することで正しさを保証すること。
  • 再帰的分割と商の上書きを用いて、モジュラリズム剰余計算を短い積とべき級数除算に還元すること。
  • 高速行列アルゴリズム(例:ストラッセンに類似)とインプレース線形代数ルーチン(例:TRMM, TRSM)を、多項式演算の構築ブロックとして活用すること。

実験結果

リサーチクエスチョン

  • RQ1高速な多項式モジュラリズム剰余を、商を完全に保存しない O(1) の追加領域のみでインプレースに計算できるか?
  • RQ2非インプレースバージョンと同等の複雑度を達成できるインプレース多項式乗算アルゴリズムを設計できるか?
  • RQ3入力の復元を伴う緩和されたインプレースモデルを用いることで、高速アルゴリズムにおける速度と空間のトレードオフを打ち破れるか?
  • RQ4多項式除法において、商を保存しないで剰余のみをインプレースに計算する際の最小限の複雑度オーバーヘッドは何か?
  • RQ5インプレースアルゴリズムを、R += A·C mod B のような結果の累積に拡張でき、追加領域を一切使わずに実現できるか?

主な発見

  • 提案されたインプレース剰余アルゴリズムは、非インプレース複雑度より対数的要因のみが増加する O(m/n M(n) log n) の算術演算を実行する。
  • M(n) = Θ(n^{1+ϵ}) であるとき、ϵ > 0 に対してインプレースアルゴリズムは非インプレース複雑度境界 O(m/n M(n)) と一致する。
  • カラーツュバ乗算のインプレースバージョンを実装し、最新の NTL ライブラリとほぼ同等の性能を示した。
  • 著者らは、商を保存しないで多項式除法の剰余のみを計算する最初のインプレースアルゴリズムを提供した。
  • この技術により、モジュラ乗算のインプレース累積(例:R += A·C mod B)が、同じ複雑度境界で可能になった。
  • トーペイツ行列および巡回行列演算のオーバープレースバージョンが導出され、インプレースでの効率的な連立一次方程式の解法と行列-ベクトル積が可能になった。

より良い研究を、今すぐ始めましょう

論文設計から論文執筆まで、研究時間を劇的に削減しましょう。

クレジットカード登録不要

このレビューはAIが作成し、人間の編集者が確認しました。