3
高校数学解説
文献あり

日曜数学会発表資料「1=0.999...って本当?」

873
0

はじめに

 この記事では私、子葉が1/22(土)に開催された第23回日曜数学会にて発表した内容をそれとなーくまとめたものになります(発表の一部始終については ここ で見れます)。

1=0.999って本当?

スライド1 スライド1

 こんにちは。子葉です。今日は「1=0.999って本当?」という話をしていきたいと思います。ちなみに左の人物は後で紹介する超実数というものの基礎を築いた数学者であるアブラハム・ロビンソンさんです。

スライド2 スライド2

 一か月くらい前に次のような話がTwitterで話題になりました。

13=0.333
 これはわかります。1割る3の筆算をすると0.3掛けて1余って、また3掛けて1余って、と無限に続くわけですから商は0.333になります。
3×13=1,3×0.333=0.999
 これもわかります。逆数にもとの数を掛けているから1、各桁に3を掛けたら0.999ですね。
・以上より1=0.999
 ふむ?う~ん?ほんまか~?同じ10進法で違う見た目なのに等しくなんのか~?

 たしかに10.999は違う数に見えます。これは本当に正しいのでしょうか。

スライド3 スライド3

 そもそも0.999って何なのか。というと、まず10進法は各桁に10の整数乗を対応させた記数法なので
0.999=0.9+0.09+0.009+
なわけですね。これをちゃんとした数式で書くと
limnk=1n910k
となります。これは簡単に計算できて、確かに1になることがわかります。

でもでもですよ

 やっぱり0.999は「1に限りなく近い、けど、1よりも僅かに小さい数」であってほしいんです。そんな数を考えたいんです。
 じゃあ考えちゃいましょうよ。
 「といってもさっき0.999=1は証明されちゃったじゃないか。」って?実は先ほど結んだ等号
0.9+0.09+0.009+=limnk=1n910k
にはある穴があるんです。ここでは何の断りもなしに「無限に足し合わせる」という操作を「極限」として解釈していました。しかし数学において「無限」の扱いには重々注意しなければなりません。つまり0.999の「極限」以外の解釈の余地があることを忘れてはいけないということです。

スライド4 スライド4

 じゃあ0.999って結局何なのかというと、すこし飲み込みづらいかもしれませんが、
「数列(0.9,0.99,0.999,)に対応する数」
のことを0.999と考えることにしましょう。
 実数の立場ではこの数列の要素はそれぞれ1に対して数値的にほとんど同じ(10.9999)なので、対応する数である0.9991に等しい。と解釈していたわけです。この解釈の仕方を「極限」と呼んでいました。

 0.9991と異なる数であるためにはこの解釈を変えなければいけません。そこで「超積」という解釈を用いた超実数というものを考えてみましょう。
 超実数の立場では数列(1,1,1,)と数列(0.9,0.99,0.999,)を比較すると、これらは要素的にほとんど(というか全く)異なる(10.9999)ので、それぞれの数列に対応する数である10.999は異なる数である。といった解釈をします。
 かくして10.999である。という主張に正当性を持たせることができました!やったね!
 
 おいおいおい。ちょっと待てと。
 いきなり超実数とかいうよくわからない数が出てきたけどもよ、でたらめなことを言われちゃ困る。でたらめな世界で10.999が成り立ってもちっとも嬉しかねえ。俺たちゃあくまで"感覚的な数"として0.999は「1に限りなく近いけど、1よりも僅かに小さい数」であってほしいんだわ。と。
 そう思われるかもしれません。では超実数がいかに"感覚的な数"であるか説明しておきましょう。

スライド5 スライド5

 超実数とはどんな数であるか、簡単な特徴をまとめると次のようになります。ちなみに一番上の項は超実数の定義となりますが、ややこしいので省略します(この"ほとんど同じ"と表現した関係が意外とクセモノで、実は超実数は"ほとんど同じ"の意味の定め方によって違う数が出来たりします。詳しくは 参考文献 を参照してください)。
 まずこの「1=0.999問題」においてもっとも注目したい性質としてほとんど実数と同じ構造を持つという点が挙げられます。超実数は数列によって特徴づけられる数なので項ごとに演算や関係を考えることで四則演算や不等式、また実関数への超実数の代入などが考えられ、それらは実数と全く同じ感覚で扱うことができます(例えば四則演算には体、不等式には全順序という構造が入っています)。
 また超実数ならではの性質として無限小無限大が"数"として存在しています。

