Loading article…
GNOME Calculator (バージョン 41.1 以降は MPFR を使用) | |
| 開発者 | GNU プロジェクト( INRIAなど) |
|---|---|
| 初回リリース | 2000年2月4日 |
| 安定版リリース | 4.2.1 / 2023年8月22日 |
| リポジトリ |
|
| 書かれた | C |
| オペレーティング·システム | クロスプラットフォーム |
| タイプ | 数学ソフトウェア |
| ライセンス | LGPL |
| Webサイト | 詳しくはこちら |
GNU多倍長浮動小数点ライブラリ( GNU MPFR ) は、GNU 多倍長ライブラリに基づいて、正しい丸めによる任意精度の二進浮動小数点計算を行うGNUポータブルC ライブラリです。[1] [2]
図書館
MPFRの計算は効率的で、明確に定義されたセマンティクスを持っています。関数はすべての可能なオペランドに対して完全に指定されており、結果はプラットフォームに依存しません。[3]これは、固定精度浮動小数点演算のANSI/IEEE-754標準のアイデア(特に正しい丸めと例外)をコピーすることによって行われます。より正確には、その主な機能は次のとおりです。
- 特殊な数値のサポート:符号付きゼロ(+0 および -0)、無限大、非数(単一の NaN がサポートされます。MPFR は、静かな NaN とシグナリング NaN を区別しません)。
- 各数値には独自の精度(MPFR は基数2を使用するためビット単位)があります。浮動小数点の結果は、サポートされている 5 つの丸めモード( IEEE 754-1985の 4 つを含む)のいずれかで、ターゲット変数の精度に正しく丸められます。
- サポートされている関数: MPFR は、 C99のすべての数学関数とその他の一般的な数学関数を実装しています:自然底、底 2、底 10 の対数と指数、log(1+x) 関数と exp(x)−1 関数 (
log1pおよびexpm1)、6 つの三角関数と双曲線関数とその逆関数、ガンマ関数、ゼータ関数、誤差関数、算術幾何平均、べき乗(x y ) 関数。これらすべての関数は、その範囲全体で正しく丸められます。 - 非正規数はサポートされていませんが、
mpfr_subnormalize関数を使用してエミュレートできます。
MPFRはプログラム全体または式内の数値の精度を追跡することはできません。これはMPFRの目的ではありません。Arb [4] MPFI [5]などの区間演算パッケージや、 MPFRに基づく可能性のあるiRRAM [6]などの実RAM実装は、ユーザーに代わってそれを行うことができます。
MPFR は、GNU Multiple Precision Arithmetic Library (GMP)に依存しています。
MPFRはGNUコンパイラコレクション(GCC)をビルドするために必要です。 [7] ALGLIB、CGAL、FLINT、GNOME Calculator、Julia言語実装、Magma数式処理システム、Maple、GNU MPC、GNU Octaveなどの他のソフトウェアもMPFRを使用しています。
参考文献
- ^ Fousse, L.; Hanrot, G.; Lefèvre, V.; Pélissier, P.; Zimmermann, P. (2007). 「MPFR: 正しい丸め機能を備えた多倍長バイナリ浮動小数点ライブラリ」ACM Transactions on Mathematical Software . 33 (2): 13:1–15. doi :10.1145/1236463.1236468. S2CID 9641003.
- ^ Higham, Nick (2015年10月8日). 「混合精度演算の台頭」. 2020年5月23日閲覧。
- ^ 「MPFR に関するよくある質問: 1. GMP の MPF と MPFR の違いは何ですか?」
- ^ 「Arb、任意精度ボール演算用のCライブラリ」。2022年5月31日閲覧。
- ^ 「MPFIプロジェクト」。GitLab at Inria 。 2022年5月31日閲覧。
- ^ 「iRRAM、正確な実数演算のためのソフトウェアライブラリ」 。 2022年5月31日閲覧。
- ^ 「GCC 4.3 リリース シリーズ: 変更点、新機能、および修正」。2012 年 11月 2 日。2013 年9 月 25 日閲覧。
外部リンク
- MPFR公式ウェブサイト
