지난 이야기에 이어 이번엔 0.999... 가 왜 1인지에 대해 수학을 가져와 이야기를 풀고자 한다.
( "0.9999...는 왜 1일까?_극한 이야기(1)"을 보고 오시길 추천드립니다. )
0.999... 라는 대상은 다음과 같이 바라볼 수 있다.
첫 번째 수 = 0.9
두 번째 수 = 0.99
....
수열의 표현을 빌려오면
A_n = 1 - (1/10)^n 이라 정의할 때
A_1 = 1 - (1/10)^1 = 0.9
A_2 = 1 - (1/10)^2 = 0.99
...
가 되어 위 수열의 형태를 만족을 하고 극한을 취해보면
lim n -> infinity [ A_n ] 과 같이 표현이 된다.
( = lim n -> infinity [ 1 - (1/10)^n ] )
우리는 수열이 수렴한다는 것을 목표에 한없이 가까워지는 상태로 바라볼 수 있다.
고교 수학과정에서도 수열의 수렴을 이와 같이 소개한다.
하지만, 아직도 모호함이 남아있다. '한없이 가까워진다'는 건 무슨 의미인가?
0, 0, 0, ... 이라는 수열은 왜 '1에 한없이 가까워진다'라고 말할 수 없는 것인가?
'한없이'와 '가까워진다'라는 국어적인 의미는 수학의 언어로 치환할 수 있다.
하지만 치환의 대가는 그리 만만치 않다.
많은 대학생들(공대생, 자연대생)이 1학년 때 대학 미적분학을 공부하면서 겪는 난관이 여기에 있다.
여기에선 자세한 얘기는 생략하고, 수열에 대한 이해를 다른 방향으로 해보자.
어려운 수학의 요소들을 바로 이해하기 보다도, 이미 잘 알려진 도구들을 사용하는 방식으로 말이다.
탄탄한 수학 정의들이 안에 박힌 무기들을 가져올 수 있는데, 이런 것들을 "정리"라고 부른다.
다시 본론으로 돌아와서 { 0.9, 0.99, .... } 수열이 왜 1로 수렴할까? 라는 문제를 살펴보자.
여기에는 아주 강력한(간단하지만 유용한) 정리를 사용하여 문제를 해결할 수 있다.
바로 아래의 "단조 수렴 정리"를 사용하는 것이다.
단조 수렴 정리(Monotone convergence theorem):
계속해서 증가하는 수열이 있는데, 이 수열의 값은 어느 이상으로 커질 수 없다고 한다.
이 때 수열의 값을 유심히 관찰하다 보면 결국 수렴한다는 것이 단조 수렴 정리이다.
반대로 "계속해서 감소하는 수열이 어느 이하로 작아질 수 없을 때" 또한 수렴함을 관찰할 수 있다.
(0에서 0으로 값이 그대로 전달돼도 수학에선 증가한다는 표현을 쓰며, 이를 단조증가 라고한다.)
수식으로 쓰자면 다음과 같다.
계속해서 증가하는 수열: A_1 <= A_2 <= A_3 <= .... 이 있다. 끝없이 값이 증가하지만,
이 수열의 값들인 A_n 은 M 이상으론 커질 수 없다. 다시 말해, 언제나 A_n <= M을 만족한다.
이러한 움직임으로 표현되는 수열 A_n은 결국엔 수렴하게 된다는 것이다.
다만, 그 수렴값이 M인지는 알 수 없으며 그나마 알 수 있는 것은 수렴값이 M 이하라는 것이다.
( 왜 단조수렴정리가 잘 작동하는가?
그에 대한 풀이는 수학자들이 이미 여러 방법으로 풀어 두었다. 그리고 그 내용은 생각보다 직관적이지 않을 수 있다. 실수에 대한 고찰을 필요로 하기 때문이다. 그렇기에 증명에 대해선 이만 줄인다.)
물론 조건이 어긋나더라도 수렴할 수는 있다.
단조 수렴 정리의 조건을 잘 만족하는 "계속 증가하는 수열" { A_1, A_2, .... }를 하나 만들고,
100번째 항과 101번째 항을 바꾼 { ..., A_101, A_100, ...} 를 하나 만들자.
두번째 수열은 계속 증가하다가 100번째 항에서 101번째 항으로 갈 때 증가하지 않는다. (물론 A_101 = A_100 이면 얘기가 다르다.)
하지만, 102번째 이후의 항들은 기존의 수열과 동일하며, 수렴성을 잘 관찰해보면 결국 이 수열 또한 수렴함을 알 수 있다. "정리"를 사용한다는 것은 '조건'을 만족하는 상황에서 '원하는 결과'를 도출한다는 것이지. '조건'을 만족하지 않더라도 '원하는 결과'를 우연찮게 발견할 수 있다.
위에선 단조 수렴 정리에 대한 간단한 소개를 하였다.
다시 돌아와, 0.999... = 1 문제를 살펴보자.
수열로서 표현해 둔, A_n = 1 - (1/10)^n 은 계속해서 증가하는 수열이다.
(1/10)^n 은 n이 커짐에 따라 점점 작아지기 때문에 (0.1, 0.01, ...) 더 작은 수를 빼준 나중의 수열 값은 더 크다. 이렇게 A_n 은 증가하는 수열임을 알 수 있고, 또한 아무리 증가한다 해도 1에서 무언가를 뺀 수들이기 때문에 1 이상으론 커지지 않음을 알 수 있다.
그러므로, A_n 은 단조 수열 정리에 의해 어딘가로 수렴함을 알 수 있다.
수렴값을 A라고 하면 A는 1이하의 수라는 것까진 알 수 있다. 이제 우리의 문제는 A가 1임을 기대하는 것이다.
만약 A가 1이 아니라면, 1보다 작은 수일 것이다. 하지만, A_n은 소수점 아랫자리들이 모두 9로 채워진 수열이며, A의 소수점 아랫자리중엔 9가 아닌 지점이 있을 것이고 A_n은 언젠가 그 지점을 9로 채우고 넘어갈 것이다.
예시로서 적어보자.
A = 0.9978 일 때,
A_1 = 0.9, A_2 = 0.99, A_3 = 0.999, A_4 = 0.9999, .... 가 되어 세 번째 수열에서 이미 A를 훨씬 지나쳐버린다. 네 번째 수열에선 A의 값을 더 멀리 지나칠 것이기에 A는 극한값이 될 수 없다.
다른 수들을 가져다보아도 극한값 후보에서 탈락이 되기에 가능한 수는 A = 1이 유일하다.
(실은, A가 1임을 찾는 서술에는 논리적인 보충이 필요하지만 이 글에선 틀만 잡고 가자.)