목록분류 전체보기 (25)
정보수학
대칭으로 수 체계를 바라보는 방법을 소개했었다. https://infomath.tistory.com/5 이 체계를 도입하려고 하는 이유는 수 체계를 새롭게 해석해서 여러가지 기존에 막연한 논리들을 다른 관점에서 검토해보고 싶었기 때문이다. 그 첫번째 질문은 소수라는 것은 무엇인가에 대한 것이다. 결론부터 이야기하면 소수는, 이 대칭 체계에서, 1이 아닌 수를 동일 반복해서 계산해도, 즉 곱셈으로 값을 증가시켜도, 도달할 수 없는 수 들의 집합이다. 에라토스테네스의 체와 동치이다. 이 설명에는 대칭 체계에서의 덧셈을 확장한 반복 연산과 비교만으로 확인할 수 있는데, 흥미로운 것은 특정 숫자의 소수 여부를 판정하기 위해서는 처음 2부터 정직하게 확대하면서 계산하는 것 외에는 방법이 없다는 사실이다. 특히나 ..

생물체는 대개 패턴 혹은 대칭성으로 부를 수 있는, 규칙성 있는 모습을 보여준다. 흙이나 먼지의 배열에도 일부 규칙성이 없지는 않으나, 생물의 것은 그 차원이 다르다. 그런데 그 이유는 어디에서 찾을 수 있을까? 단순화해서 이야기해보면, 그 원리는 프랙탈과 동일하다. 그 기저에 있는 단순한 기계적인 원리가(세포 분열과 성장), 수백만, 수억번 반복되면서 성장하기 때문에, 외부로 보여지는 모습이 프랙탈과 같은 원리로 만들어지기 때문이다. 프랙탈은 단순해 보이는 원칙의 어마어마한 반복도 매우 복잡한 양상을 보일 수 있으면서도, 확대해도 축소해도, 그 원칙의 반복이 자기 닮음을 만들어 낸다는 것을 보여준다. 오히려 생명에서는, 이러한 법칙이 변형되거나 문제가 생기면 대칭이 깨지고 패턴이 이상하게 보이게 된다...
이 블로그에서 주장하는 수체계는 튜링머신과 다르지 않다. 상태와 전환은 튜링머신의 핵심이다. 테이프의 기록의 snapshot은 상태를 의미하며 그 안에 전환의 규칙이 반영되어 있다. 이 둘이 혼재되어 있을 뿐이지, 다르지 않은 것이다. 기계적인 연산과 튜링머신은 다르지 않은데 논리명제들은 어떨까? 논리명제들도 튜링머신으로 전환해서 표현하고 동치로 만들 수 있다고 생각한다. 논리 명제를 유형화해서 나누지 않아도, 논리 명제의 대표인 ~라면, ~이다를 점검해봄으로써 나머지를 쉽게 짐작할 수 있다. "if A, then B" 를 가정해보자, A는 상태와 변환의 조합이며, B도 마찬가지로 상태와 변환의 조합이다. if x=3, then x+1=4 위의 예시를 보면 x=3인 상태라면, x에 1을 더하면 4가 된다..
1. 가상으로, 자연이 가질 수 있는 가장 무질서한 모습의 체계는, 무한히 많은 고유 상태와 그 상태간의 전환으로 구성되고, 그것들간의 전환이 랜덤으로 이루어지는 모습이다. 이러한 상태와 전환은 컴퓨터의 알고리즘을 기술하는 잘 알려진 방법이며, 자연도 그렇게 축약될 수 있고, 수학의 계산체계는 완전히 같다. 그것은 튜링 머신을 계승한다. 그러나 이러한 체계는 무한한 상태에서 또다른 무한한 상태의 전환이 랜덤인 상태에서는 큰 의미를 지니지는 않는다. 체계가 없어 보이기 때문이다. 상태X of 무한 -> (랜덤 전이) ->상태Y of 무한 2. 1의 상태에서, 자연이 가질 수 있는 모습에 조금더 질서를 부여하면, 상태에서 상태의 전환에 어떤 규칙(Rule)이 존재한다는 사실이다. 특정 상태에서는 특정 전환규..

프랙탈의 세상에는 확대해도 비슷한 화면이 펼쳐진다. 전체적으로 어떤 경향을 따르는데, 숫자의 스케일이 중요하지 않는 경우이다. 그런데 왜 이 작은 영역들을 확대해도 같은 일이 벌어질까? 프랙탈은 예외없이 순열을 통해 창조된다. 어떤 값을 상당히 많이 반복해서 계산하는 형태이다. 그리고 이러한 반복의 계산속에서는, 매우 작은 값들도 이런 반복을 통해서 곧 원래의 평범한 숫자들처럼 영향력을 발휘할 수 있게 된다. 반대로 엄청나게 큰 값들도 다시 매우 작은 영향밖에 끼칠 수 없게 된다. 수많은 반복 속에서, 큰 값이든 작은 값이든 서로 뒤섞여서 영향을 끼치는 것이 바로 이러한 반복된 계산의 특성이다. 마치 무한소가 무한을 만나, 평범한 유한한 값이 되는 것과 비슷하다. 무한대는 무한소를 만나서 평범한 유한한 ..

