- 다양한 주제에 대해 자유롭게 글을 작성하는 게시판입니다.
Date 19/06/14 16:02:20
Name   주문파괴자
Subject   0.999...=1?
@0. 시작하기에 앞서...

일부 수식을 표현하기 위해 특수문자를 몇 개 집어넣었는데 잘 보일지 모르겠네요.. 적어도 제 컴에서는 잘 보이는데 맥을 쓰고 있어서 불안합니다ㅠㅠ

글이 매우 긴데, 바쁘신 분들을 위해 한 줄 요약부터 내걸고 시작하겠습니다.
"0.999...=1인 이유는 1과 0.999....가 다르면서 우리에게 유용할만한 실수체계를 구성하는 것이 불가능하기 때문이다"
다 읽으실 분들도 이 문장을 염두에 두고 읽으신다면 도움이 될 것 같습니다.



@1. 서론

0.999...=1은 제가 이 논란을 처음 접한 10여년 전 중학생 시절에도 이미 쉴대로 쉬어버린 고전 떡밥이었습니다. 하지만 영원히 식지 않을 것만 같은 떡밥이기도 합니다. "나는 수포자다"라는 말을 거리낌없이 할 정도로 수학에 거리를 두는 문화가 있음에도, 이토록 심오한 주제에 대해 많은 사람들이 관심을 가진다는 점은 상당히 흥미롭습니다.

여담입니다만, 저 또한 이 문제로 당시 제가 수학적으로 존경하는 선생님과 많은 논쟁을 벌였습니다. 물론, 저는 0.999...가 어떻게 1과 같을 수 있냐는 입장이었습니다. 선생님께서는 어떻게든 설명을 해주시려고 하셨던 것으로 기억합니다만, 당시에는 도저히 이해할 수 있는 것이 아니었습니다.

이미 교과서를 통해 잘 알려진 다양한 증명 방법과 그에 대한 논란이 있는 것으로 압니다만, 이 글에서 반복하지는 않도록 하겠습니다. 대신, 조금 더 본질적인 문제에 대해 이야기해보려고 합니다. 과연 "실수"란 무엇일까요? 제가 생각하는 이 문제의 핵심은 등호(=)에 있는 것이 아니라 0.999...가 무엇인가를 확실히 하는 것에 있고, 이는 자연스럽게 실수 체계를 이해하는 문제로 직결됩니다.



@2. 연산에 의한 수 체계의 확장: 자연수부터 유리수까지

수에는 우리가 사칙연산이라 부르는 기본적인 연산들이 있습니다. 이들은 수 체계를 논하는데 있어서 핵심적 역할을 담당합니다. 수만 덩그러니 놓여있고 아무런 연산도 할 수 없다면 수학이 지금처럼 유용할 수는 없었겠지요.

자연수에서 유리수까지 수 체계의 확장은 사칙연산에 기반하고 있습니다. 자연수 집합 ℕ={1,2,3,...}에서 시작해보겠습니다. 자연수 집합에는 자연스러운 두 개의 연산 (+,×)이 있고, 역연산에 해당하는 (−,÷)이 있습니다. 하지만, 이 역연산들은 어떤 의미에서는 잘 정의되지 않습니다. 어떤 두 수의 뺄셈이나 나눗셈이 자연수가 되리라는 보장이 없기 때문입니다. (예: 3-5 ∉ ℕ) 뺄셈이 잘 정의되도록 하기 위해 0과 음수개념을 도입하면, 우리가 잘 아는 정수의 집합 ℤ={...-2,-1,0,1,2,...}를 얻게 됩니다.

여기서 한 가지 주목할 점은 연산도 자연스럽게 확장할 수 있다는 것입니다. 예를 들면,  2+(-3) = -1 이나 (-2)×(-3) = 6등, 기존 자연수 집합에서의 덧셈과 곱셈 연산을 정수 집합으로 확장 가능합니다. 한편, 이러한 확장으로 뺄셈과 덧셈이 하나의 연산( a−b = a+(-b) )으로 합쳐지는 것도 관찰할 수도 있습니다.

