[論文レビュー] Multiple-precision zero-finding methods and the complexity of elementary function evaluation
この論文は、log(x)、exp(x)、sin(x) などの初等関数を高精度で評価するための高速な複数精度ゼロ探索アルゴリズムを提示する。ニュートン型反復法と可変精度算術を用いることで、n ビット精度における漸近的計算量を約 13M(n)log₂n 操作に抑え、従来の方法に比べ顕著な改善を達成する。ここで M(n) は n ビット数の乗算に要する時間である。
We consider methods for finding high-precision approximations to simple zeros of smooth functions. As an application, we give fast methods for evaluating the elementary functions log(x), exp(x), sin(x) etc. to high precision. For example, if x is a positive floating-point number with an n-bit fraction, then (under rather weak assumptions) an n-bit approximation to log(x) or exp(x) may be computed in time asymptotically equal to 13M(n)lg(n), where M(n) is the time required to multiply floating-point numbers with n-bit fractions. Similar results are given for the other elementary functions. Some analogies with operations on formal power series (over a field of characteristic zero) are discussed. In particular, it is possible to compute the first n terms in log(1 + a_1.x + ...) or exp(a_1.x + ...) in time O(M(n)), where M(n) is the time required to multiply two polynomials of degree n - 1. It follows that the first n terms in a q-th power (1 + a_1.x + ...)^q can be computed in time O(M(n)), independent of q. One of the results of this paper is the "Gauss-Legendre" or "Brent-Salamin" algorithm for computing pi. This is the first quadratically convergent algorithm for pi. It was also published in Brent [J. ACM 23 (1976), 242-251], and independently by Salamin [Math. Comp. 30 (1976), 565-570].
研究の動機と目的
- 任意の高精度での初等関数を計算するための効率的アルゴリズムの開発。
- log(x)、exp(x)、sin(x) などの関数を複数精度算術で評価する際の計算量の分析。
- 高精度乗算のコストに基づいて、これらの評価の漸近的時間上限を確立すること。
- 関数評価と形式的冪級数の演算との類似性を明らかにすること。
提案手法
- 精度を反復中に増加させる可変精度算術を用いて、f(x) = 0 を解くニュートン法を適用する。
- ニュートン・ラプソン法や高次法などの反復的改良技術を用い、2次または3次収束を達成する。
- 反復における精度スケーリングを実施:初期段階では低精度演算を用い、最終段階でのみ完全精度を適用する。
- n ビット数の乗算に要する時間 M(n) の漸近的性質を活用して、合計演算回数を導出する。
- 冪級数合成と逆数化を用いて、関数評価を系列操作(例:log(P(x))、exp(P(x)))に還元する。
- 再帰関係と高速乗算を用いて冪級数係数を効率的に計算し、合計演算回数を最小限に抑える。
実験結果
リサーチクエスチョン
- RQ1log(x) や exp(x) を n ビット精度で評価するための最小計算量は何か?
- RQ2ニュートン型法を可変精度算術に適応することで、合計演算回数を最小化する方法は何か?
- RQ3関数評価と形式的冪級数の演算との関係は何か?
- RQ4高次収束法を用いることで、標準的なニュートン・ラプソン法に比べ演算回数を削減できるか?
- RQ5M(n) = O(n log n log log n) などの M(n) の仮定が、関数評価の漸近的計算量に与える影響は何か?
主な発見
- n ビット精度での log(x) や exp(x) の近似値は、n → ∞ のとき、漸近的に 13M(n)log₂n の時間で計算可能である。
- 除算と逆数評価には、それぞれ漸近的に約 4M(n) および 3M(n) の演算が必要である。
- 逆平方根評価には約 4.5M(n) の演算が必要であり、平方根評価には約 5.5M(n) の演算が必要である。
- 冪級数 P(x) の指数関数は、ニュートン法を用いることで約 9M(n) の演算で計算可能であり、4次法を用いることで約 7.3M(n) にまで低減可能である。
- 冪級数 P(x) の m 乗は、恒等式 P^m = exp(m log(P)) を用いることで O(M(n)) の演算で計算可能であり、大きな m に対して繰り返し二乗法よりもはるかに高速である。
- 導関数が代数的である関数(例:arctan)について、f(P(x)) の評価総コストは、f が効率的に合成可能であると仮定すれば、M(n) の定数倍で抑えられる。
より良い研究を、今すぐ始めましょう
論文の読解から最終レビューまで、研究時間を劇的に削減しましょう。
クレジットカード登録不要
このレビューはAIが作成し、人間の編集者が確認しました。