유랑

위상수학이 무엇이냐고 물으면 다들 비슷한 이야기로 시작한다. 물체 혹은 공간을 자르거나 붙이거나 하지 않고, 마치 고무 밴드와 같은 물질로 만들어져 있다고 상상하면서 구부리거나 늘리거나 압축하는 등의 변화를 허용하면서 공부한다는 것이다. 그리고 가장 많이 드는 예가 머그컵과 도넛이 위상수학자들에게 같은 물체라는 것이다. 당연히 위상수학자들도 도넛에 커피를 담아 마시면서 머그컵을 먹지는 않는다. 어떤 의미에서는 ‘같다’라는 말이 상황에 따라 가지는 엄밀한 의미를 다루는 것이 수학이라는 생각이 든다. 수많은 물체와 공간에 대해 다양한 수학적 기준으로 같고 다름을 정의하고 분류하는 일은 수학 연구에서 가장 본질적인 일 중 하나이고 또 셀 수 없이 많은 분야에 응용되어왔다.1

그런데 위와 같이 위상수학을 설명하는 것은 사실 위상수학의 첫 단계를 건너뛴 설명이다. 고무 밴드와 같은 물질로 만들어진 것을 늘리고 구부린다고 하면, 이미 그 고무 밴드의 모양 또는 형태를 상상하고 있는 것이다. 무언가 형태가 이미 있어야 그것을 늘려서 다른 형태로 바꾸지 않겠는가. 형태라는 말은 주어진 대상 위의 점들이 어떤 모양으로 배열되어있고, 또 서로 어떻게 연결되어있는지 등의 정보를 뭉뚱그려서 표현하는 말이다. 이 ‘연결성’이라는 것이 형태를 구성하는 중요한 요소 중 하나인데, 예를 들어 선과 면은 그 연결성이 많이 다르다. 선은 점 하나만 제거해도 두 조각으로 끊어지지만, 면은 점을 여러 개 제거해도 하나도 계속 연결되어 있다. 이미 형태를 가진 물체를 바라보면서 그 형태가 가지는 특성을 공부하는 것도 의미가 있지만, 애초에 어떻게 생긴 것인지 모르는 무언가에 적절한 형태를 상상하는 것도 위상수학에서 하는 일이고, 또 대학에서 수학 과목으로 위상수학을 처음 배우기 시작할 때 하는 이야기들이다.

언뜻 생각하면 형태가 없이 주어진 대상에 형태를 상상할 일이 뭐가 있을까 싶지만, 생각보다 익숙한 예들이 있다. 실수들을 모두 모아놓은 집합을 생각해보자. 실수들의 집합은 말 그대로 그냥 추상적으로 실수를 모두 한군데 모아놓은 것뿐이니 정해진 형태라는 게 없다. 그럼에도 불구하고 우리는 대개 실수들의 집합이라고 하면 자연스럽게 숫자들이 크기순으로 쭉 늘어 놓여있는 무한히 긴 직선을 떠올린다. 위상수학을 한 번도 배우지 않은 사람들도 실수들의 집합은 그냥 집합으로 받아들이는 것이 아니라 이렇게 1차원의 무한히 긴 ‘공간’으로 받아들이는 것이다. 실수 두 개의 순서쌍들의 집합은 어떨까? 혹시 평면을 떠올렸는가? 당신은 당신이 생각하는 것보다 훨씬 더 위상수학자와 비슷하다! 이미 이런 집합들을 공간으로 자연스럽게 받아들이는 직관을 가지고 있으니까 말이다.