비슷한 방법으로 정수 집합에 나눗셈이 잘 정의되도록 수 체계를 확장한 것이 우리가 아는 유리수의 집합 ℚ입니다. 또한 곱셈의 정의를 유리수까지 확장함으로써 곱셈과 나눗셈이 통합됩니다. ( p/q ÷ r/s = p/q × s/r )

유리수집합 ℚ와 두 개의 연산 (+,×)이 주어진 구조를 수학적 용어로는 체(field)라고 부릅니다. 체의 정의를 완전히 알려드리기는 어렵습니다만, 우리가 체라고 부를 때는 "사칙연산이 그 안에서 잘 정의되어 있다"는 정도로 이해하시면 되겠습니다. 예를 들면, ℤ에는 나눗셈이 잘 정의되어있지 않으므로 체가 아닙니다.



@3. 무리수의 발견

유리수 집합에는 조밀성(denseness)이라고 부르는 성질이 있습니다. 조밀성이란 직관적으로 "두 수 사이에 또 다른 수가 수없이 많이 있음"을 지칭하는 성질입니다. 예를 들면, 0과 백만 분의 일에는 이백만 분의 일, 삼백만 분의 일 등 무수히 많은 유리수가 존재합니다. 한편, 0과 1사이에는 어떠한 정수도 없으므로, 정수 집합은 조밀성을 갖지 않습니다.

유리수 집합에는 조밀성이 있기 때문에, 수직선 상에 유리수를 모두 표시한 모습을 상상한다면, 무수히 많은 점들이 수직선 상에 빽빽하게 분포해 있는 모양이 그려질 것입니다. 이러한 이유에서 과거 사람들은 수직선이 온전히 유리수로 구성되어있다고 생각했습니다.

이 믿음을 깬 것은 피타고라스의 학파의 일원이었던 히파수스에 의한 √2의 발견이었습니다.

피타고라스의 정리는 직각삼각형의 빗변의 길이가 c, 직각을 낀 양 변의 길이가 a,b일 때 a^2 + b^2 = c^2 가 성립한다는 내용의 정리입니다. 히파수스는 이 정리를 a=b=1인 경우에 적용하여 빗변의 길이 c가 c^2 = 2을 만족하며, 이는 두 정수의 비율로 나타나지 못한다(=유리수가 아니다)는 사실을 발견하였습니다.



여담입니다만, 피타고라스는 정수와 그로부터 파생된 유리수만이 올바른 수여야 한다고 믿었던 것 같습니다. 히파수스는 무리수의 존재를 은폐하고자하는 피타고라스와 그 학파에 의해 암살당했다는 설이 있습니다.

어찌되었든 √2의 발견은 수직선 상에 유리수가 아닌 다른 수가 있다는 사실을 보여주는 것입니다. 그러니까 수직선 상에 유리수들을 표시해보면, 무한히 많은 점들로 이루어진 수직선 비스무레...(밀도가 높은 점선으로 상상해볼 수 있습니다) 한 것이 나오는데, 자세히 들여다보면 사이사이에 √2와 같은 친구들로 인해 빈 공간이 뚫려있는 것입니다.


@4. 실수의 수직선 모델과 완비성

그런데, √2가 유리수가 아니라는 사실이 뭐가 그리 불편한 것일까요? 그냥 유리수만 수로 인정하고 수학을 할 수도 있지 않았을까요?

우리가 실수집합을 인식하는 대표적인 방법 중 하나는 수직선을 상상하는 것입니다. 좌우로 무한히 뻗어나가는 곧은 직선을 생각하고 각 실수를 직선 위의 점에 대응시키는 것이지요.

수직선 모델을 통해서 우리는 실수집합이 가져야 할 중요한 성질들에 대해 생각해볼 수 있습니다.

성질1. 대소관계의 존재: 두 실수 a,b에 대해 a<b라는 것은 수직선 상에서 b에 해당하는 점이 a에 해당하는 점보다 오른쪽에 있는 것입니다. 예를 들면, 2는 1보다 오른쪽에 있으므로 1<2 입니다.

성질2. 수직선과의 일대일대응: 수직선 상에 있는 각각의 점에 대응되는 실수가 존재합니다. 예를 들어, 위의 그림(Figure1)에서 √2가 존재한다고 말하는 이유는, 그림의 원과 수직선이 교차하는 지점에 대응되는 실수가 있어야 한다는 생각에 기반합니다.

