왜꼭1더하기1은2여야하는가

FrontPage|FindPage|TitleIndex|RecentChanges| UserPreferences P RSS
수학명언 중에서:
{{|
그래도 1 더하기 1이 2라는 우리의 믿음은 깨어지지 않을 것이다. -- BertrandRussell, 괴델의불완전성정리에 대하여.
|}}

많은 수학 비전공자들이 이 질문을 수학의 딱딱함, 규칙에 얽매인 태도 따위를 잘 지적하는 표현으로 여긴다. 몇 해 전에 나온 이진경의 (나쁘지 않은 수학교양서인) "수학의 몽상"도 마지막 '저자의 말'을 이 질문으로 맺으며 예의 탈주의 철학을 운운하고 있다. 그러나 이들은 모두 잘못된 지식에서 나온 잘못된 문제의식들이다. 한마디로 이 질문은 문제의 핵심을 전혀 이해하고 있지 못하다.

우선, 왜 1 더하기 1은 2인가(왜꼭1더하기1은2여야하는가와의 뉘앙스 차이에 주목할 것)에 대한 바른 대답은 만일 1이 우리가 알고 있는 그러한 1이고 +가 우리가 알고 있는 그러한 +라면 1+1은 우리가 알고 있는 그러한 2와 반드시 같아야 한다는 것이다. 즉, 우리가 일상적으로 사용하는 수의 개념을 논리적으로 추상화한 자연수에 대한 공리체계에 의해 참이라는 것이다. 1+1=2라는 등식의 의미를 이해하기 위해서는 우선 그 등식을 구성하는 1, 2, +, =의 의미를 정확히 알아야 한다는 것은 당연한 일이다. 왜꼭1더하기1은2여야하는가라는 질문은 대개 자연수와 덧셈의 개념을 자신이 당연히 잘 안다고 생각하는 데서 출발한다. 그러나 조금만 생각해 본다면 정규 수학교육과정을 통해 배우는 수에 대한 지식(사과 하나 더하기 사과 하나는 사과 두 개)은 '엄밀한 수학적 증명'을 위해서는 턱없이 부족하고 부정확한 것이라는 것은 쉽게 짐작할 수 있을 것이다.

그렇다면 1 더하기 1은 정말 2여야만 하는가? 수학의 최종적인 답변은 그렇기도 하고 아니기도 하다는 것이다. 그것은 (앞서 설명한 바와 같이) 1과 2와 +와 =을 어떻게 정의하는가에 달려있는 문제이다. 즉, 우리가 어떤 필요에 따라 수와 덧셈과 등호의 개념을 새롭게 정의한다면(그런 일은 아주 자주 일어난다) 1+1의 값은 얼마든지 달라질 수 있는 것이다. 예컨대 시계바늘을 시계방향으로 180도 돌리는 작용을 (+)1, 시계바늘이 일치하는 것을 =라고 정의한다면, 1을 두번 더하면 시계바늘이 제자리에 돌아오므로 1+1=0이라는 등식이 성립한다. 이것은 1+1=2라는 우리의 상식과 전혀 모순되는 일이 아니다. 우리는 단지 서로 다른 두 가지의 수-연산 체계를 보고 있을 뿐이다.

현대 집합론의 창시자 칸토르는 수학의 본질은 그 자유에 있다고 말했다. 실로 수학의 그 막강한 힘은 무한한 상상력의 움직임을 허용하는 자유로움에서 나온다. 필요하다면, 원하는대로 정의하라; 그러나 일단 그렇게 정의한 후에는 그 정의를 엄밀히 따르라. 그것이 수학의 규칙이며, 사고의 규칙이다.

아이들이묻고노벨상수상자들이답한다에서 엔리코 봄비에리(1974년 FieldsMedal 수상자)가 이 질문에 친절한 답을 해줍니다.

수학에서 1+1=2가 아닌 가장 대표적인 실례를 들라면 BooleanAlgebra 가 적당하겠군요. (1+1=1) --이응준

좋은 글이군요. 연산이라는 것은, 우선 연산을 적용할 집합이 정의된 다음, 연산을 정의하게 되죠. 따라서, 자연수라는 집합이 정의되고, 그 위에서 더하기라는 연산이 정의되는데, 그것이 우리가 알고 있는 1+1 == 2 인 이유입니다. 왜냐 하면, 우리는 1이라는 원소가 속한 자연수라는 집합에서 더하기라는 것을 그렇게 정의했기 때문에. 그런데 실은, 자연수 자체는 정의하기가 매우 난해해서, 자연수는 그냥 알고 있다고 가정하는 경우가 많이 있습니다, 대수학이나 집합론에서도... 사실 두 개의 연산자가 잘 정의되는 집합을 주로 field라고 하는데, 편의상 그 두 개의 연산자를 +, *라고 하면, 자연수를 7로 나눈 나머지의 집합도 field가 되고, 그곳에서의 +과 * 연산은 모두 항등원과 역원을 갖게 되죠. 중학교 때 대충 배운... 이런 것을 편의상 Zp where p == 7 field 라고 하는데, 따라서 Z2 field에서는 1+1 == 0 이 되죠. 이렇게 길게 이야기한 이유는, 덧셈이라는 연산은, 그 연산이 적용될 집합과 연산의 정의에 따라 달라진다는 것을 말하고 싶었기 때문입니다. adnoctum


"; if (isset($options[timer])) print $menu.$banner."
".$options[timer]->Write()."
"; else print $menu.$banner."
".$timer; ?> # # ?>