문서의 임의 삭제는 제재 대상으로, 문서를 삭제하려면 삭제 토론을 진행해야 합니다. 문서 보기문서 삭제토론 0.999…=1 (문서 편집) [include(틀:해석학·미적분학)] [목차] == 개요 == >[math(\displaystyle \sum_{k=1}^\infty \frac9{10^k} = 1)] [[제논의 역설|아주 오래전부터]] 수많은 사람들에게 셀 수 없이 많은 착각을 불러일으킨 명제. 결론부터 말하자면 현대수학에서 '''명제 [math(0.999\cdots=1)]은 참이다'''.[* [math(0.999\cdots)]라는 표현은 절대 다수의 사람들이 소수점 뒤로 [math(9)]가 무한히, 즉 끝없이 이어진다는 것을 명확히 인식하므로 엄밀한 표현의 문제일 뿐 표기 자체에 대해 염려될 건 없다. 이러한 표기에 유한소수인 [math(0.999\cdots9)] 같은 것을 들이미는 것은 혼란만 심화될 뿐이다. 순환 마디 위에 점을 찍어 나타내는 표기를 쓰면 더욱 명확한데 [math(0.999\cdots = 0.\dot9 \ne 0.999\cdots9)]이다. 따라서 소수점 아래에 9를 무한히 붙이는 명제는 결국 그 소수의 정수 부분에서 1을 더한 정수와 같다.] == 설명 == 이 [[명제]]의 진위를 헷갈리는 이유는 정확한 용어의 정의 없이 [[직관#s1.1]]만으로 논증하려 했기 때문이다. 가령 [[무한소수]]라는 것을 [[유율법|점점 '다가가는' 수]] 같은 식의 임의로 움직인다는 개념을 집어넣곤 하는데 '''수학에 '다가가는 수'라는 개념은 없다.''' 대한민국의 경우 일반적으로 고등학생 때 [[극한]]을 [[수박 겉 핥기]] 식으로만 배우게 되며 [[수학교사]]들 중에서도 [[해석학(수학)|해석학]]을 심도 있게 배운 사람이 적다 보니[* 해석학에 능통한 사람은 대부분 [[대학원]] 진학을 하기 때문.] [[고등학교 수학]] 과정에서 문이과를 불문하고 잘못 이해하고 넘어가기 십상이다. 다만 어쩔 수 없는 부분도 있는데 [[무한대]]라는 개념부터 엄밀히 하기에는 갈 길이 멀고[* [[ZFC 공리계]], [[초한기수]], [[절대적 무한]] 같은 빌드업이 선행돼야 한다.] 해석학이란 학문 자체가 수학의 근본 중 하나[* 그 유명한 [[아이작 뉴턴]]이 비슷한 오류를 저질러서 수학자도 아닌 [[조지 버클리]]한테 까였고, 이를 계기로 [[오귀스탱루이 코시|코시]]와 [[카를 바이어슈트라스|바이어슈트라스]]에 의해 미적분학을 엄밀하게 바닥부터 쌓아올려 완성시킨 게 해석학이다.]인 만큼 고등학교 수준으로는 작정하고 제대로 배우기가 매우 어렵다. 이렇다 보니 어쩔 수 없이 극한의 개념 역시 앞서 설명한 '무한히 가까워지는'이라든지 '다가가는' 같은 '''적당한 오류'''를 허용하면서 가르칠 수밖에 없는 상황이다.[* [[극한]] 문서에서도 볼 수 있지만, 특정 지점에 매우 가까운 수를 ''아무거나'' 뽑고, '''[[존재성과 유일성|이것이 진짜 있음을, 그것도 '단 하나뿐'임을 보이는 것]]'''이 극한의 본질에 더 가깝다.] 거칠게 말하면 [[수학교육학]]이라는 분야는 청소년들이 [[수포자]]가 되지 않도록 이런 엄밀하지 않은 논리를 어느 정도까지 용인할 것인지 고민하는 학문이니 일선 수학교사들은 '교육학'을 잘 모르는 비사범계열 수학 전공자들의 지적이 억울할 수 있다. 이러한 엄밀하지 않은 논리에는 초등학교 수학에서는 [[음수(수학)|음수]] 개념을 배우지 않아 크기가 작은 자연수에서 큰 자연수를 뺄 수 없다고 가르치고, 중학교 수학에서는 (-1)x(-1)=1이 성립함을 '당연한 개념'이라고 가르치며, 고등학교 수학 과정을 들어가기 전까지는 [[허수]]를 배우지 않기 때문에 중학 과정에서는 제곱해서 음수가 되는 것은 불가능하다고 배운다.[* 한 술 더 뜨면 대학의 관련 전공에서는 [[복소평면]]에서 벗어나 제곱해서 -1이 되지만 i가 아닌 또다른 허수 j가 존재할 수 있다는 [[사원수]] 개념을 배우게 될 것이다.] 이렇듯 학습자의 수준을 고려한 '적당한 오류'는 불가피한 것이다. 참고로 (-1)x(-1)=1 문제는 [[벡터]]라는 개념을 알아야 엄밀하게 이해할 수 있는데, 해당 과정은 고등학교 수학 끄트머리에 나온다. == 증명 == === 엄밀한 증명 === 다행히도 [math(0.999\cdots=1)]이라는 사실은 수학적으로 아주 간단하게 증명할 수 있다. 대학교 기초 수준의 수학 지식이 있다면 이해하는 데에 무리는 없을 것이다. [math(0.999\cdots)]과 같은 표기를 쓰기 전에 일단 '[[무한소수]]'라는 것이 무엇인지를 알 필요가 있다. 정의는 간단하다. 자연수 [math(n)]에 대하여 수열 [math(\{a_n\})] 을 생각하자. 만약에 알아보고 싶은 무한소수가 [math(0.999\cdots)]라고 한다면 [math(a_1 = 0.9,\,a_2 = 0.99,\,a_3 = 0.999,\,\cdots)]이 될 것이다. 무한소수라는 것은 이러한 수열의 [[극한]]으로써 정의된다. 간단히 설명하자면, [math(a_n)]의 극한이 [math(a)]라는 것은 [[엡실론-델타 논법|어떤 양수 [math(\varepsilon)]에 대하여, [math(n)]이 어떤 자연수 [math(N)]보다 크면 [math(a_n)]과 [math(a)]의 차이가 [math(\varepsilon)]보다 작아지는 자연수 [math(N)]이 존재한다는 것, 달리 말하자면 [math(N)]을 [math(\varepsilon)]의 함수 [math(N(\varepsilon))]으로 나타낼 수 있음]]을 의미한다. 직관적으로도 이 정의는 우리가 일상적으로 말하는 '무한히 접근한다'라는 표현과 일맥상통함을 이해할 수 있을 것이다. 이 정의를 만족하지 않고도 [math(a_n)]가 [math(a)]로 무한히 접근할 방법이 있을까 고민해 본다면 명확하다. 첫 번째 문제는 수열 [math(\{a_n\})]의 극한값이 존재하는지에 대한 것이다. 두 번째 문제는 이 극한값이 무엇인지에 대한 문제이다. 다행히도, 임의의 무한소수에 대해 수열 [math(\{a_n\})]의 극한값은 존재하고, 그 극한값은 이 수열의 상한(supremum), 풀어 쓰면 '모든 자연수 [math(n)]에 대해 [math(a_n)]보다 크거나 같은 숫자의 집합에서 가장 작은 수'와 같다. 이를 증명하기는 어렵지 않다. 일단 집합 [math(A=\{a_n \mid n\in\mathbb{N}\})]이 상계(upper bound)를 가진다는 것을 보이자. 예를 들어 '[math(10)]'은 임의의 [math(a_n)]보다 크거나 같으므로 이 집합의 상계이다. [[실수(수학)|실수]]의 완비성에 의해 공집합이 아닌 실수의 부분집합에 상계가 존재한다면 상한(supremum = least upper bound)[* [math(x)]가 상계이고 [math(a < x)]인 모든 [math(a)]에 대해서 [math(a)]가 상계가 아니라면 [math(x)]는 상한이다.]은 언제나 존재한다. 수학자들이 부등호를 적절하게 조절하여 임의의 집합에 대해서도 항상 존재할 수밖에 없도록 만든 개념이라서 그렇다. 이는 하한(infimum = greatest lower bound)도 마찬가지. 자세한 것은 [[https://en.wikipedia.org/wiki/Least-upper-bound_property|링크]]를 참조. 그다음은 이 상한이 이 수열의 극한값이라는 것을 증명해야 한다. [[단조 수렴 정리]](monotone convergence theorem)에 의하면, 임의의 수열이 위로 [[유계]]이고 증가하는 수열이라면 그 극한값이 존재하며 극한값은 그 수열의 상한과 같다. 이를 증명하기 위해 위 명제가 성립하지 않는다고 가정하자. 즉, 수열 [math(\{a_n\})]이 증가 수열이고, 위로 유계임에도 불구하고 집합 [math(A)]의 상한 [math(c)]로 수렴하지 않는다고 가정해 보자. 그러면 극한의 정의에 의해 어떤 [math(\varepsilon)]이 존재하여 아무리 [math(N)]을 키워도 [math(N)]보다 큰 [math(n)]이 존재하여 [math(c)]과 [math(a_n)]의 차이가 [math(\varepsilon)]보다 커야 한다. [math(a_n)]은 단조증가수열이기에 [math(a_n < c - \varepsilon)]이라면 모든 [math(m\le n)]에 대해 [math(a_m < c - \varepsilon)]을 만족한다. 집합 [math(S = \{k \mid a_k < c - \varepsilon \})]를 가정하자. [math(S)]는 자연수의 집합이고 [math(S)]의 상한이 없기에 [math(S = N)]이 된다. 즉 모든 [math(a_n)]에 대해 [math(a_n < c - \varepsilon)]이다. 하지만 그럴 경우, [math(c)]가 집합 [math(A)]의 상한이라는 가정에 위배된다. 왜냐하면 [math(c-0.5\varepsilon)]라는 수는 [math(c)]보다 작으면서도 [math(\{a_n\})]의 상계가 될 수 있기 때문이다. 이는 [math(c)]가 상한이라는 정의와 모순된다. 따라서 위 명제가 성립하므로, 수열 [math(\{a_n\})]의 극한값이 존재하며 그 값은 집합 [math(A)]의 상한과 같다. 이제 모든 증명이 끝났다. [math(\begin{aligned}a_n=1-\dfrac1{10^n}=0.\overbrace {999\cdots 9}^n\end{aligned})]이라고 하자. 그러면 집합 [math(A)]의 상한은 [math(1)]이다. 따라서 [math(0.999\cdots=1)]이다. [[엡실론-델타 논법|본 항목 서두에서 언급]]한 충분히 큰 자연수 [math(N(\varepsilon))]역시 [math(N(\varepsilon) = \left\lceil\log_{10}\dfrac1\varepsilon\right\rceil = -\lfloor\log_{10}\varepsilon\rfloor)][* [math(\lceil x \rceil)]은 천장 함수, [math(\lfloor x \rfloor)]은 바닥 함수라고 하며, 각각의 정의는 다음과 같다.[br][math(\begin{aligned}\lfloor x\rfloor&=\max\{n\in\mathbb Z\colon n\le x\} \\ \lceil x\rceil&=\min\{n\in\mathbb Z\colon n\ge x\}\end{aligned})][br]바닥 함수는 흔히 말하는 [[최대 정수 함수|가우스 기호]]와 같은 함수로, 소수점 아래를 버리는 함수이며, 천장 함수는 반대로 소수점 아래를 정수로 올리는 함수다.]같은 형태로[* 부등식을 만족하는 [math(N)]을 구하는 것이기 때문에 [math(N(\varepsilon))]이 단 하나로 정해지는 건 아니다. 이를테면 [math(N(\varepsilon)=\left\lceil\log_{10}\dfrac2\varepsilon\right\rceil)]라고 놓아도 똑같은 과정을 거쳐 [math(\dfrac1{10^n}<\dfrac\varepsilon2)]이 얻어지므로 [math(|a_n-1|<\varepsilon)]을 만족한다.] 항상 존재하는 것을 알 수 있는데, 천장 함수의 정의에 따라 [math(N(\varepsilon)=\left\lceil\log_{10}\dfrac1\varepsilon\right\rceil\ge\log_{10}\dfrac1\varepsilon)]이고 [math(n>N)]이면 [math(10^n>10^N\ge10^{\log_{10}\frac1\varepsilon} = \dfrac1\varepsilon \Rightarrow \dfrac1{10^n}<\dfrac1{10^N}\le\varepsilon)]이므로 [math(|a_n-1| = \dfrac1{10^n}<\varepsilon)]을 만족한다. 따라서 충분히 큰 양수 [math(N)]은 [math(N = \left\lceil\log_{10}\dfrac1\varepsilon\right\rceil)]처럼 [math(\varepsilon)]의 함수 형태로서 존재함을 알 수 있으며 따라서 [math(n\to\infty)]의 극한, 즉 [math(0.999\cdots=1)]이다. === 간단한 ‘증명’들 === 아래에서 설명할 간단한 ‘증명’들은 '''증명하는 방식'''보다도 '''수학적 정의'''에 본질적인 문제가 있다. 무한소수의 정의에 관하여 어떠한 언급도 하지 않은 채 증명한다는 것은 모호한 사실을 얼핏 보기에 덜 모호해 보이는 사실로 바꾸는 것인데 이는 애매모호함을 명확하게 하지 않고 가리는 것에 불과하기 때문이다. 교육학적으로는 어떨지 모르겠으나 수학적으로는 증명이라고 할 것이 못 된다. * 뺄셈을 이용하는 방법 [math(1-0.999\cdots=0.000\cdots=0)] [math(1-0=0.999\cdots=1)] * [[세로셈법]]을 이용하는 방법 [math(\begin{array}{r} \begin{array}{r}\\ 9~\big) \\ \\ \\ \\ \\ \\ \\ \\ \end{array} \!\!\!\!\!\!\!\: \begin{array}{r}1 \\ \hline 9 \\ 9 \\ \hline 0 \\ \\ \\ \\ \\ \\ \end{array} \end{array} \quad \begin{array}{r} \begin{array}{r}\\ 9~\big) \\ \\ \\ \\ \\ \\ \\ \\ \end{array} \!\!\!\!\!\!\!\: \begin{array}{r}0.9999\cdots \\ \hline 9.0\qquad\;\;\; \\ 8\;1\qquad\;\;\; \\ \hline 90\quad\;\;\;~~ \\81\quad\;\;\;~~ \\ \hline 90\quad\;\;\; \\81\quad\;\;\; \\ \hline90\;\;\;~~ \\ 81\;\;\;~~ \end{array} \end{array})] 피제수보다 크지 않은 최댓값이 나오도록 계산을 하는 기존 방식(왼쪽)이라면 [math(9\div9 = 1)]이지만, 오른쪽과 같이 진분수를 소수로 바꿨을 때의 계산법을 이용함으로써 [math(9\div9 = 0.\dot9)]임을 보일 수 있고, 따라서 [math(0.\dot9 = 1)]이다.[* 보통은 최댓값이 나오지 않는 값을 넣게 되면 그 다음 자릿수에서 두 자릿수 이상이 나오기 때문에 결과적으로 먼저 구한 앞 자릿수에 더해야하는 번거로운 과정이 들어간다. 이 과정을 피하기 위해 크지 않은 최댓값이 나오도록 계산하게 가르치는 것이다. 단, 세로셈법으로 계산한 결과 뺄셈에서 [math(0)]으로 딱 나누어 떨어지는 과정에 한하여 위와 같이 한자릿수가 무한히 이어지는 계산이 가능하다. 즉 [math(\dfrac12 = 0.5 = 0.4\dot9)]나 [math(\dfrac15 = 0.2 = 0.1\dot9)]도 같은 방법으로 보일 수 있다.] 사실 이 방식이 중등교육 과정에서 [math(0.\dot9 = 1)]을 납득시킬 수 있는 가장 간단한 방법이다.[* 이와 동시에 '소수점 아래에서 반복되는 [math(0)]은 생략한다'는 약속을 같이 고려하면 [math(9\div9 = 1)]는 사실 [math(9\div9 = 1.\dot0)]임을 알 수 있다. 즉, 본질적으로 모든 소수는 '''순환소수'''이며 유한소수는 '순환마디의 길이가 [math(1)]이고 그 값이 [math(0)]인 순환소수'로 정의할 수 있다. 이렇게 정의하면 십진법에서 유한소수였던 것이 다른 진법에서 무한소수가 되는 것(예: [math(\dfrac18 = 0.125)]는 9진법에서 [math(0.\dot1_{(9)})])이 그다지 이상한 현상이 아님을 알 수 있다. 애초에 [math(0)]이 반복되는 순환소수([math(0.125 = 0.125\dot0)])이기 때문이다.] * [math(\dfrac13 = 0.333\cdots)]을 이용하는 방법[* 같은 방식으로 [math(\dfrac19 = 0.111\cdots)]을 이용할 수도 있다.] 우선 [math(\dfrac13 = 0.333\cdots)]을 증명하기 위해, 세로셈법에 [[수학적 귀납법]]을 적용해서 '세로셈법에서 [math(k)]번째 연산의 결과 소수점 아래 [math(k)]번째 자리가 [math(3)]이 된다.'를 보이고 이어서 '[math(k\to\infty)]이면 소수점 아래의 모든 자리가 [math(3)]이 되면서 수렴한다.'를 보이자. 아래 증명에서 [math(\overbrace{}^n)]은 중괄호 밑의 자릿수가 [math(n)]개임을 의미한다. 1. [math(k=1)]일 때, [math(1 = 3\times0.{\color{red}3}+0.1)]이므로 자명하다. 1. [math(k=n)]일 때 참이라고 가정하면 [math(1 = 3\times0.\overbrace{\color{red}333\cdots33}^n + 0.\overbrace{000\cdots0}^{n-1}1)]이고 [math(0.\overbrace{000\cdots0}^{n-1}1 = 3\times0.\overbrace{000\cdots00}^n{\color{red}3} + 0.\overbrace{000\cdots00}^n1)]이므로 대입해서 공통부분을 묶어내면 [math(1 = 3\times0.\overbrace{\color{red}333\cdots333}^{n+1} + 0.\overbrace{000\cdots00}^n1)]이 된다. 이는 [math(k=n+1)]일 때의 관계식이므로 [math(k=n+1)]일 때 역시 참이다. 1. [math(0.\overbrace{000\cdots0}^{n-1}1 = \dfrac1{10^n})]이고, 모든 자연수 [math(n)]에 대하여 [math(0 b\end{cases})] 중 하나만 성립한다.]에 따라 [math(\begin{cases}0.\dot9>1 \\ 0.\dot9<1\end{cases})] 중 하나를 만족한다. 일단 [math(0.\dot9)]는 정수 부분이 [math(1)]보다 작으므로 자명하게 [math(0.\dot9>1)]은 거짓이다. 다음으로 [math(0.\dot9<1)]라면 실수의 조밀성에 따라 [math(0.\dot9a)]이므로 모순. 따라서 [math(a_1=9)]이다. 같은 방법을 계속 반복하면 임의의 자연수 [math(n)]에 대하여 [math(a_n=9)]가 되는데 이는 앞서 가정한 [math(0.\dot91\\0.\dot9<1\end{cases})]의 두 가지 경우가 모두 거짓이므로 [math(0.\dot9\ne1)]이라는 가정이 틀렸다. 따라서 [math(0.\dot9=1)]이다. * 모든 자연수 [math(n)]에 대하여 [math(0저장 버튼을 클릭하면 당신이 기여한 내용을 CC-BY-NC-SA 2.0 KR으로 배포하고,기여한 문서에 대한 하이퍼링크나 URL을 이용하여 저작자 표시를 하는 것으로 충분하다는 데 동의하는 것입니다.이 동의는 철회할 수 없습니다.캡챠저장미리보기