MPIR は非常に優れたライブラリで、現在 C++ で多数を処理するために使用しています。残念ながら、ログ機能はありません。そのため、MPIR の mpz_class の高速なログ機能を探しています。
C++ で既に提供されている (または提供されるべきである) いくつかのログ関数が、Math ヘッダー ファイル (Math.h) に配置されていることは周知の事実です。残念ながら、それらは大きな数を処理できません。これが、私が MPIR ライブラリを使用している多くの理由の 1 つです。
::mpz_class Log( ::mpz_class n ) {
::mpz_class ret;
return ret;
};
n の対数が浮動小数点値を返す場合があります。したがって、ログ関数は浮動小数点値を返すことができなければなりません。Log of 15 を実行すると、1.17609125906 が返されます。