그런데 수와 수 사이의 틈이 없이 이렇게 쭉 이어진 직선처럼 생긴 형태를 상상하는 것은 왜 자연스러울까? 임의의 두 실수 사이에는 꼭 다른 실수가 있으니 틈이 없이 빽빽하게 꽉 찬 형태를 상상하는 것이 당연하다고 생각할지 모른다. 그러면 유리수(2/3, 1456/3245343와 같이 분수 꼴로 쓰이는 수들)들의 집합은 어떨까? 임의의 두 유리수 사이에도 항상 다른 유리수가 있다. 항상 틈이 있으면 그사이를 채우는 유리수들이 있는데 그러면 유리수들의 집합도 실수들의 집합처럼 직선으로 생각될 수 있을 것일까? 실수들로 이루어진 직선에 포함된 유리수들을 생각하면 당연히 “틈”이 있다. 두 유리수 사이에는 항상 유리수가 아닌, 즉 분수 꼴로 쓸 수 없는 실수가 있다 (이러한 수를 무리수라고 부른다). 그러니 유리수들만 모아놓아도 빽빽한 것 같지만 사실은 그사이 사이에 무리수들이 있어서 틈이 있는 것이다. 그러니 직선이 아니라고 생각할 수도 있다. 하지만 그 틈이 특정한 길이를 가질 만큼 큰 곳은 없다. 어떤 두 수 사이에도 유리수가 항상 들어가 있으니 그런 공간이 남아있을 여지는 없다. 이렇게 생각하면, 실수들로 이루어진 선에서 무리수를 다 빼고 유리수만 남겨서 틈 없이 밀착시키면 여전히 직선이 되는 것은 아닐까? 정답만 말하자면 직선이 되지 않는다. 직선에 포함된 점의 개수에 비해 유리수의 개수가 현저히 적기 때문이다. 이처럼 대략적인 형태를 아는 것 같아도 구체적인 모양을 이해하는 것은 쉬운 일이 아니다.

조금 더 세심한 독자라면 사실 더 큰 의문이 생길 것이다. 처음부터 크기순으로 나열하는 것이 아니라 다른 방법으로 나열해서 다른 형태를 가질 수는 없을까? 아니 꼭 처음부터 한 방향으로 나열할 필요도 없는 것이 아닌가? 형태를 주는 방법은 유일한가? 그렇지 않다면 무엇이 더 좋은 형태인가? 아니 뭐가 좋고 나쁘고는 뭘 가지고 정하나? 이 질문들은 모두 의미 있는 질문들이고, 그 하나하나에 대해 수학자들은 열심히 생각한다. 어떤 경우에는 주로 많이 쓰이는, 선호되는 형태가 있을 때가 있다. 그런 것조차 없을 때가 있다. 후자의 경우에는 주어진 대상을 가지고 하고자 하는 일에 따라 더 적합한 형태가 달라지고, 각 상황에 맞게 적합한 모양을 찾아서 공부하는 것이다.

이렇게 집합에 형태를 주고 나면 공간이라고 부른다. 다시 말해 같은 집합이라도 다른 공간이 될 수 있다. 형태를 준다, 공간으로 만든다, 이 말의 의미를 조금 더 구체적으로 살펴보도록 하자. 다시 실수들의 집합으로 돌아가 보자. 위에서 언급한 여러 의문이 있었지만, 일단은 우리의 직관을 믿고 직선적인 생긴 형태로 상상하기로 하자. 어떤 두 점이 서로 가깝고 어떤 두 점이 서로 먼지는 이 직선상에서 두 점이 얼마나 멀리 떨어져 있는가만 보면 된다. 그리고 모두가 한 줄로 나란히 서서 1차원적인 모양을 가진다는 것도 안다. 이런 것들이 바로 공간으로서의 형태를 구성하는 요소들이다. 이 실수들의 집합에서 사람들이 ‘열린구간’이라고 부르는 것이 있다. 구간이라는 것은 어떤 두 수의 사이에 있는 수들의 모임이다. 예를 들어 0부터 1까지의 구간이라고 하면, 0보다는 크고 1보다 작은 수들의 집합이다. 단, 이때 끝점인 0과 1은 포함시킬 수도 안 시킬 수도 있는데, 0과 1을 모두 포함시키지 않는 경우 이를 0부터 1까지의 열린구간이라고 한다. 말 그대로 양 끝이 ‘열려 있다’는 것이다. 0과 1을 모두 포함하는 경우에는 0부터 1까지의 닫힌구간이라고 부른다.

