학문/수학

construction of real numbers

괴델 2020. 3. 2. 20:15

해석학 1들으면 첫주에 실수집합이라는 게 존재한다고 한다. 유일하다고도 하는데 증명은 생략한다. 증명 자체는 어렵지 않은데 지루하고 길기 때문에..인 것 같기도 하고, 대수를 안배우면 up to isomorphism이라는 개념이 생소하게 다가오기도 하고..

 실수는 least upper bound property를 만족하는 ordered field가 isomorphic하게 하나밖에 없다는 것으로부터 정의한다. 실수를 정의하는데는 찾아보니 대략 2-3가지 방식이 많이 쓰이는 듯하다. decimal expansion, dedekind cut, cauchy sequence. 존재성을 우선 살펴보자. 기본적으로 셋 모두 비슷한 아이디어를 사용한다.

1. cauchy sequence

 Q로는 커버하지 못하는 영역들이 있다. 가령 x^2=2에 상응하는 x값이 직관적으로는 있을 것 같다. 피타고라스 그림을 보면 그런 것 같다. 그러나 적어도 Q에는 없다. 그래도 Q만 가지고있으니, x^2=2에 가까워지는 유리수값을 생각해보자. Q로 근사해서 생각해보자는 것이다. 1, 1.4, 1.41, ... 이렇게 하면 Q에서의 수열이 하나 만들어진다. 얘는 Q에서 수렴하지 않는다. 재밌는 건 그래프를 그려보면 수열의 n값이 커지면 수열의 증가값이 0으로 간다. n이 커지면 수열값들 사이에 유의미한 차이를 발견하기 어렵다. 따라서 적당히 하다보면 얘가 수렴하는 집합을 만들 수 있지 않을까 생각할 수 있다. 다른 Q에서 수렴하지 않는 수열들도 위의 사례와 같이 된다면 수렴할 수 있을까? 시험해보기 위해 다음과 같은 정의를 내리자.

An is cauchy iff for every ε>0 there's N such that |An-Am|<ε for every n,m>N
(N n m은 자연수, ε는 유리수)

그럼 코시수열들의 집합이 실수를 이룰까? 한가지 문제점은, 같은 값으로 가는 것 같은 여러 코시수열들이 있다는 것이다. 가령 1 1.4 1.41 ...의 수열에서 앞의 유한한 몇개만 완전히 다른 유리수들로 바꿔버리면 두 수열은 결국 같은 방향으로 가는 것이지만 다른 수열이 되고만다. 우리는 뒤에 (어딘가로 수렴하리라 기대되는) 값만을 원소로 취하고 싶다. 그래야 한 원소가 유일하게 한 값으로 대응되는 보기편한 성질을 가질 수 있을 것이다. 이를 위해 equivalence relation을 만든다.

An~Bn iff for every ε>0 there's N such that |An-Bn|<ε for every n>N.

이제 S를 equivalence class들의 집합으로 정의하면 원하는 성질을 만족시킬 수 있을 것이다. 여기에 자연스러운 덧셈 곱셈 스칼라곱, 대소관계, 크기를 정의할 수 있고 S가 ordered field임을 증명할 수 있다. 이는 어렵진 않지만 매우 길고 지루하다. 생략..

 우리가 원했던 every cauchy sequence converges라는 성질이 S에서 성립함을 보일 수 있다. 이는 여러 lemma가 필요하다. 역으로 올라가보자. S위에서 정의된 코시수열 Xn을 유리수 위에서 정의된 코시수열 Rn으로 근사시켜 수렴성을 살펴보자(결국 실수는 십진법으로 나타낼 수 있다는 생각을 이용함). |Xn-Rn|<1/n인 Rn을 찾을 수 있는가? 이를 가정한다면, Rn이 수렴하면 삼각부등식을 써서 Xn도 수렴하게 만들 수 있다. 이때 Rn이 코시임은 삼각부등식을 쓰면 쉽게 보여지는데, Rn이 수렴함을 보이려면 S위에서 유리수들로 구성된 코시수열이 수렴함을 보여야 한다. 어렵지 않게 Rn은 [Rn]으로 수렴한다. 따라서 위에서 가정한 게 참임을 보이면 되는데, 이는 임의의 ε>0(유리수)와 S의 원소 x에 대해 어떤 유리수 r이 있어서 |x-r|<ε이 됨을 보이면 된다. x는 [xn]임을 이용하고 r을 코시수열에서 나오는 N값에 대해 r=x_N 으로 놓으면 된다.


 이 집합은 least-upper-bound property를 만족한다(이 성질을 만족하는 field를 complete하다고 한다). 증명하겠지만, complete ordered field는 유일하고 얘를 up to isomorphism 실수라고 명명할 것이다.

