목록분류 전체보기 (25)
정보수학
여기서 탐구하는 범위를 선택함에 있어서 우리는 이 과학적 탐구가 지니는 현실성을 챙길 수 있다. 다른 말로 하면, 부적절한 범주에서 모호한 논쟁을 하느라 시간을 낭비할 필요가 없게 하는데 주력할 것이다. 그리고 그러한 제한 혹은 분할이 어떤 의미를 지니는지가 이 글의 주제이다. 예를 들면 많은 이들은 태어나서 지금까지 혹은 최근 몇 년 간을 자신의 탐구와 진리를 찾는 제한영역으로 본다. 더 과거는 고려하지 않고, 자신과 가까운 주변을 주로 범위로 삼는다. 누구도 인생을 고민함에 있어, 명왕성의 어딘가까지 확장해 상정하지 않는 것과 같다. 우리의 머리속에는 이 지구에서도, 그것도 살고 있는 근처만을 염두해둔다. 대부분의 인간은 자신의 보고 살고 있는 시간과 공간을 자연스레 염두해두고 살아가기 때문이다. ..
더 여정을 시작하기 전에, 우주를 둘러싼 스케일을 한번 살펴보자. 기존 필자의 글에서 발췌해본다. 맨 먼저 양자역학에서 다루는 최소 길이인 플랑크 길이(Planck length)를 이해해야 한다. 플랑크 길이는 유의미한 가장 작은 길이이며, 이 길이 이하에는 현재 우리가 가진 이론으로는 물리적인 의미가 없다고 한다. 1.61624 * (10 ^ -35) m 그리고 우리가 관측 가능한 우주의 크기는 아래와 같다(지구를 중심으로 관측가능한 우주를 구라고 할때 그 지름). 이 밖에도 당연히 무언가 있을텐데, 인간으로서는 빛의 속도 한계 등으로 가보거나 관측할 수가 없다. 8.8 * (10 ^ 26) m 이 길이를 우리가 볼 수 있는 가장 작은 길이 단위로 만들면, 이 우주의 상태를 기술할때 다루어야할 배열의 ..
수학이라는 도구를 갖고 있다고 해도 우주를 이해하기 위해서는, 그 전환이 어떻게 이루어지는지에 대한 탐구가 별도로 필요하다. 이러한 탐구는 개인적으로는 우주를 동일하게 컴퓨터로 시뮬레이션하기 위해서는 어떤 방법이 좋고 어떤 어려움이 있는가에 대해서 중요한 한계들을 상정하고 고민해야 한다고 생각한다. 신기하지 않는가? 그것을 계산하여 시뮬레이션 하는 방법을 생각하면 우주를 이해하게 되는 것이다. 이를 테면 지금 진행되는 수많은 공학적인 창작, 이를테면 게임 세계나 대형 프로젝트가 어떤 것을 만드는데 고민이 있듯이 우주를 만들때 어떤 고민이 있을지를 예측해보면 이것이 큰 도움을 주리라고 예상한다. 또한 앞서 밝혔듯이 우리가 최선을 다해서 우주가 어떤 법칙으로 작동하고 있다는 것을 알아냈다고 치더라도, 그것..