열린구간을 해석하는 한 가지 관점은, 실수들의 집합에서 어떤 점의 ‘근방’, 즉 가까운 주변의 영역으로 볼 수 있다는 것이다. 예를 들어, 0.5로부터 거리가 0.5 이내로 떨어진 점들을 모아놓은 0.5의 근방을 생각해보자. 0.5보다 왼쪽으로 0.5만큼 떨어진 점은 0, 오른쪽으로 0.5만큼 떨어진 점은 1이니, 0과 1 사이의 수들이 이 근방을 이루는 점들이 된다. 즉, 0.5로부터 거리가 0.5보다 적게 떨어진 모든 점을 모으면 정확히 0부터 1까지의 열린구간이 된다. 이와 같이 각각의 열린구간은 이 구간 안에 속한 점들의 입장에서는 자기 주변의 근방을 나타내는 것으로 생각할 수 있다. 어떤 집합이든 특정한 형태를 부여받으면, 즉 공간이 되고 나면, 이와 같이 각 점 근방의 모양이 정해진다. 반대로 모든 점에서 그 점 근방의 모양을 알 수 있다면, 이들이 모여서 생긴 공간의 형태에 대해서도 이해할 수 있다. 실수들의 집합에서 열린구간과 비슷한 역할을 하므로 이러한 점의 근방들을 이 공간의 열린 부분집합들이라고 부른다. 즉, 어떤 집합을 공간으로 본다는 것은, 이 공간상의 열린 부분집합들이 어떤 녀석들인지 정하여주는 것과 다름이 없다.

위에서 0부터 1까지 구간에서 0과 1을 모두 포함하는 경우는 닫힌구간이라고 하였다. 혹은 0과 1 둘 중 하나만 포함하게 할 수도 있겠다. 예를 들어 1을 포함했다고 해보자. 고작 점 한 개의 차이인데 열린구간과는 달리 주어진 점의 근방을 묘사하는 녀석으로 훨씬 인기가 없다. 점 하나 차이가 만드는 다른 점이 뭐길래 그런 걸까. 예를 들어 실수들의 집합에서 정의된 함수 같은 것을 생각해보자. 어떤 수학적인 조건을 만족하면 우리는 이러한 함수를 연속함수라고 부르는데, 그 값이 연속적으로 변한다는 것이다. 연속인 변화란, 주어진 실수를 아주 조금 변화시키면 그때의 함숫값도 아주 조금만 변한다는 것을 의미한다. 열린구간을 고려하면 구간 내의 어떤 점을 택해도, 그 값을 조금만 변화시키면, 즉 왼쪽이나 오른쪽으로 조금만 이동하면 계속 같은 구간 내에 들어오게 할 수 있다. 그 때문에 우리가 근방이라고 할 때 열린구간과 같은 근방을 고려한다면, 주어진 실수를 아주 조금 변화시키면서 함숫값의 변화를 본다는 것은, 주어진 실수의 아주 작은 근방 위에서 함숫값이 어떻게 달라지는지를 본다는 것으로 바꾸어 말할 수 있다. 그러나 예를 들어 0부터 1까지의 구간에서 1을 포함하면, 1은 이 구간 안에 포함된 점이지만 1 근처에서 값을 조금만 변화시킬 때 왼쪽으로 조금 움직이는 것은 같은 구간 내에 포함되지만, 오른 쪽으로 조금 움직이는 것은 포함되지 않는다. 즉, 한쪽 끝이 닫혀있는 구간들만을 근방으로 해석하기 시작하면, “조금의 변화”라는 것을 관찰할 때 주어진 수의 한쪽 방향의 변화만을 보게 되어 반대 방향에서 나타나는 변화는 놓치게 된다. 그런 의미에서 양쪽이 다 열려있는 구간들을 가지고 근방의 개념을 논의하는 것이 더 편리해지는 것이다. 앞서도 말했지만 물론 어떤 문제를 고려하느냐에 따라 어떤 부분집합들을 점의 근방으로 고려하는 것이 편리한지는 달라진다. 여기서는 우리가 일상적으로 자연스럽게 느끼는 상황들을 토대로 자연스러운 근방의 모습을 설명하고 있는 것뿐이다. 그러니까 우리가 원하는 형태가 어떤 형태냐에 따라 어떤 부분집합들을 열린 부분집합들로 부를 것인지 정해야 한다.

