札幌新川高等学校 中村文則

○彼方の世界へ

<先 生>対数は、もともと数学者ネピアが天体の星同士の距離なんかを求めるために考えたものですが、ではどうやって計測したのか今日は実際に調べてみよう。

ex) 3100は何桁の数か求めよ。ただし、log10x=0.4771 とする。

<先 生>まず、x=3100とおいて、両辺の常用対数をとります。
   log10x=log103100=100log103=47.71
 ここで、大雑把に考えれば、
   47<log10x<48
ということになるね。ところで、47=47log1010=log101047 。48についても同様に考えると、
   log101047<log10x<log101048
 対数関数 log10x は増加関数だから、真数を比較すると、
   1047<x<1048
 この式からxの桁数を求めることができる。まなぶ、何桁だろう。

<まなぶ>うーん。ちょっと値がでかすぎて……。

<先 生>そういうときはもう少し分かりやすい桁数に引き降ろしてやればいい。
   102<x<103
だとどうだい。

<まなぶ>それなら分かります。xは100から999までの整数だから、3桁です。

<先 生>そうだね。ではその3桁の3ともとの不等式との関係を考えてごらん。

<まなぶ>そうか。右辺の指数の値に一致しているから……、分かりました。48桁です。

<先 生>そうだね。このように常用対数を利用すれば大きな数の桁数を求めることが可能になるんだ。でもね。よく考えるとこの桁数っていうのはずいぶん乱暴な数字ではないだろうか。

<よしお>どうしてですか。

<まなぶ>ぼくは分かるな。先ほどの3桁の例で考えればいいんだ。3桁の数のお金を貰えるとしたとき、100円を貰うのと、999円を貰うのではぜんぜん違うよ。

<かず子>なるほど。それに対して999円と1000円じゃ、3桁と4桁なのにほとんど同じように感じるわね。

<先 生>うん、だから桁数を求めただけでは、例えば恒星の距離なんかを調べる場合なんかは不正確な値だということがわかるだろう。桁数だけでなく、ある程度の大きさを示す値、すなわち最高位の数が何なのかということも大事なことになってくる。

<かず子>でも、先生、最高位の数は求めることができるんですか。

<先 生>そのヒントは先ほどの解答の中にあるんだ。さて、どこだろう。

<よしお>分かりますよ。先生が「大雑把に考える」といったところですよね。

<先 生>そのとおり。先ほどは、
   log10x=47.71  ……(*)
からその小数部分を無視してずいぶん大雑把に範囲を考えてしまったね。実はこの小数部分が最高位の数を決定しているんだ。上の(*)の式の意味をもう一度考えてみよう。
 (*)を指数の形で表現すれば、
   x=1047.71=100.71・1047
ここで、
   1=100<100.71<101<10
 これから、1047 が桁数を表し、100.71 が1桁の数を表していることになる。だから100.71 のおおよその値が分かれば、その整数部分が求める最高位の数というわけだ。

<まなぶ>でもどうやってそれを求めればいいんですか。

<先 生>それは、問題文で与えられていた log103=0.4771 から予想がつくだろう。対数の意味を考えれば、これは何をいってるんだろう。

<よしお>そうか。対数から指数の変換を考えれば、
   100.4771=3
ということですね。これから 3=100.4771<100.71 だから、100.71 は3より大きい値だということが分かりますよね。これと同じように、1桁の整数が10を底として表現できればいいのではないでしょうか。

<先 生>その通り。対数は、数を底を統一して表現するための潤滑油のような働きをするんだ。なお、底を10にするにはもうひとつ必要な対数の値がある。
   log102=0.3010
 この値を使って1から9までの整数を底を10として表してみよう。例えば、
   log104=2log102=0.6020
というようにだ。他の数はどうなるだろうか。

<まなぶ> log108=3log102=0.9030、log109=2log103=0.9542 さらに
   log106=log102+log103=0.7781
となります。で、log105 はというと……。どうすればいいんだろう。

<よしお> log105=log1010/2=log1010-log102=0.6990 とすればできるよ。あとは、7だけどこれはできるんだろうか。

<先 生>実は7は求められないんだ。2や3と同じようにふつう、近似値 log107=0.8451 で与えられている。さあこれで次の対応表が完成したことになる。

整 数12345678910
底10のべき乗100100.3010100.4771100.6020100.6990100.7781100.8451100.9030100.9542101

 この表から、100.71 のおおよその値を読み取ってみよう。

<よしお> 5=100.6990<100.71<100.7881=6 ですから、5.○○○の数です。したがって、最高位の数は5ということになります。

<かず子>凄い。求まっちゃうんだ。これでかなり正確な値が分かったことになりますね。

