√2를 계산하는 법

\(\sqrt{2}\)의 값을 정확한 공식을 통해 계산해본적 있는가? 그것이 너무 익숙한 숫자라, 아마 그런 경험이 있다고 느끼는 분도 있을 것 같다. 하지만 이는 초중고 정규교과과정은 물론이고 왠만한 이공계 대학과정에도 포함되지 않는 내용이다. 즉, ‘\(\sqrt{2}\)를 계산하는 법1’은 특별히 따로 배우거나 관심이 있어 찾아보지 않는 이상 알 수 없는 내용인 것이다2. 무엇 때문에 그것이 교과과정에서 포함되지 않는진 모르겠지만, 그 내용이 어렵기 때문인것은 전혀 아니다 — 개인적으로 볼 때 고1정도 수준이면 충분히 이해 할 수 있다.

‘두번 곱해서 2가 되는 수’ — 그것이 \(\sqrt{2}\)의 정의다. 이는 수학적으로 ‘\(\sqrt{2}\)는 이차방정식 \( x^2=2 \)의 해이다’라고 표현 할 수 있다. 이 식의 양변을 간단한 사칙연산으로 만져주자 : $$ \begin{align*} &x^2=2 \\ \to\qquad &x^2-1=1 \\ \to\qquad &(x-1)(x+1)=1 \\ \to\qquad &x-1=\frac{1}{1+x} \\ \to\qquad &x=1+\frac{1}{1+x} \\ \end{align*} $$

마지막 식을 유심히 살펴보자. 좌변에는 \( x \)가 있는데, 우변에는 \( x \)에 대한 분수함수가 있다. 즉, \( x \)의 값을 구하려는 그 식에서 다시 \( x \)의 값이 필요한 것이다3. 이것은 뭔가 의미없는 동어반복을 통해 도달한 의미없는 결과처럼 보일지 모르겠으나, 전혀 그렇지 않다.

우리는 있는 그대로의 수식에 맞게 가면된다. \( x \)의 값이 \(  1+\frac{1}{1+x} \)라 했으니, 이를 우변에 그대로 대입해주자 : $$ x=1+\frac{1}{2+\frac{1}{1+x}} $$

우변에 또 \( x \)가 있으니, 여기에 \(  1+\frac{1}{1+x} \)를 또 한번 대입해보자 : $$ x=1+\frac{1}{2+\frac{1}{2+\frac{1}{1+x}}} $$

규칙이 보이는가? 이 과정을 백만번 천만번 반복해도 언제나 우측하단에는 \( x \)가 그대로 남아있다. 즉, \( \sqrt{2} \)는 다음과 같이 분수 아래에 분수가 무한히 계속되는 형태 — 즉, 무한연분수의 형태로 표현되는 것이다 : $$ \sqrt{2}=1+\frac{1}{2+\frac{1}{2+\frac{1}{2+\frac{1}{2+\ddots}}}} $$

\( \sqrt{2} \)는 규칙없이 무한히 계속되는 소수이므로 그 정확한 값은 아무도 모른다. 하지만 충분한 computing power와 시간이 있다면, 위 식을 통해 \( \sqrt{2} \)를 얼마든지 원하는 자리수만큼 계산 할 수 있다. 즉, 다음과 같이 한층 한층 더해가며 점점 더 정확한 \( \sqrt{2} \)의 값을 계산 할 수 있는 것이다 : $$ \begin{align*} 1+\frac{1}{2}&=1.5 \quad &&\to 1.5^2=2.25 \\ 1+\frac{1}{2+\frac{1}{2}} &=1.4 \quad &&\to 1.4^2=1.96 \\ 1+\frac{1}{2+\frac{1}{2+\frac{1}{2}}} &=1.41\dot{6} \quad &&\to (1.41\dot{6})^2=2.0069\dot{4} \\ 1+\frac{1}{2+\frac{1}{2+\frac{1}{2+\frac{1}{2}}}} &= 1.413\cdots \quad &&\to (1.413\cdots)^2 =1.9988\cdots \\ \end{align*} $$