하지만 열린 부분집합들이 어떤 녀석들인지 아무렇게나 정해주어도 항상 의미가 있는 형태를 얻게 되지는 않는다. 그래서 수학자들은 어떤 공간의 열린 부분집합들이 만족해야 할 최소한의 규칙들을 찾아서 다음과 같이 정리하였다.

  1. 공집합과 주어진 집합 전체, 이 두 가지는 항상 열린 부분집합이다.
  2. 열린 부분집합들은 아무리 많이 가져와서 합집합을 취해도, 그 결과는 열린 부분집합이다.
  3. 유한개의 열린 부분집합들을 가져와 교집합을 취하면, 그 결과는 열린 부분집합이다.


어떤 집합의 열린 부분집합들을 모아놓은 규칙이 위의 1, 2, 3을 만족하면, 우리는 이 집합에서 어떤 점이 어떤 점의 근방 안에 들어가는가, 어떤 점이 어떤 점의 근처에 있는가를 설명하는 방법에 대해서 서로 약속을 한 것이다. 이러한 약속을 통해 집합은 특정한 형태를 가진 공간이 된다. 수학자들은 이 과정을 이 집합에 ‘위상 구조’를 주었다고 부른다. 열린 부분집합을 점의 근방으로 보는 이 관점에서는, 두 점이 가깝고 멀다는 것을 다음과 같이 이야기할 수 있다. 예를 들어, 점 x, y, z가 있을 때 x의 근방들 중 일부에는 y가 들어가고, 이러한 근방들 모두에 z도 또한 들어간다고 하자. 그런데 z는 x의 더 많은 근방들, 심지어 y는 들어가지 않는 많은 근방들에도 포함된다고 하자. 그러면 z는 y보다 x에 더 가까운 점이라고 생각할 수 있다. 수학적으로 엄밀하게는 가깝다, 멀다는 표현을 쓰지 않지만 더 많은 근방에 포함되는 것이 형태적으로 더 가까운 점들을 표현하는 것으로 보는 것이 열린 부분집합들을 통해 형태를 구성한다는 것을 이해하는데 직관적으로 도움이 된다.

실수들의 집합을 공간으로 보는 방법, 즉 위상 구조를 부여하는 방법은 유일하지는 않은데, 우리가 직관적으로 받아들이는 직선의 형태를 실수 집합의 표준 위상 구조라고 한다. 일단은 우리는 항상 표준 위상 구조만을 생각하기로 하자. 표준 위상 구조에서 열린구간들은 항상 열린 부분집합이다 (다행이지 않은가? 다른 종류의 논의에서 정의된 두 가지 수학 용어가 충돌하는 경우도 종종 있다). 위의 세 가지 규칙을 보면 사실 규칙 자체는 꽤 간단한데, 그러면 실수들의 집합에서는 열린구간 말고 또 어떤 열린집합들이 생기게 될까? 0부터 1까지의 열린구간을 (0, 1)이라고 표현해보자. 이는 열린 부분집합이다. 이보다 조금 큰 구간, 이를테면 (0, 2)를 생각해도, 역시 열린 부분집합이다. 이렇게 임의의 자연수 n에 대해서 (0, n)이라는 열린구간을 생각할 수 있다. 이것들을 전부 모은 다음 합집합을 해보자. 2번 규칙에 의하면 이 합집합도 열린 부분집합이다. 그런데 무엇이 합집합일까? t를 0보다는 큰 임의의 실수라고 해보자. t가 아무리 큰 수여도, 그보다 큰 자연수 N을 생각할 수 있을 것이다. 즉, t는 열린구간 (0, N)에 속하고, 당연히 우리의 합집합에도 속한다. 따라서 이 합집합은 0보다 큰 모든 실수들의 집합임을 쉽게 알 수 있다. 그림으로 그려보자면 0에서 시작하여 (다만 0은 포함하지 않고) 오른쪽으로 무한히 뻗은 반직선의 형태이다. 따라서 이러한 반직선도 열린 부분집합이다. 같은 논리로 0에 시작하여 (0은 포함하지 않고) 왼쪽으로 무한히 뻗은 반직선도 열린 부분집합이다. 물론 여기서 0의 역할을 특별하지 않으니, 끝점을 포함하지 않은 반직선은 항상 열린 부분집합인 것이다.