수학은 다양한 역할을 할 수 있는데, 전통적으로 자연을 예측하는 일은 '계산'이 담당했다. 계산이란 무엇일까? 기본적으로 현재의 상태를 기반으로 미래를 예측하는 일이다. 현재의 상태 정보를 입력하면 어떻게 변화하는지 알 수 있다. 현재의 행성 궤도를 관측해서, 방정식에 넣으면 원하는 시기의 행성 위치를 알 수 있게 되는 형식다. 앞서 설명했듯이 이 수학적 계산은 어떤 상태에서, 어떤 전이 과정을 통해 특정 상태에 다다른다는 규칙의 연속이다. 2를 5번 더하면 0이라는 상태에서 10이 된다. 자명한 규칙을 정의하고 계산하면 우리는 어떤 결과값을 도출해낼 수 있다. 우주의 작동은 이렇게 현재의 상태와 그 전이 과정으로 간단히 이해할 수 있다. 어려운 이야기처럼 보이지만 우리가 너무나 자주 경험하는 것이다...
우리가 처음 고민해야 할 점은, 이 주제를 다루는 우리 자신과 우리가 처한 상황을 이해하는 것이다. 이를 위해 몇 가지 중요한 요소를 살펴보자. 1. 우리가 이해하려는 그 작동 안에서, 우리가 존재하고 있다. 우리는 세계의 작동을 관찰하며 그 안에서 경험하고 있다. 그리고 뿐만 아니라 이 작동을 이해하려고 한다. 문제는 우리의 이해의 끝이 결국은 이 작동에 의존한다는 사실이다. 바로 이 세상에서 살고 생각하는 우리가 그 안에서 이 세상을 이해해야 한다는 점이다. 이해를 해야 하는 대상과 이해를 하는 주체가 같이 얽혀있다. 무언가를 이해하려면, 그 밖에 서야 하는 것이 정석이다. 그래야만 전체를 바라보며 판단할 수 있기 때문이다. 그것이 통상의 주제를 다루는 객관화된 방식이다. 외부의 형식적으로 검증된..
기적같은 일이다. 나는 지금 당신과 "글" 또는 "책"이라는 매개체를 통해 이야기를 나누고 있다. 이렇게 대화를 나누는 방식이 수백 년 동안 발전해 왔기에, 이제는 그다지 놀랍지 않게 느껴질 수 있다. 하지만 그렇다고 해서 평범하다고 말할 수는 없다. 이 방식은 여전히 경이롭고 특별하다. 많은 탐구자들이 자신이 아는 바를 글로 남겨, 다른 이들에게 전해왔다. 이 과정은 직접 만나서 대화하는 것보다 오히려 더 깊은 지식과 생각을 나눌 수 있는 기회를 제공하기도 했다. 나 역시 이 방식으로 당신과 이야기를 나눠보고 싶다. 우리가 다룰 주제가 매우 흥미롭다고 믿기 때문이다. 바로, "정교하게 작동하는 우주와 세상"에 대한 이야기다. 어떻게 이 놀랍도록 규칙적인 세상을 이해하고 풀어나갈 수 있을까? 이런 의..
소프트웨어 개발은 기계적인 절차를 다룬다. 즉 Universal Turing Machine과 동치인 이 컴퓨터에 대해 그 작동 메카니즘을 실제로 활용해서 반영하고, 그 과정을 수없이 반복함으로써 체득하는 과정이다. 그것은 수학적 증명의 절차를 따라가는 것과 유사하기도 하며, 계산 절차를 진행하는 것을 관리 감독하는 것과 같다. 그리고 여러가지 관점에서 소프트웨어 개발은 수학적 사고와 매우 깊은 연관이 있다고 생각한다. 기존 글에서 필자는 수 계산의 본질이 상태와 전환이라는, 즉 어떤 저장값과 그 저장값을 바꾸는 과정이라고 주장했다. 그리고 그 주장은 소프트웨어도 마찬가지다. 다만, 수는 대칭 체계에 기반하여 이 상태/전환을 설계하여 숫자화하고 이용하고 있고, 소프트웨어는 이 수학 체계를 그대로 이어 ..
칸토어의 무한에 대한 탐구 덕에, 우리는 무한한 시간을 쏟지 않고도, 무한한 상태에 대해 무한번 비교하지 않고도 어떤 현상이 벌어질지 이해하게 되었다. (즉 1:1 대응 같은 작업을 통해) 기적과 같은 일이다. 사실은 비슷한 일이 또 있다. 이를테면 소수의 개수가 무한한가 라는 질문에 대해서도, 무한번 해보지 않고도 적절한 방법을 통해 증명을 할 수 있다. 유클리드는 이미 그런 선물을 우리에게 준 셈이다. 아무리 노력해도 정말 무한번 해야만 할 수 있는 일들이 있는데, 그 중 일부를 칸토어가해결한 셈이다. 무한번 실제 하지 않고도 말이다. 또다른 이야기를 위해 예를 들어보자. 1 = 0.99999..(무한번) 라고 하는데, 정말 그럴까? 이 질문은 간단하게는 두가지를 함의한다. 첫번째로 만약에 0.99..
더하기 빼기 곱하기 나누기 중에 가장 복잡하고 괴상한 것은 나눗셈이다. 0과 1로 정의한 상태값에서, 모든 계산들은 그 대칭성에서도 불구하고 단순한 반복으로 귀결된다. 그 후에는 단순한 상태로 전이된다. 더하기와 빼기는 사실상 동일하다. 더하기는 물론 반복이며, 빼기는 반대 방향을 계속 반복해나가는 것에 불과하다. 곱하기는 일정한 더하기를 다시 한번 반복한다. 반복을 반복하면 된다. 그런데 이 나눗셈은 나누어 떨어지는 수에서는 일종의 뺄셈의 반복처럼 느껴지겠지만 그 본질은 전혀 그렇지 않다. 이쯤에서 다시 이 숫자라는게 무엇인지 곱씹을 필요가 있다. 어떤 상태를 나타내는 이 숫자란 무엇일까? 가장 기본적으로 숫자들 간에는 같거나 다름으로 평가될 수 있지만, 연산 상에서의 어떤 위치를 지니는 것이 특징이다..
대칭을 통한 연산 체계의 정리를 통해서, 혹은 튜링의 튜링머신에 의해서, 기계적인 연산 체계는 상태와 그 전환으로 분류할 수 있다고 언급했었다. 칸토어는 무한의 대한 전개를 자연수(가산무한)에서 확장하여 초한수로 넓혀 나갔다. 이는 상기 제안했던 연산 체계에서는 '상태'라고 이야기해볼 수 있다. 즉 상태들의 묶음이며 이를 자연수라고 하면, 이 자연수와 1:1로 대응하는지의 여부나 다양한 논리 전개를 통해 무한의 등급을 나누었다고 볼 수 있다. 그런데 그의 무한의 분류에서도 "상태 전환"이 차용된다. 자연수는 1에서 시작해서 계속 1을 더해나가는 과정을 통해 전체 자연수 상태를 모두 방문할 수 있다. 그리고 이 과정과 1:1로 대응하면, 예를 들면 짝수의 상태를 방문할 수 있게 되면 그 무한이 동치라는 것..