여기서 두번째 성질을 완비성(completeness)이라고 부릅니다. 완비성이란, 수직선에서 두 점 사이에 무수히 많은 다른 수가 있을 뿐 아니라(조밀성), 그 수들이 빈틈없이 빽빽하게 들어차있어야 함을 뜻입니다. √2와 같은 무리수의 존재는, 유리수의 집합이 완비성을 갖추지 못함을 보여줍니다.


@5. 데데킨트 절단

@4에서 다루었던 "성질2"에 의하면 실수의 집합을 그냥 수직선 상의 점의 집합으로 정의해버리면 편할 것 같기는 합니다만, 이렇게 하는 경우 몇 가지 문제가 생깁니다. @2에서 연산에 의한 수 체계의 확장을 다루었던 이유이기도 한데요. 연산을 어떻게 실수 체계까지 확장할 것인가에 관한 것입니다.

수직선 모델만 가지고는 연산을 이해하기가 쉽지 않습니다. 예를 들어, 2^(1/3) × 3^(1/2) = 108^(1/6) 같은 것을 수직선 모델에서 읽어내기란 쉽지 않습니다.

한 가지 염두에 두셔야 할 것은, 우리의 목적이 유리수까지만 주어져있는 상태에서 수 체계를 실수까지 확장하는 것이라는 점입니다. 따라서 √2 같이 유리수가 아닌 것을 직접적으로 언급해서 무리수를 정의하는 것은 허용되지 않습니다.

유리수의 세계에 스스로를 가두고 무리수를 표현하려는 시도는 생각보다 쉽지 않습니다. 여기서 우리는 무리수의 소수(decimal) 표현에 주목해 볼 필요가 있습니다.

√2를 소수점 이하 15자리까지 표현하면 다음과 같습니다: 1.414213562373095...
우변의 소수표현은 무한히 이어지지만, 아무리 소수점 이하 자리수를 늘려나가도 정확한 값에 이르지는 못합니다. 다만, 자리수가 늘어남에 따라 오차가 매우 근소해진다는 것은 이해할 수 있습니다.

이 점에 착안하여 무리수를 유리수열에 대응시킬 수 있습니다. 예를 들면, √2는 수열
(수열1) 1.4, 1.41, 1.414, 1.4142, 1.41421, 1.414213, ...

에 대응시키는 것입니다. 위 수열은 √2에 한없이 가까이 다가가지만(수렴), 각 수열의 항은 유한소수이므로 유리수입니다. 이와 같은 방식으로 유리수열을 이용하여 무리수를 정의하고 실수 체계를 세우는 것이 가능합니다. 이러한 수열을 "코시(Cauchy) 수열"이라고 부르고, 코시 수열에 의한 건설 방법은 실수 체계를 건설하는 가장 대표적인 방법 중 하나입니다.

코시 수열에 의해 실수 체계를 건설하는 방법이 어려운 점 중 하나는 같은 수를 표현하는 수열이 유일하지 않다는 점입니다. √2의 경우

(수열2) 1.5, 1.42, 1.415, 1.4143, 1.41422, 1.414214, ...

이런식으로 정의해도 이 수열은 √2에 다가가므로 여전히 √2를 가리켜야 합니다. 참고로 (수열2)는 (수열1)에서 소수점 마지막 자리만 1씩 높인 것입니다. 수직선 상에서 보면, (수열1)은 왼쪽으로부터 √2에 접근하지만, (수열2)는 오른쪽으로부터 √2에 접근하고 있습니다.

위의 예시 뿐만 아니라, 다양한 방법으로 √2를 나타내는 코시 수열을 얼마든지 만들어낼 수 있습니다. 이처럼 서로 다른 두 코시 수열이 같은 수를 가리킬 수 있기 때문에, 정확히 언제 두 수열이 같은 실수를 가리키는지를 명확히 하는 추가작업이 필요합니다.

이러한 모호성을 회피하기 위해 √2에 수렴하는 코시 수열을 구성하는 대신, √2보다 작은 모든 유리수를 모아둔 집합을 상상할 수 있습니다. 우리에게는 유리수 체계만 주어져있기 때문에, 그 집합을 "루트2보다 작은 모든 유리수의 집합"이라고 정의할 수는 없지만, √2를 언급하지 않고도 그와 같은 집합의 정의는 얼마든지 가능합니다. 이 문제에 관하여는 잠시 후에 다루겠습니다. (아래 Figure2 참고)

