メインコンテンツへスキップ
CalcMax

逆対数計算

範囲:-1,000〜1,000

範囲:0.00〜1,000,000,000,000,000

計算結果

1,000.000000

逆対数

逆対数とは、対数を逆にたどる計算です。対数と底を入れると、その対数がもともと何の数から取られたのか、つまり底をその回数だけ掛け合わせてできる数が返ってきます。底10における1,000の対数は3なので、底10における3の逆対数は1,000になります。2つのページは互いの逆演算で、底の入力欄は共通です。指数は負にも小数にもなるため、答えが必ずしもきりのよい数になるとは限りません。底10における2.5の逆対数は316.227766で、このページは小数6桁まで表示します。

対数と、その対数がもとになった真数

底対数真数
102100
1031000
105100000
28256
2101024
3481
4364
53125
7249

どの行も1つの累乗を、このページが働く向きに読んだものです。3列目の真数は、1列目の底を2列目の対数だけ累乗した数になります。対数のページの表と同じ事実を逆向きに読んだだけで、10の3乗は1000のままです。行が整数なのは意図的です。小数の対数の表は言語ごとに書き分けが要ります。0.301030は多くの言語で0,301030と書かれるからです。整数ならどこでも同じ字になり、この列は10の言語すべてで同じ文字列になります。底eの行がないのは、eが整数でないからです。その逆算は累乗ではなく指数関数になります。

公式

x = b^y (b = 底、y = 対数、x = 真数)

y
対数で、出発点になる指数です。−1,000から1,000までの値を受け付けます。負の値は特別扱いではありません。底10における指数−2は0.01を返し、これは1より小さい答えです。負の対数とはそういう意味です。小数の指数も受け付け、その場合はふつう無理数になります。
b
底で、累乗される側の数です。正でなければならず、1であってはなりません。底1は対数のページより厄介な形で失敗します。逆向きに計算すると1の何乗も黙って1を返すので、このガードがない計算機はどの対数を入れても真数として1を印字してしまいます。1より小さい底も受け付け、その場合は増加ではなく減衰を表します。
b^y
累乗そのもので、このページが行う操作です。やっていることは1回のべき乗と、その結果を印字できる数かどうか決める2つのオーバーフロー判定だけです。底を指数の回数だけ掛けるというのは、底を累乗の数直線上で押し上げることと同じで、指数が少し変わるだけで答えが大きく動くのはそのためです。
x
真数で、もとの対数が取られた数、このページの唯一の出力です。正の底を何乗しても正なので、真数はつねに正になります。したがって対数のページと違い、ゼロや負のケースを断る必要はありません。入れた対数がちょうど0のときは、どの底でも真数は1になります。どんな数でも0乗は1だからです。

計算例

  1. 底10における3の逆対数

    1. 底を対数の回数だけ累乗する:10の3乗
    2. 10 × 10 × 10 = 1,000
    3. 真数はちょうど1,000
    4. 対数のページで検算:底10における1,000の対数は3

    2つのページの関係がいちばん分かりやすく出るのがここです。対数の計算機は1,000を受け取って3を返し、このページは3を受け取って1,000を返します。どちらの答えも近似ではなく、検算はどちらの向きでも1回のべき乗で済みます。問題がどちらの数を渡してきても、もう一方にたどり着けます。

  2. 負の対数の逆対数

    1. 指数が負なら、正の累乗の逆数になる
    2. 10の2乗は100なので、10の−2乗は1 ÷ 100
    3. 真数は0.01
    4. 真数が1より小さいときは、対数が負だったということ

    逆対数が求められる場面の半分で、しかも手計算でいちばん間違えやすい半分です。負の対数はつねに0と1のあいだの真数を与え、0にも負にもなりません。正の底のどんな累乗もそこには届かないからです。真数がちょうど1になるのが境目で、それは対数がゼロの場合に対応します。

  3. 小数の対数の逆対数

    1. 指数を分ける:10の2.5乗は10の2乗かける10の平方根
    2. 10の2乗は100、10の平方根は約3.162278
    3. 100 × 3.162278 = 316.227766
    4. 厳密な値は無理数なので、小数6桁に丸めている

    対数表と対数そのものを分けるケースです。2.5は整数ではないので、逆対数も整数にはなりません。厳密に書くと100√10という無理数で、小数を何桁並べても終わりません。表示される6桁は表示の上限であって、値そのものではありません。

適用限界

底は正でなければならず、1であってはなりません。理由は上に書いたとおりで、この向きに計算すると底1はどの入力に対しても黙って1を返し、それがこのページでいちばん避けたい失敗だからです。対数は±1,000までに限られます。その範囲を外れると真数が倍精度で表せる上限、およそ1e308を超えてしまうため、このページはInfinityを印字せずに断ります。同じ限界のもう一端のほうが重要です。底1e−15の100乗は浮動小数点ではゼロに下溢し、ゼロはごく普通の答えに見えますが、真数がゼロになる対数は存在しません。その下溢も断ります。表示は小数6桁に丸めます。1より小さい底も受け付け、1より小さい真数を返します。これは誤りではなく減衰の場合です。負の底は受け付けません。負の底の整数乗は実数ですが、負の底の小数乗は実数にならず、このページは小数の指数を扱うので、どちらも取らないという判断です。

よくある質問

逆対数とは何か
対数を取る前の数のことです。底10における1,000の対数は3なので、底10における3の逆対数は1,000になります。式で書くと、底bにおけるyの逆対数はbのy乗です。名前は印刷された対数表に由来し、読者は片方の向きに対数を、もう片方の向きに逆対数を引いていました。
逆対数は対数の逆算と同じものか
同じです。逆算のほうが説明的な名前で、2つの操作は互いを打ち消すので、対数を取ってから逆算すると最初の数に戻ります。実際には底10の対数の逆算は10のx乗、自然対数の逆算はeのx乗と書きます。このページはその2つに限らず、任意の底で逆算を計算します。
対数が負のときはどうなるのか
真数は0と1のあいだになります。指数が負なら、対応する正の累乗の逆数になるので、底10における−2の逆対数は1 ÷ 100、つまり0.01です。これは別扱いが必要な例外ではなく指数のごく普通の振る舞いで、逆対数が小さな答えを出す唯一の経路でもあります。
底が1ではいけないのはなぜか
1は何乗しても1なので、特定の真数について方程式が解けないからです。この向きでは失敗が対数のページより厄介になります。1のy乗はエラーにならず黙って1を返すので、ガードがなければどの対数を入れても真数として1を印字してしまいます。それを止めるためにこの判定があります。
とても小さい底が断られるのはなぜか
計算が下溢するからです。底1e−15の100乗は倍精度で扱える最小の正の数をはるかに下回るため、計算結果はゼロになります。そしてゼロはごく普通の答えに見えますが、真数がゼロになる対数は1つもありません。このページは、正常に見える誤った数を印字する代わりに入力を断ります。
真数が負になることはあるか
ありません。正の底を何乗しても正なので、どんな対数の真数も正であり、その逆対数も正でなければなりません。このページは出力を検査するのではなく、構造としてそれを保証しています。壊す原因になる入力、つまり正でない底や1の底は、べき乗を行う前に断られます。

参考文献

関連する計算ツール