<まなぶ>でもね、先生。3桁ぐらいの数なら500円と599円はそんなに気にならないけど、50,000円と59,999円だったらずいぶん違うと思うな。ましてや48桁になると凄い差がでてくるわけで、最高位の次の数も必要なのではないでしょうか。

<先 生>まなぶはどうしてもお金と結びつけたいようだね。でもいっていることも一理ある。では、どうやったらその数は求められるだろうか。

<よしお> 1<100.71<10 だから、10<101.71<100 です。ですから 101.71 が2桁の整数で表現できればいいわけですけどそんなの無理ですよね。

<かず子>私も無理だと思うわ。2桁の数すべてが10を底として表現できなければいけないってことでしょ。

<先 生>そうだね。確かに難しそうだね。でもこの場合は数の範囲は50〜60の間に限定されているから可能性はある。できるかどうかは分からないけれどtryだけはしてみようか。ただ、1047の部分は桁数を表していたわけだから、2桁の数として考えると、桁数も調整しなければいけないことになる。だから桁数をいじるのではなく、100.71 の小数第1位の数はなにかと考えた方がいいだろう。
 まずは、大雑把に予想してみよう。5の次の数字はみんなは何だと思う。

<よしお>先ほどの換算表をみると100.71は5の方に近い値だから、5.2、5.3 くらいの値じゃないでしょうか。でもこの2つの値の対数を計算することはできないと思います。

<かず子>でも 5.4 はできるわ。5.4=2・33/10 でしょ。

<先 生>やってみよう。
   log105.4=log102+3log103-log1010=0.7323>0.71
 狭まってきたね。これから、5.0,5.1,5.2,5.3 のいずれかの値ということが分かるね。では、また予想だ。この中のどの値だろうか。

<まなぶ>僕は、5.1台だと思うな。 log105=0.6990、log105.4=0.7323 なんだから、0.71 との開きを考えると、
   0.71-0.6990=0.011   0.7323-0.71=0.0223
 この開きの差をみると、5と5.4の中点である5.2より値は小さくなきゃいけないだろ。

<よしお>僕も5.1台だと思います。ただ、底が10のときの対数関数のグラフの曲線の曲がり方をみると、5と5.4の中点を基準にするわけにはいかないと思う。中点の5.2よりだいぶ左にずれて、値は5.1の方に近づくんではないでしょうか。

<先 生>だいぶ煮詰まってきたね。みんなの結論は5.1台の数ということだけど、さあそれをどう確認したらいいだろうか。

<まなぶ>小数第1位で調べにくいのなら小数第2位の値まで広げて考えてみたらどうでしょうか。

<かず子>5.10〜5.20の間ということね。5.10,5.11,5.12,……、あっ、512って確か、2のべき乗の値よね。

<よしお>9乗だよ。そうか、この値で判定できるね。
   log105.12=log1029-log10102=0.709

<まなぶ>やったね。もうほとんど0.71といっていい値だ。

<先 生>確かに5.1台の値ということは間違いがないと思うけど、やっぱりここは厳密に判定しなきゃいけない。確認しよう。現時点で分かっていることは、
   5.12=100.709<100.71<100.7323=5.4
ということだ。したがってもう一つ近似できる5.1台の値を見つければいいんだ。

<まなぶ>2と3のべき乗を考えてもそんなの見つからないないなあ。先生やっぱり無理ですよ。大雑把に5.1台でいいんじゃないですか。

<かず子>なにいってんの。まなぶが最初に求められないかって聞いたんでしょ。勝手なんだから。

<よしお>まてよ、先生、平方数で考えるっていうのはどうでしょう。

<先 生>どういうことだろう。

<よしお>5.126=26.01ですから26近辺の数を考えて平方根をとるんです。27なんかがいいのではないでしょうか。

<まなぶ>いっていることがよくわからないよ。

<よしお> ですよね。ここで、
   
 これから、100.71565=5.196

<まなぶ>やった!。見つかったじゃん。
   5.12=100.709<100.71<100.71565=5.196
 やっぱり、5.1台の値だ。最後まで諦めないでよかった。

<かず子>ほんと勝手なんだから。図に乗って小数第2位は何かなんて聞かないでよ。

<まなぶ>僕はそこまでしつこいないよ。

<先 生>もうこれだけ求めれば十分だろう。かず子が最初にいっていたように、基本的にはすべての数が2と3を底とする指数の積として近似できなければ求められない数もでてくる。小数第2位となるとずいぶんそれは難しいのではないだろうか。
 でもね、実は3100の1の位の数は簡単に見つけられるんだよ。3の累乗を順次計算すると、
   31=3,32=9,33=27,34=81,35=243
だね。このそれぞれの1の位の数だけ追いつづければどうなるだろう。

<よしお>次の36の1の位は9で、その次は7ですよね。先生、分かりました。サイクリックに繰り返しているんですね。

