gmpから実行すると、次のことに気付きましたR。
Rgames> log2(Inf)
[1] Inf
Rgames> log2(as.bigz(Inf))
[1] 8000
ここで何が起こっているのですか?それとも、gmp言語 (またはgmp::log2.bigzメソッド) が "Inf" の概念をサポートしていないのでしょうか?
編集:ジョシュのコメントは正しいです:それはlog2関数自体ではなく、整数としてas.bigz変換Infされるように見えるという事実です。タイトルを合わせて変更。2^8000bigz
ところで、これもあります:
Rgames> log2(-Inf)
[1] NaN
Warning message:
NaNs produced
Rgames> log2(as.bigz(-Inf))
[1] NaN
編集:それはばかげていました。log2(negative_anything)はNaN
しかし、
Rgames> log2(-as.bigz(-Inf))
[1] 8000
ジョシュの答えに適合します。