위에서 0부터 1까지의 구간이 0과 1을 포함하면 이를 닫힌구간이라고 부른다고 하였다. 그러면 일반적으로 닫힌 부분집합이라는 개념도 있을까? 있다. 아주 간단한데, 그냥 여집합이 열린 부분집합인 부분집합을 닫힌 부분집합이라고 한다. 이렇게 말해놓고 0부터 1까지의 닫힌구간이 이렇게 정의된 닫힌 부분집합이 아니라면 화가 날 것이다. 그러니까 한번 확인해보자. 0부터 1까지의 닫힌구간의 여집합은 두 개의 반직선으로 이루어져 있다. 하나는 0에서 왼쪽으로 무한히 뻗은 반직선이고, 다른 하나는 1에서 오른쪽으로 무한히 뻗은 반직선이다. 이들은 끝점을 포함하지 않으니 열린 반직선들, 즉 열린 부분집합들이다. 다시 한번 2번 규칙에 의해 이들의 합집합은 열린 부분집합이다. 닫힌구간의 여집합이 열린 부분집합이니 닫힌구간 자체는 닫힌 부분집합이다. 다행히 이번에도 용어가 일관되게 정의된 셈이다.

열린구간을 주어진 점의 근방으로 해석할 때, 우리는 두 점 사이의 거리라는 개념을 이용해서 설명했다. 하지만 위에 주어진 1, 2, 3번 규칙을 가만히 들여다보면, 거리의 개념은 전혀 등장하지 않는다. 즉, 거리의 개념이 없어도 어떤 점을 포함하는 열린 부분집합을 그 점의 ‘근방’으로 해석하는 추상화가 이루어진 것이다. 실제로 모든 위상 공간이 거리의 개념을 가질 수 있는 것은 아니다. 거리의 개념이 존재할 수 없는 공간들도 있다. 언뜻 듣기에는 도대체 어떤 괴짜들이 그런 걸 공부한단 말인가 싶겠지만, 이처럼 공간의 개념을 유연하게 확장해두면 유용한 순간이 정말 많이 있다.

물론 거리의 개념이 있으면 좋은 점은 셀 수 없을 만큼 많이 있다.그 중 하나가 서로 다른 두 점이, 서로 만나지 않는 근방들을 가진다는 것이다. 이게 도대체 뭔 말인가. 실수들의 집합으로 돌아가서 다시 한번 우리의 절친 0과 1을 불러오자. 0으로부터 거리가 0.3 이내로 떨어진 점들을 모은 0의 근방과 1로부터 거리가 0.3으로 이내로 떨어진 점들을 모은 1의 근방을 생각해보자. 각각 열린구간 (-0.3, 0.3)과 (0.7, 1.3)이 된다. 이들은 서로 만나지 않는다. 예를 보고 나니 그런 생각이 든다. 아니 뭐 이건 당연한 거 아니야? 하지만 이건 0과 1 사이에 거리라는 것이 존재하고, 그보다 짧은 거리만큼 떨어진 근방을 잡았기 때문에 가능했던 것이다. 이런 일이 가능하지 않은 위상 공간의 예를 드는 것은 엄청 쉽다. 예를 들어, {a, b, c}와 같이 세 개의 글자들을 원소로 가지는 집합을 생각해보자. 여기서 공집합, 전체집합, {b}, {a, b}, {b, c} 이렇게 다섯 개의 부분집합을 열린 부분집합으로 정하자. 아주 간단한 경우이니 위의 1, 2, 3번 규칙이 잘 만족되는지는 각자 확인해보자. 이렇게 주어진 위상 구조에서는 a의 근방과 c의 근방이 항상 b를 포함하기 때문에 서로 만나지 않는 근방을 가질 수 없다. 거리 개념이 있는 공간에서는 거리를 이용해서 서로 만나지 않는 근방을 항상 정의할 수 있으니, 다시 말해서 우리가 예로 들은 공간 {a, b, c}에는 거리 개념이 없는 것이다. 다시 열린 부분집합이 근방의 표현하는 것이라는 관점에서 생각해보면 점 a의 모든 근방에는 항상 b가 있다. 말하자면 “무한히 가까운” 것이다. 거리 개념을 억지로 생각하려면 이 두 점은 서로 다른 두 점이면서 거리가 0이어야 하지만, 그런 개념을 우리는 ‘거리’라고 부르지 않는다. 같은 집합이라도 서로 다른 위상 구조를 줄 수 있다는 이야기도 앞서 했었다. {a, b, c} 집합에서 모든 부분집합을 열린 집합으로 가지는 위상 구조를 생각하면 여기서는 위에서 이야기한 부자연스러운 현상이 사라진다. a의 가장 작은 근방은 a만을 포함하고 있고, 서로 다른 두 점 a, b는 {a}, {b}라는 서로 만나지 않은 근방들을 가진다. 이 새로운 위상 구조에는 거리 개념을 정의할 수 있다. a, b, c가 각각 서로로부터 1만큼 떨어진 거리를 가진다고 한다면, 점 a로부터 거리가 1미만인 점들을 다 모으면 a밖에 없어서 부분집합으로서는 {a}가 된다.