데데킨트 절단이란 유리수 집합 ℚ의 분할 (D, ℚ-D)로서 다음을 만족하는 것입니다.
조건0) D는 공집합이거나 전체집합(=ℚ)이 아니다.
조건1) D에는 최대값이 존재하지 않는다. ( 예: (-∞,2) )
조건2) x가 y가 유리수이고 y가 D의 원소이면 x도 D의 원소이다.

직관적으로는, 유리수로만 구성된 수직선의 한 지점을 잘라서 좌측 반직선을 D, 우측 반직선을 ℚ-D로 잡는 것입니다. 주어진 유리수 r에 대응되는 데데킨트 절단은 D_r = (-∞,r) ∩ ℚ (조건1에 의해 최대값이 없어야하므로 오른쪽이 열려있어야 합니다)와 그 여집합 ℚ-D_r = [r,∞) ∩ ℚ으로 구성됩니다.

이제 우리는 실수의 집합을 모든 데데킨트 절단의 집합으로 정의할 수 있습니다. 각각의 데데킨트 절단에 실수 하나가 대응된다고 생각하는 것입니다. 이렇게 추상적으로 말씀드리면 이해가 어려우니 예시를 통해 설명하겠습니다.



√2의 소수표현 1.41421...를 생각해보겠습니다. 그리고 다음과 같은 집합을 정의합니다. (위에서 유리수 r에 대해 D_r = (-∞,r) ∩ ℚ 이었던 것을 기억하시기 바랍니다)
D = D_1.4 ∪ D_1.41 ∪ D_1.414 ∪ D_1.4142 ∪ D_1.41421 ∪ ...
이 집합은 √2보다 작은 모든 유리수의 집합이 됩니다. D와 그 여집합 ℚ-D로 구성되는 데데킨트 절단은 우리가 생각하는 실수 √2에 대응됩니다.

위 예제에 대해 생각해보면 각각의 실수가 어떻게 데데킨트 절단에 대응되는지 이해하실 수 있을것입니다. 또 다른 예로, 원주율(= 3.141592... )에 대응되는 데데킨트 절단은
D = D_3.1 ∪ D_3.14 ∪ D_3.141 ∪ D_3.1415 ∪ D_3.14159 ∪ D_3.141592 ∪ ...
(와 그 여집합)에 의해 주어지고, 집합 D는 원주율보다 작은 모든 유리수의 집합입니다.

유리수 1에 대응되는 데데킨트 절단은 (D_1, ℚ-D_1) 입니다. 한편, D_1 = (-∞,1) ∩ ℚ은
D_0.9 ∪ D_0.99 ∪ D_0.999 ∪ D_0.9999 ...
와 같은 집합입니다. 따라서 1에 대응되는 데데킨트 절단과 0.9999.... 에 대응되는 데데킨트 절단은 정확히 일치하며, 이로부터,

데데킨트 절단을 통해 정의된 실수 체계에서는 1=0.9999.... 가 성립한다

는 결론을 얻게 됩니다.


@6. 완비순서체

우리는 실수의 수직선 모델을 통해 실수 체계가 완비성(수직선 상 임의의 두 점 사이에 수가 빈틈없이 들어차있음)과 순서 관계를 가지길 원한다는 것에 대해 이야기했습니다(@4). 한편, 우리는 실수 체계가 사칙연산이 잘 작동하는, 체(field)의 구조를 갖기를 원합니다(@2). 이와 같은 완비성, 대소관계를 가지면서 사칙연산이 잘 작동하는 수 체계를 완비순서체(complete ordered field)라고 부릅니다.

@5에서 건설한 실수 체계를 ℝ_D (D는 데데킨트의 D)라고 표기하겠습니다. ℝ_D는 @4에서 언급한 두 개의 성질(순서관계의존재, 완비성)을 만족한다는 사실을 증명할 수 있습니다. 동시에 사칙연산도 잘 정의할 수 있습니다. 예를 들어, 두 실수 r,s에 해당하는 데데킨트 절단 D_r, D_s(편의상 여집합  ℚ-D_r, ℚ-D_s는 생략하겠습니다)를 생각하고, D = { a+b : a ∈ D_r and b ∈ D_s} 로 정의하면, D는 실수 (r+s)에 해당하는 데데킨트 절단이 됩니다.