여기엔 재미있는 성질이 하나 있다. 위 계산과정은 수열로 볼 수도 있는데, 이는 초항이 1이고 일반항이 \( x_{n+1} = 1+\frac{1}{1+x_n} \)인 수열의 두번째항부터 여섯번째 항까지에 해당한다. 이때 \( n\) 을 무한대로 보내면 일반항의 값이 2로 수렴하는 것이다.  그런데 여기서 \( -1 \)과 \( -\sqrt{2} \)를 제외한 어떤 실수를 초항으로 잡더라도 \( n \)이 무한대로 가면 일반항이 2로 수렴한다는 결과는 변하지 않는다. 예를들어, 초항을 10으로 하여 위 계산을 반복해보자  :  $$ \begin{align*} 1+\frac{1}{10}&=1.1 \quad &&\to 1.1^2=2.21 \\ 1+\frac{1}{2+\frac{1}{10}} &=1.\dot{4}7619\dot{0} \quad &&\to (1.\dot{4}7619\dot{0})^2=2.17\cdots \\ 1+\frac{1}{2+\frac{1}{2+\frac{1}{10}}} &=1.403\cdots \quad &&\to (1.403\cdots)^2=1.97\cdots \\ 1+\frac{1}{2+\frac{1}{2+\frac{1}{2+\frac{1}{10}}}} &= 1.416 \quad &&\to (1.416\cdots)^2 =2.005\cdots \\ \end{align*} $$

의문이 든다면 위 수열을 더 계산해서 그 값이 \( \sqrt{2} \)에 점점 더 가까워 지는지, 다른 실수에 대해서도 같은 결과가 나오는지 확인해보자.

이에대한 증명은 독자여러분의 몫으로 남겨놓도록 하겠다4.


드는 생각 :

그것이 규칙없이 무한히 계속되는 소수라는건, \( \sqrt{2} \)에 관한 가장 대표적인 수학적 성질이다. 하지만 사람들은 거의 모든 경우에 그것을 유리수처럼 사용한다. 아주 거친 계산을 할때면 그것을 1.41정도로 놓고 계산해도 별 문제가 없다. 파이썬에서 가장 많이 쓰이는 연산 라이브러리 numpy에서도, 보다 높은 정확도로 사용한다는 별도의 명령이 없다면 그값을 소수점아래 16자리 유리수로 출력한다 :

‘\( \sqrt{2} \)의 정확한 값’이라는 건 무한한 계산이 필요한 작업이고, 그건 슈퍼컴퓨터로 우주끝날까지 계산해도 불가능하다. 하지만 실용적인 측면에서는 위와 같이 써도 아무런 문제가 없다 — 소숫점 16자리 정도로 원하는 결과를 얻기에 충분하다면, 그것이 이론적으로는 완전히 정확하지 않더라도 실질적으로는 아무 문제가 없는것이다.

그렇다면 이런 질문이 든다 — ‘과연 우리는 실제 자연현상 속에서 무리수를 측정 할 수 있는가? 또, 실제 자연현상을 위해 과연 무리수가 필요한가?’ 무리수는 수없이 많은 이론적 분석에 등장한다. 예를들어 양자역학에서 유명한 ‘fine-structure constant’ 𝛼의 수학적 표현 (\( \frac{e^2}{4\pi\epsilon_0\hbar c} \)) 속엔 무리수 \( \pi \)가 있다. 그리고 𝛼는 다른 물리상수들과 함께 계산되어 하나의 무리수로 존재한다. 하지만 𝛼의 측정값은 약 0.0072973525693으로, 이론값에 대해 소수점 13번째 자리까지 정확히 측정되었다. 이는 물리상수 𝛼 이면에 무리수가 있다는 실험적 증거이며 또한 현대물리의 위대한 승리이다. 하지만 — 그럼에도 불구하고 ‘측정된 𝛼’는 여전히 유리수이다. 