<まなぶ> なるほど、3,9,7,1の繰り返しってことか。だから3100がこの繰り返しの何番目にあるか分かればいいんだ。

<かず子> 3100=(34)25とかんがえれば、25回繰り返しているわ。だから、1の位の数は1ですね。

<まなぶ>先生、同じように考えると、十の位の数も求められますよね。

<よしお>えっ、まなぶ、どうやるの。

<まなぶ>2桁の数でサイクリックに繰り返す範囲を求めればいいんだろ。(鞄から電卓を取り出して……)えーっと、べき乗を計算すると、
   3,9,27,81,243,729,2187,6561,……
 あれっ、なかなかでてこないなあ。(ひたすら電卓を叩いて)
   ………,320=3486784401,
 あっ、やった、みつけた。20乗して、下2桁が01なんだから、
   3100=(320)5=(………01)5=…………01
 だから、十の位の数は0だ。

<よしお>凄いね。でも、電卓を使うのは反則だと思うな。

<かず子>それにしても、しつこいわねえ。やっぱりまなぶはまなぶなのね。

<先 生>まなぶの100乗はまなぶということかな。

<まなぶ>先生、ひどいや。

あとがき

 ケプラーが天体軌道に関する法則を発見し、ガリレイが望遠鏡の中に広がる天空に魅せられるようになってから天文学は飛躍的な進歩を遂げます。そのため恒星間の距離、光度を調べるために、「計算師」なる複雑な計算の代行を生業とする職業までもが生まれてくるのですが、しかし、単純に数のべき乗を計算するには限界があり、だんだんと、大きな数を扱う計算技術の開発が必要不可欠なものとなってきました。
 そこで登場するのがイギリス人数学者ネイピアです。彼は三角法の積和の公式をアイデアとしてべき乗を和に変換してしまう対数概念に辿り着きます。そしてその弟子ブリッグスによって、常用対数表が完成され、彼の作った対数表は、当時の計算師には欠かすことのできないものとなります。このことから底を10とする対数(すなわち常用対数)をブリッグス対数と呼ぶこともあります。
 さて、本文についてですが、したがってブリッグスの対数表の恩恵に預かるならば、随分無意味な計算を展開していることになります。対数表や、あるいは文明の利器、関数電卓を使えば苦もなく結果が見えてしまうのですが、人間どこまで頑張れるか?という根性の面に今回はスポットを当ててみました。
 さて、この桁数問題は、対数分野では必ず扱われるものですが、一般には、桁数ばかりを問題にして、大雑把な大きさの評価に終わってしまいがちです。しかし本来の面白さは、

   「最高位の数は何か」、「小数第何位に初めて0以外のどんな数が現われるか」

といった探求にあり、1の位の数が底を10とする指数で表現できることに醍醐味があります。
 しかし、残念なことに、素数7に関しては例外として扱われるために、指導の際もちょっとテンションが下がってしまうものです。
 したがい、7の表現が可能ならこれはかなりのインパクトがあるといえるでしょう。それを本文では、「無理」と簡単に片付けてしまっていますが、実は可能なのです。
 例えば、本文にあるように「平方して数を判定する」という方法で考えてみましょう。72=49とみると、
 ですから、
   
   
 これから、 0.84055<og107<0.8455 となります。この程度の近似で十分かと思いますが、実はもっと簡単に近似することも可能です。
 74=2401 から、 とするのです。計算すると、 ですからほぼ7とみなしていいわけです。これより、
   
 実際の7の対数は、log107=0.8451 ですからかなりイイ値だということが分かるでしょう。ちなみにこの値は「はよ来い」なんで覚えればいいのでしょうか。ところで、3の対数は「死なない」と語呂合わせするのは有名ですが、2の対数はどう命名すればいいのでしょうか。「サオ入れ」とか「サボテン」とかどれもちょっと無理があるような。
 なお、この74の値から、後半の3100の十の位の値を求めることが可能になります。
   
 これから十の位の数字が0であることが分かります。また、
   24015=79792266297612001
であることより、3100の百の位の数も0となります。
 次に、本文中、まなぶが、5.0と5.4の平均から の小数第1位を予想することに対して、よしおが対数関数のグラフから5.1の値により近づくと述べていますが、一般に上に凸な関数については次の性質が成立します。
   
 このことを利用すれば、a=5.0,b=5.4,f(x)=log10xとみると、から、
   0.71<0.71565<log105.2
 これから、100.71≒5.1 が得られます。
 この考えも、近似値を求めるには有用な方法といえるでしょう。
 さて、ところで本文中では、任意の数を2と3を底とする指数を使って表現することは難しいといっていますが、では実際にはどこまで可能なのでしょうか。
 下表は、2m・3n (1≦m,n≦10) の値を示したものです。その値を近似的にみることで、素数の近似値を求めることができます。
 例えば、25・37=69984≒70000 とみて、両辺に常用対数をとると、
   log107=5log102+7log103-4=0.8447
 同様に
   
   