※ここは少し長くて小難しいので読み飛ばしてもらってかまいません
 ここで注意してほしいのが無限小とは「(絶対値が)どんな正の実数よりも小さい超実数」であって「どんな正の"超"実数よりも小さい超実数」ではありません。超実数には無限小と呼ばれる数が無数に存在しており、(全順序なので)それぞれに大小関係が考えられます。全ての(0でない)無限小にはそれよりも0に近い無限小が存在するんですね(例えば無限小ε(0)に対して12εεよりも0に近い無限小になります)。無限大についても同様です。
 無限小εや無限大という概念は定数のように考えがちですが、超実数の世界においては無限小も無限大も無数に存在し、「m,nを自然数とする」とか「pを素数とする」と言うのと同じようにεも「無数にある無限小・無限大の中から一つ選んでε,とおいた」と考えるのが適切だと思います。こうすることで本来考えることができなかったεなどを考えたりすることができます(これらの値はεの取り方によって変わります。1ですが、分母と分子が違う無限大超実数1,2ならば一定の値は取りません)。

 そしてこれも今回の話題として注目したい性質として(有限)超実数は実数からちょっと(無限小)だけずらしたものであるという性質があります。具体的には無限大ではない任意の超実数aに対してある実数α(と無限小ε)が一意に存在してa=α+εと表せれる。というわけです。これは"個人的な感覚"として「超実数は数直線上には(実数しか)存在しないが数直線上の"点の中"に存在する」とか「超実数は数直線上の各点に厚みを持たせた数である」といった風にイメージしています。

※ここも少し長くて小難しいので読み飛ばしてもらってかまいません
 以上より超実数がいかに"感覚的な数"であるかはなんとなくわかってもらえたと思います。とはいってもまだ超実数は「天下り的に出てきた数」であることには変わりないと思うので最後にこのような数を考えるメリットを簡単に紹介しておきましょう。
 上では「無限小や無限大が数として扱える」そして「超実数は実数をちょっとずらしたもの」という性質があることを紹介しましたが、それらの性質を使えば関数の極限を直感的に扱うことができます。例えば「limxf(x)=αである」とは超実数の世界において「任意の無限大に対してf()=α+εが成り立つ」と言い換えられます。もしくは超実数aa=α+εという表示に対し、この実数部分(これを標準部と言います)を取り出す関数st(a)=αを使うと「任意の無限大に対してst(f())=αが成り立つ」と表現することができます。
 特に面白いのが微分との関係で、微分とは接線の傾きを「ちょっとずらした点との傾き」を考えることで求める手法でした。それが超実数の世界では"ちょっとずらす"という操作が"無限小だけずらす"という具体的な表現に代わるので、「グラフy=f(x)x=aにおける接線の傾きがmである」とは「任意の無限小dxに対してf(a+dx)f(a)dx=m+εが成り立つ」もしくは「任意の無限小εに対してst(f(a+dx)f(a)dx)=mが成り立つ」と表現できます。
 このように書けるのがどのように面白いのかというと、例えばx3の微分を考えてみたとき、任意の無限小εに対し
(x+ε)3x3ε=3x2+3εx+ε2
が成り立ちますが、無限小の持つ「(無限小)×(有限超実数)=(無限小)」「(無限小)+(無限小)=(無限小)」という性質を考えると3εx+ε2は無限小となります。つまり
st((x+ε)3x3ε)=3x2
となってx3の導関数が3x2であることがわかります。この「無限小が数として扱える」ことの面白さが伝わったかどうかわかりませんが(実際のところ極限による計算とやってることは同じだし)、まあ少しでも興味を持ってもらえたなら嬉しいです。