이런 지점에서 ‘시뮬레이션 우주론’에 대한 의문이 스멀스멀 기어올라온다. 무리수라는건 수학적으로는 분명히 존재하고, 위에서 본 \( \sqrt{2} \)의 경우처럼 십진수로 표현했을 때의 모든 자리수 값은 결코 알 수 없다 하더라도 우리는 그것의 정확한 수학적 구조를 안다. 하지만 실제 자연에 대한 측정에 있어서 그것은 언제나 유리수 이다. 또한 – 만약 자연현상이 무리수에 대한 적당한 근사값으로도 충분히 simulation 된다면, 실제 자연현상 이면에 그런 근사값이 있을 수도 있지 않을까? 이 세상이 유한한 computing power로 시뮬레이션된 결과라는 가정은 한편으로는 음모론 같고, 또 얼마든지 자기만의 음모론으로 승화시킬 수도 있는 주제이지만, 다른 한편으로는 자연에 대한 진지한 관찰과 고민 속에서도 완전히 제거 할 수 없는 가설이기도 하다.


 

  1. 노가다로 계산하는 것이 아닌 일관된 규칙으로 \(\sqrt{2}\)를 계산하는 방법을 말한다.[^]
  2. 나는 관련한 중고등교과과정 내용을 다시 찾아봤는데, 정규 교과과정에서 \(\sqrt{2}\)가 처음 나오는 때는 중학교 3학년 1학기 ‘실수와 그 연산’을 배우면서 이다. 이때 무리수 개념을 처음 접하게 되는데, 여기서는 ‘두번 곱해서 2가 되는 수’라는 \(\sqrt{2}\)의 정의와 그것이 순환하지 않는 소수인 ‘무리수’라는 사실, 그리고 그 값이 대략 1.41 정도 — 1.41×1.41 = 1.9881 ≃2 — 라는 결과 정도를 배운다. 고등학교에선 \(\sqrt{2}\)와 관련한 보다 심오한 사실을 증명하게 되는데, 고1 공통수학 ‘집합과 명제’ 단원에선 ‘귀류법’을 통해 그것이 분모 분자를 정수로 하는 유리수 형태로 나타낼 수 없다는 사실을 증명한다. 하지만 이것또한 \( \sqrt{2} \)의 주요성질에 대한 증명이지, 그 값을 계산하는 방법과는 별 관련이 없는 내용이다.

    참고로, 귀류법은 어떤 수학적 명제의 참/거짓을 판별하는 매우 강력한 방법인데, \( \sqrt{2} \)에대한 ‘무리성’ 증명은 역사적으로 귀류법이 가장 먼저 사용된 사례 중 하나로 알려져 있다. 이런 역사적 맥락과 함께 가르치면 그 내용이 훨씬 더 재미있고 풍부하고 와닿을텐데, 내가 아는 ‘학교수업’은 그것을 정말 재미없고 지루하고 의미없는 것으로 만들어 버린다.[^]

  3. 자기자신 속에 자기자신이 반복되는 – 달리 표현하자면 부분 속에 전체가 들어있는 기하학적 형태를 ‘프랙탈’이라 한다. 우리가 구한 \( \sqrt{2} \) 공식은 프랙탈 구조를 가진 수식인 것이다.[^]
  4. 힌트 : \( x = 1+\frac{1}{1+x} \)를 만족하는 \( x \)의 값을 구한다는 것은 그래프 상에서 보자면 \( y=x \)와 \( y=1+\frac{1}{1+x} \) 교점의 \( x \) 좌표를 찾는 것이다. 이는 ‘cobweb plot’이라는 불리는 방법을 통해 가능한데, 필자는 이 방법을 ‘파워타워함수’의 그래프를 그리는데 사용 한 바 있으니 참조하시기 바란다. (참고로, 우리는 어떤 임의의 이차방정식이라도 근의 공식을 이용하면 풀 수 있다고 생각하지만, 이는 그 근의 수학적 형태를 구하는 것이지 그것이 10진법으로 표현되는 정확한 값을 구한다는 걸 의미하진 않는다. 만약 무리수로 표현되는 어떤 이차방정식의 근을 소수점 1,000번째 자리까지 구해야 한다면, 이때는 위와 같은 방법을 사용해서 수치적으로 계산해야 한다.[^]
Subscribe
Notify of
guest
0 Comments
Oldest
Newest Most Voted
Inline Feedbacks
View all comments