といった具合です。実際の近似値 からみてもまあまあの値です。
 さらに、対数の値が与えられていなくとも、近似的に値を算出できます。例えば、log10210=1024≒103 から、log102=0.3333 となります。もう少し正確な値を求めるなら、x=log102,y=log103 とおくと、
   22・35=972≒103 から、  2x+5y=3 ……@
   29・39=10077696≒107 から、  9x+9y=7   ……A
 これを解いて、x=8/27=0.296,y=13/27=0.481 となります。
 さらに、z=log107 とすると、
   25・37=69984≒7・104 より、5x+7y=z+4   ……B
   210=1024≒10293・73 より、10x=y+3z   ……C
A,B,Cを解くと、
   x=46/153=0.3007,y=73/153=0.4771,z=129/153
 ほぼ、対数表の近似値に一致します。
 ちなみに、Bの式は、下表の2と3のべき乗の対応のいたるところで顔をのぞかせます。

【2と3のべき乗表】

 では次に、整数以外の数のべき乗の桁数について求めてみましょう。円周率πの100乗を例にとります。
 超越数である円周率はよく無理数 で近似されますが,この値では100乗すると 1050 でありかなりの誤差がでてきます。もう少し、正確な値を求めて見ましょう。
 まず、π<3.15ですから, より,
   log10π<2log103+log107-log102-1=0.9483
 次に,π2>3.142=9.8596>9.8=2・72/10 から,
   log10π>(log102+2log107-1)/2=0.4956
 故に
   1049.56<π100<1049.83
 よって、π100は50桁の数になります。
 なお、上述の2と3のべき乗表をみると、24・39=314928≒π×105 ですから,
   log10π≒4log102+9log103-5=0.4979
と近似できます。実際、関数電卓で計算すると、log10π≒0.4971 ですから、イイ値です。
 と、まあ、以上、数字をいじくってみましたが、ここまで凝るのは「まなぶ的やりすぎ」兆候かもしれません。
 だいたい、本文中の【1桁の整数のべき乗換算表】をみても、4桁の対数表と比較すると、その数値にはズレがあります。これは4桁の対数表そのものが近似値だからです。例えば、log102=0.3010 として、29996 を計算すると 29996=103008.8 より、3009桁となりますが、実際の値は、29996=103009.1 であり、3010桁となります。小数第4位以下の部分のズレは、対数を足し引きしているとだんだん大きくなってくるのです。100乗のような天文学的な数は、もうこの世の実在を超越しているわけで、多少どころか大幅にズレていようとどうってことないのかもしれません。
 漸化式の好例として出題される、かの有名なハノイの塔の問題では、バラモン僧が64枚の円盤を移し替えるのに要する手数である264-1でこの世は終焉を迎えるとしています。1手の移動を1秒と考え,完成までの総日数を計算すると,およそ5931億日となります。
 べき乗表をみると,310=59049ですから,
   5931億日≒310×108=1047.71×103=1050.71
 これはπ100=1049.71 をほんのちょっと?超えた値です。こんなもので現世は空蝉となります。ましてや人生のちっぽけなこと。
 ちょっと計算してみましょう。
 人間の寿命を80年位とし,既に無駄に30年を費やしたとします。残り50年のうち,1日8時間は寝ているとして、活動し生活している時間を全体の と考えます。1年を365日として,活動時間の総秒数を計算すると、
   50×2.3×365×24×60=1051200000≒109
 10億秒、これが人生です。こんな計算をくどくどとやっているだけでも300秒ぐらいは使っているでしょうか。
 ということで、だんだん馬鹿らしくなってきたのでこの辺でこの話はやめましょう。
 最後に、まなぶがべき乗の大きさをお金で実感する場面が本文にありますがそのことについて一言。
 対数はいろいろな分野で応用されますが、ひとつに心理学において、フェヒナーの法則というのがあります。
 感覚の強さEは、刺激の強さRの対数に比例するというもので、関係式
   E=k logR
で表されます。これは、ある意味では人間の刺激への順応性と解釈することができます。過度の刺激に対する麻痺がなければ人間は発狂してしまうかもしれません。しかし、こと金が絡むとそうではないことをまなぶは指摘しています。
 例えば消費税については、それを支払いことは国民の義務であると同時に痛みでもあります。この痛みという感覚、金額が大きくなればなるほど増大します。20万円のコンピュータの消費税は1万円です。これはもうショックです。この場合の感覚は,
   e=k eR
とでもなるのでしょうか。
 どうやら,3100というどうでもいいくらい大きな数字でも、金銭の欲や、数学の探求欲に関しては人間、際限はないようです。