GMPのGMPXXラッパーを使用していますが、十分に高速ではありません。有理数ライブラリの速度の比較を見つけることは可能ですか?
計算中に、分母が 10^100 で分子が同じサイズの非常に大きな有理数が表示されます。
GMPよりも速いものを知っていますか?
GMPよりも速いものを知っていますか?
Haskellの人々はあなたと同じような問題に直面したようです。ここに彼らのメモがあります:
有理数は float/double です。問題は基本的に基数 2 (コンピューターで使用される) と基数 10 (古典的な数学計算で人間が使用する) であり、最終的に一般的な有理数の適切な表現を取得することは、 10^100 の大きさの値を考えると、これは非常に良い挑戦になります。
10^100/10^100 によって生成された float は非常に巨大になる可能性があり、コンピューターでこれを行うことは、私の意見では非常に高度なラボ向けのものであるため、少し立ち止まってこれについて考える必要があると思います。ライブラリがこの種の問題を効率的に、そして最も重要なことに、これほど大きな精度で解決することを期待してください。