슈카리코토 정주행 하면서 나온 얘긴데
내 생각은
이 논제를 헷갈리는 이유는 정확한 용어의 정의 없이 직관만으로 논증하려 했기 때문이다. 가령 무한 소수라는 것을 점점 '다가가는' 수 같은 식의 임의로 움직인다는 개념을 집어넣거나 하는데 수학에 '움직이는 수'라는 개념은 없다. 대부분의 수학을 다루지 않는 일반인들은 고등학교에서 수박 겉핥기 식으로만 극한을 배우게 된다. 그런데 고등학교 수준에서는 해석학을 제대로 다룰 수가 없기 때문에 극한과 그 관련 개념들에 대해서 제대로 된 설명을 하지 않고 넘어가게 되면서 사람들의 혼란을 초래하게 된다. 심지어 교사들마저도 이에 대해 제대로 이해하지 못하고 잘못된 설명을 하는 경우가 아주 흔하다. 고로 이런 혼란이 일어난 것은 수학이라는 학문을 애매한 정도로 어설프게 가르친 교육과정의 잘못이 크다고 할 수 있다.
다행히도 0.999... = 1이라는 사실은 수학적으로 아주 간단하게 증명할 수 있다. 고등학교 수준의 수학 지식이 있다면 이해하는 데에 무리는 없을 것이다. 문과라면 결론만 보자
0.999...같은 표기를 쓰기 전에 일단 '무한소수' 라는 것이 무엇인지를 알 필요가 있다. 정의는 간단하다. 수열 left{ a_n right}_{n in mathbb N}{an}n∈N을 생각하자. 만약에 알아보고 싶은 무한소수가 0.999... 라고 한다면 a_1 = 0.9, a_2 = 0.99, a_3 = 0.999, ...a1=0.9,a2=0.99,a3=0.999,... 이 될 것이다. 무한소수라는 것은 이러한 수열의 극한으로써 정의된다.
극한에 대해서는 해당 항목에 자세히 설명이 되어 있으므로 관심이 있다면 참고하자. 간단히 설명하자면, a_nan의 극한이 a라는 것은 아무리 작은 양수 epsilon+를 제시하더라도, n을 충분히 크게 함으로써 aa와 a_nan 사이의 거리를 epsilon+보다 작게 할 수 있다는 의미이다. 직관적으로도 이 정의는 우리가 일상적으로 말하는 '무한히 접근한다' 라는 표현과 일맥상통함을 이해할 수 있을 것이다. 이 정의를 만족하지 않는데 a_nan가 aa로 무한히 접근하지 않을 방법이 있을까 고민해 본다면 명확하다.
첫 번째 문제는 left{ a_n right}_{n in mathbb N}{an}n∈N의 극한값이 존재할지에 대한 것이다. 두 번째 문제는 이 극한값이 무엇일지에 대한 문제이다. 다행히도, 임의의 무한소수에 대해 left{ a_n right}{an}의 극한값은 존재하고, 그 극한값은 이 수열의 상한(supremum), 풀어 쓰면 '모든 n에 대해 a_nan보다 크거나 같은 숫자의 집합에서 가장 작은 수' 와 같다.
이를 증명하기는 어렵지 않다. 일단 집합 left{ a_n | nin mathbb{N} right}{an∣n∈N}이 상계(upper bound)를 가진다는 것을 보이자. 예를 들어 '10'은 임의의 a_nan보다 크므로 이 집합의 상계이다. 실수의 완비성에 의해 공집합이 아닌 실수의 부분집합에 상계가 존재한다면 상한(supremum)은 언제나 존재한다. 수학자들이 부등호를 적절하게 조절하여 임의의 집합에 대해서도 항상 존재할 수밖에 없도록 만든 개념이기에 그렇다. 이는 하한(infimum)도 마찬가지. 자세한 것은
https://en.wikipedia.org/wiki/Least-upper-bound_property를 참조
그 다음은 이 상한이 이 수열의 극한값이라는 것을 증명해야 한다. 단조 수렴 정리(monotone convergence theorem)에 의하면, 임의의 수열이 위로 유계이고 증가하는 수열이라면 그 극한값이 존재하며 극한값은 그 수열의 상한과 같다.
이를 증명하기 위해 위 명제가 성립하지 않는다고 가정하자. 즉, left{ a_n right}{an}이 증가 수열이고, 위로 유계임에도 불구하고 left{ a_n | nin mathbb{N} right}{an∣n∈N}의 상한 cc로 수렴하지 않는다고 가정해 보자. 그러면 극한의 정의에 의해 어떤 epsilon+이 존재하여 아무리 n을 키워도 cc과 a_nan의 차이를 epsilon+보다 작게 만들 수 없어야만 한다. 하지만 그럴 경우, cc가 left{ a_n | nin mathbb{N} right}{an∣n∈N}의 상한이라는 가정에 위배된다. 왜나하면 c-0.5epsilonc−0.5+라는 수는 cc보다 작으면서도 left{ a_n right}{an}의 상계가 될 수 있기 때문이다. 따라서 위 명제가 성립하므로, 수열 left{ a_n right}{an}의 극한값이 존재하며 그 값은 left{ a_n | nin mathbb{N} right}{an∣n∈N}의 상한과 같다.
이제 모든 증명이 끝났다. displaystyle a_n=1-frac{1}{10^n}=0.999cdots 9an=1−10n1=0.999⋯9(9가 n개)라고 하자. 그러면 left{ a_n | nin mathbb{N} right}{an∣n∈N}의 상한은 1이다. 따라서 0.999.... = 1이다.