スライド6 スライド6

 なにはともあれこの"実数とよく似た数・実数をちょっと膨らませた数"であり"無限小や無限大が数として扱える"という点で"感覚的な数"である超実数を皆さんが(存在する)数であると認めるならば、0.999は確かに「1に限りなく近いけど、1よりも僅かに小さい数」であってくれ(るように定義することができ)ます。(ちなみにこの場合そもそも130.333なので冒頭の1=0.999の導出は最初っから間違っていることになります。)
 そしてあくまで実数だけが数だと考えているのであれば10.999が違う数に見えるのは、おそらく「任意の実数は10進法で"一意的に"表すことができる」という誤った先入観を持っているせいなだけで、ただの気のせいです。
 どちらにせよ10.999となる世界もあるということは知っていただけるとありがたいです。

スライド7 スライド7

 ご清聴ありがとうございました。

おまけ

 今回の発表の後に「発表では数列(0.9,0.99,0.999,)に対応する超実数を0.999とおいていたが、他の数列で定義したらどうなるのか」という質問をいただいたのですが、実のところ例えば一項ずらした数列(0,0.9,0.99,0.999,)に対応する超実数を0.999とおくと0.9990.999となります(「1に限りなく近いけど、1よりも僅かに小さい数」であることには変わりませんが)。同一視の条件が「ほとんどのnに対してan=bn」というかなり狭い命題であるだけに数列の構成がちょっと違うだけで違う超実数が出来てしまいます。こうなってくると「超実数の0.999って結局何なのか」となってきますね。(強いて言うなら「1に限りなく近いけど、1よりも僅かに小さい数」全体のことを指すものとでも定めておけばいいと思いますけど。)

 (追記)twitterの方で既に何人かの方から指摘されている通り超実数において「0.999を何と定めるか」ということについてはいくつもの視点があり、そしてその視点によって違う数が出来てしまいます。また超実数の世界においても0.999の解釈の仕方によっては1=0.999が成り立つこともあります。そのことについては私も理解しています。
 ただ今回の発表の趣旨としては1=0.999問題に「0.999は『1に限りなく近いけど、1よりも僅かに小さい数』であってほしい」「実数の世界では"そういう数"が存在しないから等号が成立してしまう」という背景があることに対して「"そういう数"の存在する世界があって、0.999をそのような数として解釈できる(0.999に似ても似つかない数が"そういう数"だったとしても仕方ないですからね)」という別の視点があることを伝えるのが主であり、「0.999が何者であるか」という話題については意図的に避けるようにしています。その点については理解していただけるとありがたいです。

 また今回紹介した「1=0.999問題」には「10.999じゃないの?」という立場と「いやいや1=0.999でしょ」という立場の人がいますが、私としては発表者の皆さんに言われたように「1=0.999であることに納得いかない人たちに『君たちの考えが完全に間違っているわけじゃないよ』と手を差し伸べる発表」というよりも「1=0.999に決まってんじゃんと思っている人たちに『決め付けるのはよくないよ』と指摘する発表」のつもりで発表をしていました。個人的に数学の面白さとして「自分のやりたいことを定式化すること」よりも「今までの常識・固定観念を破壊すること」の方が好きなので、みなさんにもそういった面白さを伝えたかったわけです。
 まあなんにせよ超実数とは中々面白い概念なので私の発表を機にみなさんに興味を持ってもらえたのなら嬉しい限りです。超実数についてもっとよく知りたいという人は、手始めに今回私が 参考にさせていただいた文献 を読んでみると入門として丁度いいかもしれません。

 とりあえず今回はこんなところで。では。  

参考文献

投稿日:2022124
更新日:202412
OptHub AI Competition

この記事を高評価した人

高評価したユーザはいません

この記事に送られたバッジ

バッジはありません。
バッチを贈って投稿者を応援しよう

バッチを贈ると投稿者に現金やAmazonのギフトカードが還元されます。

投稿者

子葉
子葉
1069
263374
主に複素解析、代数学、数論を学んでおります。 私の経験上、その証明が簡単に探しても見つからない、英語の文献を漁らないと載ってない、なんて定理の解説を主にやっていきます。 同じ経験をしている人の助けになれば。最近は自分用のノートになっている節があります。

コメント

他の人のコメント

コメントはありません。
読み込み中...
読み込み中
  1. はじめに
  2. 1=0.999って本当?
  3. おまけ
  4. 参考文献