이와 같은 과정을 통해 유리수의 사칙연산을 ℝ_D까지 확장할 수 있습니다. ℝ_D는 완비성과 순서관계를 가지므로 우리가 생각하는 수직선 모델에 적합하며, 동시에 사칙연산이 잘 정의되어 @2에서 언급한 체(field)의 구조를 가집니다. 요약하면,

정리1.  ℝ_D는 완비순서체이다.

여러 차례 강조하고 있습니다만, 완비순서체란 수직선 모델에 적합하고 사칙연산이 잘 작동하는 수 체계입니다. 따라서 실수 체계를 어떤 형태로 건설하든, 우리는 그것이 완비순서체가 되기를 원합니다. 그렇다면 0.999...≠ 1 을 만족하면서 완비순서체인 실수 체계를 건설할 수 있을까요? 이 질문에 대한 답은 다음 정리에서 얻을 수 있습니다.

정리2. 모든 완비순서체는 근본적으로 ℝ_D와 동일하다.

여기서 "근본적으로 동일하다"는 표현은 그냥 표기법만 바뀐정도다...라고 생각하시면 되겠습니다. 예를 들자면, 아라비아 숫자 대신 로마자 표기(1대신 I, 2대신 II, 3대신 III, 4대신 IV,...)를 써서 같은 방법을 통해 완비순서체를 만들어낼 수 있습니다. 물론 이렇게 얻어진 완비순서체는 본질적으로 ℝ_D와 같은데, 정리2가 말하는 내용은 서로 다른 완비순서체란 이와 같이 표기법이 바뀐 정도 만큼만 다르다는 뜻입니다.

정리2는 다른 말로 "완비순서체는 유일하다"라고 할 수 있고, 따라서 0.999...=1 은 모든 완비순서체에서 성립하는 문장이 됩니다.


@7. 결론

마지막으로 다시 한 번 정리하겠습니다. 완비순서체란 (1) 수직선 모델이 들어맞고 (2) 사칙연산이 잘 작동하는 수 체계입니다. 그리고 완비순서체에서는 0.999... = 1입니다. 0.999...=1이 너무 마음에 안 들어서, 이 두 수를 반드시 다른 것으로 만들고 싶다 생각하신다면, 그 필요에 따라 새로운 수 체계를 건설할 수 있습니다. 하지만 0.999...=1을 부정하기 위해 완비순서체가 아닌 실수 체계를 만들어내는 것은 저에게는 그저 소탐대실로 느껴집니다.

(* 이하 내용에 대해, 위의 "소탐대실"이라는 표현과 이어져 해당 분야를 비하하는 것 같은 어조가 들까봐 노파심에 말씀드립니다. 아래 나오는 비표준해석학에 대해 저는 거의 알지 못하며, 해당 분야를 비하하고자 하는 의도는 없습니다. 다만 제가 여기서 짚고 넘어가고 싶은 것은, 필요에 의해 0.999...=1가 아닌 수 체계를 사용하는 분야가 실제로 존재한다는 것과, 그럼에도 불구하고 대부분의 사람들에게는 현재의 실수 체계가 더 실용적이라는 점입니다)

그럼에도 불구하고, 0.999...=1이라는 등식을 도저히 받아들이지 못하겠다는 분들을 위해, "비표준 해석학(nonstandard analysis)"라는 수학 분야가 있습니다. 비표준 해석학에서는 우리가 흔히 "무한소"라 부르는, 1-0.9999... 에 대응하는 존재를 반영하기 위해 초실수(hyperreal number) 체계를 정의하고 그 위에서 수학을 전개합니다.