S의 completeness의 증명은 여러 방식으로 가능하다. 우선 공집합이 아닌 upper bounded된 집합 X를 가정하자. 그러면 upper bound x를 잡고 X1=x, Xn+1=Xn-1/k(k는 Xn+1이 upper bound가 되게하는 최소의 자연수)를 잡으면 얘는 코시이고 위에 의해 수렴한다. 그값이 least upper bound임을 정의를 따라 보이면 된다.

 혹은, X에서 증가하는 코시수열과 upper bound에서 upper bound로 감소하는 코시수열 두 개가 같은 곳으로 수렴함을 보이면 될 것이다. Wiki에 증명이 실려있다. 우선 X에서 원소 하나를 잡아 A1이라 하고, upper bound를 잡아 B1이라하고 An+1과 Bn+1에 대해서는,
An+Bn/2가 upper bound면 An+1=An, Bn+1=An+Bn/2. 아니라면, An+1=An+Bn/2(얘가 X에 없으면 얘보다 큰 X의 원소를 An+1로 둔다), Bn+1=Bn.

 계산해보면 An은 증가수열이고 Bn은 감소수열이다. 그리고 각각의 Bn은 upper bound라서 An보다 항상 크기 때문에 Bn-An은 B1-A1을 넘지 못하는데, 좀더 구체적으로는
B2-A2=<B1-A1/2 ... Bn+1-An+1=<Bn-An/2다. 정의를 쓰면 나온다. 또한 얘네 둘 수열은 코시인데 아니라면 값이 무한히 증가하거나 감소하기 때문에 An이 S의 원소가 되지 못하고, Bn은 upper bound가 되지 못한다. 따라서 두 수열은 수렴하고 그 값이 같다. Bn에 의해 수렴값 L은 upper bound이다. L'<L upper bound를 잡으면 L'<An인 n이 있음을 보이면 끝이다.


2. dedekind cut

 이 방법이 더 증명하기는 편하다.. 루트2를 유리수에 관한 무한수열이 아니라 집합으로 생각해보는 게 이 증명의 아이디어다. 1.414...로 수렴하는 집합을 생각해보면 x^2<2인 모든 유리수의 집합을 x^2=2이게 될 x와 동치시키는 것이 한가지 방법임을 알 수 있다. 굳이 2보다 작은 모든 유리수일 필요가 있는가.. 코시수열의 경우 대소관계를 유리수의 대소관계로 어떻게든 이해할 수 있으나 이 경우 집합이 대상이 될 것이므로 가능한 건 집합의 포함관계다. 이때 x^2<2와 x^3<3인 집합을 비교하려면 저런 유리수 모두를 포함하게해서 {x|x^2<2} =<{x|x^2<3}로 하면 된다. 이것들을 정의로 내리기 위해, 우선 x^2<2인 집합의 특성을 살펴보자.

(i)아래로 닫혀있음
(ii)가장 큰 원소가 없음

(i)는 대소관계를 만들기 위해 있고, (ii)는 코시수열에서 1 1.4 1.41 1.414 ...등을 집합으로 표현한 것이라 생각하면 된다.

이를 수식으로 쓰면

nonempty proper subset X of Q is called (dedekind) cut iff
(i)if x belongs to X and y<x, then y belongs to X
(ii)if x belongs to X, then there's y>x belonging to X.

cut이라는 말은 유리수 라인 위에 {x|x^2<2}처럼 딱 선 하나를 딱 컷해서 그 아래에 있는 것들을 포함한다는.. 의미다.

모든 컷들의 집합을 S라 하면 여기에다가 대소는 포함관계로, 덧셈은 원소들끼리의 덧셈으로, 덧셈의 역원 0*은 {x|x<0}으로 정의가능하고, 곱셈은 양수음수 나눠서 하면 된다. 양수의 경우 그대로 곱하면 된다. 음수는 역원을 생각해서 정의하면 된다. 그러면 ordered field임을 보일 수 있다.

least upper bound의 경우 매우 간단하다. upper boqunded인 공집합이 아닌 X를 잡고 UX를 취하면 끝이다. 대소가 포함관계라 이리 간단하다..


3. uniqueness of complete ordered field

 두 field 사이에 order isomorphism이 있음을 보이면 된다. X Y가 complete ordered field이면, 다음과 같은 맵을 잡는다.
f : X->Y
f(a)=sup{q_Y|q_X<a}. q_X는 X에서 유리수 q를 말한다.
(참고로 ordered field는 Q와 isomorphic한 subset을 가진다)
직접 임의의 X Y에 대해 보이는 건 어려우니까 Y를 cauchy나 dedekind로 잡는다. cauchy의 경우 위에서 증명했듯이 수렴하는 수열은 유리수코시수열로 동치시킬 수 있다. 이를 이용하면 되고 cut의 경우 정의에 의해 그냥 된다..