그럼 서로 다른 두 점이 서로 만나지 않는 근방을 가지는 건 왜 좋을까? 일상생활에서 생각해보면 당연한 거다. 내가 내 방에 들어가서 하는 일을 일일이 부모님이 항상 다 보고 있으면 얼마나 싫겠는가. 서로 각자의 독립된 공간이 존재해서, 작은 공간에서 하는 일들을 바깥쪽에서 모르는 것이 가정의 평화에 도움이 되듯, 위상 공간에서 이런 일들은 수학적으로 매우 도움이 된다. 조금 더 수학적인 설명을 하자면 어떤 수에 무한히 가까워지고 있는 수열 같은 것을 생각해보자 (수학적으로 이런 것을 수렴한다고 한다). 무한히 가까워진다고 하니 거리개념을 가지고 하는 이야기 같지만, 그냥 일반적인 위상공간에서도 근방의 개념을 가지고 수렴한다는 것을 정의할 수 있다. 우리는 어떤 점에서 임의의 근방을 잡아도 주어진 수열의 점들이 무한히 많이 그 근방 안으로 들어가면 이 수열이 수렴한다고 한다. 아무리 아무리 작은 근방을 잡아도 그 안으로 수열이 파고 들어간다는 의미이니 수렴한다는 것이 직관적으로 와닿는다. 서로 다른 두 점이 서로 만나지 않는 근방을 가지지 않는다면, 이 두 점에서는 아무리 작은 근방을 잡아도 두 점이 모두 포함된다. 이렇게 되면 이 두 점 중 하나로 수렴하는 수열은 다른 한 점으로도 수렴하는 것이 된다. 실수들의 집합에서 두 개의 서로 다른 수로 동시에 수렴하는 수들의 모임은 생각할 수 없듯이 이런 현상은 직관적으로 자연스럽지 않다. 사회적 거리두기가 전염병의 전파를 예방해주듯 위상적 거리두기는 이런 부자연스러운 현상의 가능성을 제거해준다.

이렇게 서로 다른 두 점이 서로 만나지 않는 근방을 가지는 공간을 위상수학에서는 하우스도르프 공간이라고 부른다. 수학자 하우스도르프가 살았던 독일 본Bonn의 본 대학 수학과에 가면 1층에 Hausdorff raum이라고 이름 붙은 방이 있다. 독일어 raum이 영어로 방room을 뜻하기도 하고 공간space를 뜻하기도 하는 점을 이용하여 재치 있게 붙인 이름이다. 이 글의 독자들은 다음에 본에 방문하면 하우스도르프 공간에서 연구하는 수학자들을 떠올리게 되지 않을까 기대해본다.

백형렬
KAIST 수리과학과 부교수