素数のリストと比較するためにフィボナッチ数のリストを生成しようとしています(例)。両方のリストは、最初の既知のfibo / prime番号で始まり、10000番目で終わります。問題は次のとおりです。グラフィカルな比較(グラフ)は、「logBase 2」などの関数がフィボナッチ数に適用されている場合にのみ可能ですが、「logBase」は「浮動」数でのみ機能します(?)。残念ながら、フィボナッチ数は膨大になるので、フィボナッチ数は「整数」(無制限)である必要があると思います。
これは変換の問題につながります。
例(Double対Integer対Rational):
Prelude> (fromInteger 99^155 :: Double)
Infinity
Prelude> 99^155
2105984461967288122980631709715261275645844225982779394351624787177327329412781425212770617487844004735075332631944629831514476725173837569097618069672639524362255333585985536520710945968603104880488606713054412670128838036813075895861981025491395960367363513228812061706617371582639821584522415306665565665499
Prelude> logBase 2 $ fromRational (fromInteger 99^155 :: Rational)
Infinity
したがって、質問:「logBase」のような数学関数を使用して無制限の整数を処理するにはどうすればよいですか?いくつかのヒント?