여기서 "그럼 비표준 해석학이라는 학문 분야도 있는데, 초실수 체계를 받아들이면 0.999...와 1은 다른 것 아니냐"고 말씀하시는 분들이 계실 수 있습니다. 하지만 비표준 해석학은 무한소를 다루기 위해 아주 특별하고 정교하게 고안된 체계이기 때문에, 수학 전 분야에 널리 사용될 수 있는 체계는 아닙니다. 수학 전반에 걸쳐 초실수 체계를 사용하겠다는 이야기는, 흡사 자동차를 가속하기 위해 "자동차도 전부 입자로 구성되어있으니 입자가속기로 가속하자"라고 주장하는 것과 비슷하지 않을까 싶습니다.



20
  • 선추천하고 천천히 읽어보겠습니다.
  • 춫천
  • 너무 재밌어서 추천!
  • 정성글 감사합니다
이 게시판에 등록된 주문파괴자님의 최근 게시물


목록
번호 제목 이름 날짜 조회 추천
9982 과학/기술해냈다!! 해냈어!! 화력덕후들이 또 해냈어!! 26 Darwin4078 19/11/13 8976 11
9685 과학/기술와이파이(Wi-Fi) 란 무엇일까? 15 그저그런 19/09/20 5523 6
9679 과학/기술스마트폰이 당신을 지켜보고 있다. 2 샤우리우 19/09/18 6749 1
9482 과학/기술알아도 쓸모 없고 몰라도 상관 없다 - 왓슨의 주장에 대한 비판 vs. 왓슨에 대한 비난 8 굴러간다 19/07/28 5568 4
9478 과학/기술알아도 쓸모 없고 몰라도 상관 없다 - 종 (種, species)에 대한 잡설 14 굴러간다 19/07/27 5595 8
9475 과학/기술[번역] 인종 평등을 위한 과학적 기초 下 4 구밀복검 19/07/27 6925 9
9474 과학/기술[번역] 인종 평등을 위한 과학적 기초 上 16 구밀복검 19/07/27 6761 9
9388 과학/기술블록체인의 미래 - 2018 기술영향평가 보고서 2 호라타래 19/07/03 5574 19
9329 과학/기술 Qt 5.13.0: C++로 개발해서 웹브라우저에서 실행하자! 6 T.Robin 19/06/20 6718 1
9324 과학/기술과학적 연구의 동기부여는 시대를 어떻게 대변하는가? 25 다시갑시다 19/06/18 6117 36
9319 과학/기술0.999...=1? 26 주문파괴자 19/06/14 6884 20
9043 과학/기술화학 전공하면서 들은 위험했던 썰 몇가지 29 Velma Kelly 19/04/05 6095 15
8932 과학/기술수학적 엄밀함에 대한 잡설 26 주문파괴자 19/03/05 5287 16
8443 과학/기술정수론의 복잡성, 그리고 우주론 파랑새의나침반 18/10/30 5126 2
8351 과학/기술[확률론] 당신은 암에 걸리지 않았다 - 의사들도 잘 모르는 사실 12 Sophie 18/10/11 7019 10
8203 과학/기술파인만이 얘기하는 물리 vs 수학 21 Sophie 18/09/11 13704 1
7988 과학/기술지구 온난화와 원전. 55 키시야스 18/08/01 6873 16
7900 과학/기술가짜 논문지 그리고 연구윤리와 국가과제 및 정년보장 18 집에가고파요 18/07/21 4854 0
7724 과학/기술다수의 출구조사로 대통령의 지지율을 보는게 맞을까? 7 히하홓 18/06/21 4780 0
7628 과학/기술[진짜 통계의 오류] 설계의 오류 1 히하홓 18/06/06 5400 0
7536 과학/기술본격(영어)듣기시험 평가 얘니 v 로렐 분석 13 다시갑시다 18/05/18 4507 5
7512 과학/기술인공위성이 지구를 도는 방법과 추락하는 이유 17 곰곰이 18/05/13 19900 17
7462 과학/기술[통계의 오류] 흑인이 백인보다 사형 판결을 잘 받는가? (심슨의 역설.) 20 히하홓 18/05/01 8983 3
7130 과학/기술인공지능 로봇 소피아의 방한 행사 소동 4 맥주만땅 18/02/17 5936 0
7124 과학/기술카팩 고장난 문제 해결한 썰 10 Toby 18/02/16 10754 5
목록

+ : 최근 2시간내에 달린 댓글
+ : 최근 4시간내에 달린 댓글

댓글