앞서 서술했듯이 프로그래밍의 본질은, 튜링이 Universal Machine을 설계한 사상과도 같듯이, 상태와 전환에 대한 내용으로 바꾸어 생각해볼 수 있다. 즉 0과 1로 기록된 저장장치(상태를 기억하는)와 약속에 의해 그 상태간에 움직이는(전환하는) 두가지가 핵심 속성이 된다. 프로그래밍이란 계산의 규칙을 만드는 것이고, 어떤 무한한 상태1에서 어떤 상태2로 일정한 패턴대로 전환되는 일련의 과정이라 이야기해볼 수 있다. 더 간단하게는 "메모리"와 "코드"로 분류된다. 수없이 펼쳐진, 고유의 이름이 붙여진 무한한 상태방을 상상하고, 그 방 사이를 전환시키는 것이 프로그래밍의 본질이라는 이야기다. 각 방은 프로그램이 진행될때 변하는 각기 그때그때 상태들의 총체이다. 여기서 이 두가지 속성의 구조를 의심해..

콜라츠의 추측(Collatz Conjecture)은 아래 두가지 간단한 상태변화를 다루는 프로그램이다. 1. x가 짝수이면 2로 나눈다. 2. x가 홀수이면 3*x + 1을 한다. 그런데 놀랍게도 거의 모든 양의 정수가 이 과정을 반복하면 1로 귀결될 것으로 추측되고 있다. 그런데 재미있는 것은 이 콜라츠의 추측이 모든 양의 정수에서 성립하는지 증명되지 않고 있다는 사실이다. 이 프로그램이 나타내는 숫자 변환은 마치 랜덤처럼 변화하면서 숫자가 평균적으로 작아지기는 하지만, 모든 숫자가 그런지는 알려지지 않았다. 이 문제는 기존에 지적한 대로 골드바흐의 추측과 같은 속성을 지닌다. 즉 2부터 2를 더하면서 해당 수가 두 소수의 합인지 조사하고 해당 만족하는 소수가 없으면 중단하라는 프로그램을 만든 후 프로..
수학이 기술할 수 있는, 세상의 가장 무분별한 상태는 어떻게 정의할 수 있을까? 그러니까 법칙이 없는 자연이 갖을 수 있는 가장 무질서한 상태와 일치하는 개념이다. 우리의 자연은 어떤 법칙하에 움직이고 있고, 어떤 상태와 그 변환으로 기술할 수 있다고 주장한 적이 있다. 따라서 1+1=2라는 것은, 1의 상태에서 +1이라는 변환을 통해 상태 2로 전환된 셈이라고 주장했다(대칭으로 구성한 수 체계 안에서, https://infomath.tistory.com/5). 그런데 이러한 대칭 체계 이전에는 어떻게 기술되었을 것인가에 대한 질문이다. 1) 생각해보면 그렇게 어렵지 않은데, 바로 무한한 상태들의 집합과 그 상태들간의 랜덤 변환이다. 각각의 상태에는 고유의 이름이 붙어있고, 상태에서 상태로의 모든 변환 ..
칸토어의 무한은 일반적인 수학에서는 다루기가 까다롭고 의미도 모호하다. 가장 대표적인 것이 바로 홀수의 전체 집합과 짝수의 전체 집합이 자연수의 전체 집합과 같다는 점이다. 자기 참조적인 성격이 있으므로, 우리가 흔히 이해하는 수학과는 다른 형태로 나타난다. 앨런 튜링은 계산을 하는 Universal Machine을 상정하고, 해당 Machine이 모든 주어진 프로그램에 대해 유한한 시간안에 답을 얻을 수 있는지 없는지 판정하는 일반적인 알고리즘이 없다는 것을 증명했다. (Alan Turing, " On computable numbers, with an application to the Entscheidungsproblem", 1936) 그러면 과연 프로그래밍에서 무한에 대한 정리는 무엇을 의미하는가? ..

진법이란 아래와 같이 약식으로 표현해볼 수 있다. 10진법의 예를 들어보자. a_n은 각 자리수를, b는 진법을 나타낸다고 해보자. 다만, 우리가 자주 쓰는 10진법보다는 2진법이 훨씬 더 이론적으로는 간결하다. 이유는 숫자 2개로만 나타낼 수 있는 점이 우선 가장 크다. 0과 1이라는 두가지 상태만으로 숫자 전체를 묘사할 수 있다. 현대의 디지털 컴퓨터는 이 간결함 때문에 2진법을 택하고 있는데, 디지털 회로의 전압이 5V일때는 1을, 0V일때는 0으로 정하고 모든 계산과 저장을 수행할 수 있기 때문이다. 컴퓨터는 자연을 해킹해서 계산력을 가져다 쓰는데, 가장 단순하게 가져다쓰기 위해서 0과 1이라는 두가지 상태를 기본으로 한 것이다. 그리고 언급한대로 2진법은 여러가지 직관을 줄 때가 있다. 1) 짝..