「1=2/(3-1)=2/(3-2/(3-1))=…」はなぜ1にも2にもなるのか証明で解説

問題

次のような二つの計算があります。一つ目は「1=2/(3-1)=2/(3-2/(3-1))=…」というもので、1を代入すると自分自身に戻ってきます。二つ目は「2=2/(3-2)=2/(3-2/(3-2))=…」というもので、2を代入した場合も同じく自分自身に戻ってきます。
この二つの計算がどちらも成り立つように見えるのはなぜか。

両方の計算に計算ミスはない

まず結論から述べると、この二つの計算そのものに算数上の間違いはありません。理由は単純で、「x=2/(3-x)」という方程式を解くと、解が二つ出てくるからです。

「x=2/(3-x)」の両辺に「3-x」をかけると「x(3-x)=2」となります。これを展開すると「3x-x^2=2」となり、整理すると「x^2-3x+2=0」という二次方程式になります。この式は「(x-1)(x-2)=0」と因数分解できるため、解はx=1x=2の二つです。

つまり1を代入しても2を代入しても方程式が成り立つのは当然のことであり、それぞれの計算は単に「自分が方程式の解であること」を確認しているだけです。

本当の問題はどこにあるか

問題は、この二つの計算結果から「元の入れ子の式は1でもあり2でもある」と結論してしまうと、1=2という矛盾が生まれてしまう点です。

この矛盾が生じる原因は計算そのものではなく、次のような暗黙の前提にあります。「ある数xが、x=2/(3-x)を満たすなら、xは元の入れ子の式の値である」という前提です。

これは誤りです。正しくは、方程式を満たすことは値の候補であるための必要条件にすぎず、十分条件ではありません。1も2もこの方程式を満たすという意味では対等ですが、実際にどちらが元の式の値なのかは、方程式を解くだけでは決まらないのです。

元の式の値を数列の極限として定義する

元の入れ子の式は、本来「有限の段数の計算を無限に深くしていったときの極限」として定義されるべきものです。そこで数列を次のように定義します。「a(1)=2/3」、「a(n+1)=2/(3-a(n))」です。この数列が実際にどの値に近づいていくかを、以下で厳密に調べます。

補題1 すべてのnで0

数学的帰納法で証明します。

n=1のとき、「a(1)=2/3」であり「0<2/3<1」なので成り立ちます。 n=kのとき「0補題2 数列a(n)は単調増加である

差「a(n+1)-a(n)」を計算します。「2/(3-a(n))-a(n)」を通分すると「(2-a(n)(3-a(n)))/(3-a(n))」となり、分子を展開すると「(a(n)^2-3a(n)+2)/(3-a(n))」、これを因数分解すると「(a(n)-1)(a(n)-2)/(3-a(n))」となります。

補題1より「a(n)」は0と1の間にあるため、「a(n)-1」は負、「a(n)-2」も負であり、負×負で分子は正になります。分母の「3-a(n)」も正であるため、「a(n+1)-a(n)」は正となり、この数列は単調増加であることが分かります。

収束することの確認

数列が単調増加であり、かつ補題1により1という上界を持つことから、有界単調数列の収束定理により、この数列はある値Lに収束します。さらに補題1の結果から、Lは1以下でなければなりません。

極限値の決定

漸化式「a(n+1)=2/(3-a(n))」の両辺でnを無限大に近づけると、「L=2/(3-L)」という関係が得られます。これは先ほど解いた方程式と同じものであり、解は「L=1」または「L=2」です。

しかし収束の議論によりLは1以下と分かっているため、「L=2」は成り立たず、結論として

L=1

が導かれます。

まとめ 間違いはどこにあったか

今回の問題を整理すると、次のようになります。

  • 1と2はどちらも方程式x=2/(3-x)の解であり、それぞれの計算に間違いはない
  • しかし両方成り立つことは、1=2であることを意味しない
  • 誤りがあるとすれば、方程式を満たすことと元の式の値であることを同一視してしまう点にある
  • 実際の値は、有限段の数列の極限として単調性と有界性から厳密に決定する必要がある
  • その結果、真の値は1であり、2は方程式が生み出した余分な解である

元の入れ子の式が実際に表している値は1であり、2という数はこの式の本当の値ではなく、方程式を解く過程で紛れ込んだ、もう一つの不動点にすぎないという結論になります。

コメント

タイトルとURLをコピーしました