2010년 11월 18일 목요일

CListCtrl과 CTreeCtrl에서 한글이 깨진다면?

이전에 잘 출력이 되던 한글이 CListCtrl과 CTreeCtrl에서 갑자기 깨진다면 한글을 쓰는 문자열 집합이 "MS Sans Serif" 등과 같은 영문전용 폰트인지 확인하라. 한글이 깨지면 문자열 집합을 "굴림", "바탕", "고딕"과 같은 한글 폰트로 반드시 바꾸어야 한다.

2010년 11월 2일 화요일

조화 급수(Harmonic Series)와 오일러–마스케로니 상수(Euler–Mascheroni Constant)

[경고] 아래 글을 읽지 않고 "조화 급수와 오일러마스케로니 상수"를 보면 바보로 느껴질 수 있습니다.
1. 무한 급수
2. 테일러 급수
3. 이항 정리


조화 급수(調和級數, harmonic series)는 아래처럼 표현되는 급수이다.

                           (1)

이름에서도 알 수 있듯이 조화 급수는 음악과 밀접한 연관을 가지고 있다.

[그림 1] 고조파의 생성 모습(출처: wikipedia.org)

[그림 1]과 같이 현악기에 힘을 가하면 고조파(高調波, harmonics)가 생성된다. 이 고조파는 우리가 듣기에 아름다운 소리이다. 고조파를 물리적으로 표현하면 기본 주파수(fundamental frequency)의 정수배가 되는 주파수이다. 이를 파장 관점으로 쓰면 [그림 1]과 같이 분수로 표현되는 관계를 얻을 수 있다. [그림 1]처럼 기본 주파수의 분수로 표현되는 모두 모은 수를 조화 급수로 정의한다.
조화 급수에서 더하는 항의 수를 무한대로 가져가면 어떻게 될까? $N \to \infty$로 가더라도 수열은 $1/N \to 0$에 수렴하므로 무한 급수(infinite series)는 수렴할 수도 있다. 하지만 결과는 극적이다. 우리 상식과는 다르게 아래의 무한 급수는 놀랍도록 느리게 발산한다.

                          (2)

식 (2)가 발산함은 여러 가지 방법으로 증명할 수 있다.

[증명: 비교 판정(comparison test)]
무한 급수의 수렴 판정법 중에서 비교 판정을 이용하면 손쉽게 식 (2)가 발산함을 증명할 수 있다.

                          (3)
______________________________

위의 증명법은 이미 오렘Nicole Oresme(1325–1382) 주교가 1350년대오렘 25세 무렵, 고려 공민왕 시절에, 지금으로부터 약 700년전에 제시하였다. 참 놀랄만한 일이지만, 기본 출발점은 매우 간단하다. 자연수 $n+1$과 $2n$ 사이에는 $n$개의 자연수가 있고, 이를 역수해서 합산한 값은 $n/(2n)$ = $1/2$보다 항상 크다. 따라서 이러한 묶음은 무한히 있기 때문에 조화 급수는 반드시 발산한다.

[증명: 발산 급수의 성질]
식 (2)의 무한 급수를 아래와 같이 분해해 보자.

                         (4)

식 (4)의 최종식을 보면 처음 시작한 식과 동일하다. 하지만 부등호가 있으므로 서로 같을 수 없고 서로 달라야 한다. 결국 식 (4)는 발산해야 논리가 맞다.
______________________________

발산 수열에는 식 (4)와 같이 우리 상식으로는 이해할 수 없는 성질이 출현한다. 여기서 우리가 기억할 부분은 무한대는 수가 아니고 값이 증가해가는 상태임이다. 수렴하지 않고 끝없이 증가하기 때문에 식 (4)와 같은 기묘한 특성이 얻어진다.
식 (4)를 수학적으로 생각해보자. 식 (4)가 성립하면 해당 수열은 절대 수렴하지 않는다. 절대 수렴하지 않으므로 당연히 유계도 되지 않는다. 하지만, 조화 급수는 양수를 계속 더하고 있으므로 단조 증가하고 있다. 즉, 단조 증가하면서 유계가 되지 않으므로 필연적으로 발산해야 한다.

[증명: 이항 정리]
재미있는 이항 정리(binomial theorem)를 아래처럼 고려하자.

                         (5)

식 (5)는 이항 정리의 성질에 의해 $|x| < 1$인 경우에만 성립한다. 다시 식 (5)를 적분해 보자.

                        (6a)

                        (6b)

여기서 $\log(x)$는 자연 로그(natural logarithm)이다. 식 (6)에 대해 $x \to 1$로 가는 극한을 취하자. 그러면 식 (6)의 우변은 식 (2)가 되고 식 (6)의 좌변은 무한대로 발산한다. 따라서, 식 (2)는 발산한다.
______________________________

자연 로그가 나오는 식 (6)과 같은 무한 급수는 발견자 이름을 따서 뉴턴–메르카토르 급수(Newton–Mercator series)라 명한다. 뉴턴Isaac Newton(1643–1727)과 독립적으로 1668년메르카토르 48세, 조선 현종 시절에 이 급수를 발표한 메르카토르Nicholas Mercator(1620–1687)는 지도 제작에 쓰이는 메르카토르 투영(Mercator projection)을 만든 메르카토르Gerardus Mercator(1512–1594)와는 동명이인이다. 급수 발견자답게 메르카토르는 자신의 책에 자연 로그라는 명칭을 처음 사용했다.
수렴에 대한 고찰이 없었어도 무한 급수(infinite series)를 오류 없이 자유자재로 썼던 오일러Leonhard Euler(1707–1783)의 원초적인 증명도 살펴본다.

[오일러의 증명]
식 (5)에 있는 이항 정리를 이용하면 아래가 성립한다.

                         (7)
______________________________

[그림 2] 오일러–마스케로니 상수의 의미(출처: wikipedia.org)

식 (6)의 결과로 인해 조화 급수의 발산값은 점근적으로 로그 함수(logarithm function)의 특성을 따른다. 식 (8)을 보면 분명하다.

                         (8)

식 (6)과 (8)을 이용하여 오일러–마스케로니 상수(Euler-Mascheroni constant)를 아래와 같이 정의할 수 있다.

                          (9)

오일러–마스케로니 상수의 의미는 [그림 2]에서 드러난다. 파란색의 높이는 조화 급수의 항($1/n$)을 나타내고 보라색은 함수 $1/x$(이 함수의 면적이 로그 함수)를 표현한다. 이 둘의 차이인 파란색의 합이 오일러–마스케로니 상수가 된다. 오일러–마스케로니 상수를 그리스 문자 $\gamma$(감마, gamma)로 쓰는 이유는 이 상수가 감마 함수(gamma function)의 미분과 밀접한 관계를 가지기 때문이다. 식 (9)로 정의된 오일러–마스케로니 상수 $\gamma$를 어림해 보자. 먼저 로그 함수의 미분 공식을 이용하여 정적분을 계산하자.

                         (10)

정적분의 특성에 의해 식 (10)으로 표현된 적분은 아래와 같은 한계를 가진다. 쉽게 생각하려면 [그림 2]를 참고하자.

                         (11)

식 (11)의 부등식은 $1/x$ 함수가 단조 감소한다는 성질을 이용하면 쉽게 얻을 수 있다. 식 (11)을 식 (1)의 조화 급수 관점에서 쓰고 정리하면 아래를 얻을 수 있다.

                         (12)

식 (12)의 증명처럼 모든 $n$에 대해 $H_n - \log n$은 항상 양수이다. 즉, 조화 급수는 로그 함수보다 항상 크다. 하지만 그 차이는 1보다는 작은 범위에 있다. 다음으로 $n \to \infty$로 가는 극한을 취하면 오일러–마스케로니 상수 $\gamma$의 한계를 얻을 수 있다.

                         (13)

이 상수가 수렴함을 최종적으로 증명하려면 $H_n - \log n$이 단조 증가하거나 단조 감소해야 한다. 증감 특성을 얻기 위해 아래 식을 고려하자.

                         (14)

식 (14)로부터 $H_n - \log n$은 $n$이 커짐에 따라 단조 감소한다. 따라서 오일러–마스케로니 상수 $\gamma$는 유계이며 단조 감소하므로 수렴한다. 오일러–마스케로니 상수의 정확한 값은 아래와 같다[1].

$\gamma$ = 0.57721566490153286060651209008240243104215933593992...

조화 급수와 로그 함수로 정의할 수 있는 쉬워 보이는 상수인 $\gamma$는 절대 만만하지 않다. 예를 들어, 현재까지 $\gamma$가 무리수인지 유리수인지 증명되지 않고 있다. 딱 봐도 $\gamma$는 무리수처럼 보이지만, 증명하지 못하면 단정할 수 없고 모른다고 해야 한다.

오일러–마스케로니 상수는 아래와 같은 다양한 방식으로 정의해서 사용할 수 있다.


   1. 상수 표현식(constanst representation)   

[베르누이 수(Bernoulli number)]

                          (1.1)

여기서 $B_m$은 제$m$번 베르누이 수(Bernoulli number)이다.

[증명]
무한 급수 계산에 매우 유용한 오일러–매클로린 공식(Euler–Maclaurin formula)에서 시작하자. 식 (10)에 기반하여 $f(x) = 1/x$라 놓고 오일러–매클로린 공식을 적용하면 다음과 같다.

                         (1.2)

다음으로 함수 $f(x)$의 $m$번 미분식을 구한다.

                         (1.3)

식 (1.3)을 식 (1.2)에 대입해서 오일러–마스케로니 상수 형태로 만든다.

                         (1.4)

식 (1.4)에서 $n$을 무한대로 보내면 식 (1.1)을 얻을 수 있다.
______________________________

식 (1.1)을 실제 계산에 적용할 때는 주의할 점이 있다. 지표 $m$이 커지면 베르누이 수는 발산하기 때문에, 식 (1.1)에 있는 무한 급수의 부분 합은 수렴하지 않고 진동하면서 발산한다. 따라서 식 (1.1)의 우변은 수렴하지 않으므로 오일러–마스케로니 상수에 대한 적절한 표현식이 아니다. 이로 인해 식 (1.1)은 무한 급수 대신 적절한 유한 합을 이용해 계산한다. 예를 들어 다음처럼 오일러–마스케로니 상수를 어림할 수 있다.

                         (1.5)

[다이감마 함수(digamma function)]

                         (1.6)

[증명]
다이감마 함수를 이용하면 오일러–마스케로니 상수를 적분형으로 다음처럼 표현할 수 있다.

                         (1.7)
______________________________

식 (1.7)에 부분 적분(部分積分, integration by parts)을 적용하면 다음 극한을 오일러–마스케로니 상수로 정의할 수 있다.

                          (1.8)

여기서 $E_1(x)$는 지수 적분(exponential integral)이다.


[참고문헌]

2010년 10월 28일 목요일

아름다운 숫자, 오일러의 수(Euler's Number)

[경고] 아래 글을 읽지 않고 "오일러의 수"를 보면 바보로 느껴질 수 있습니다.
1. 무한 급수
2. 미분법의 의미
3. 극한과 연속성의 의미
4. 테일러 급수

Animation of the log function, thinked as the ...[그림 1] 지수 함수와 로그 함수(출처: Wikipedia)

미분학을 배울 때 빼놓을 수 없는 부분이 지수 함수(exponential function)의 미분이다. 지수 함수는 아래 성질을 가진 함수이다.

                            (1)

식 (1)은 곱셈을 덧셈 관점으로 풀 수 있음을 보여준다. 이 성질이 지수 함수의 역함수(逆函數, inverse function)로그 함수(logarithmic function)의 가장 중요한 성질이 된다. 지수 함수와 비슷하지만 약간 다른 멱함수(羃函數, power function)도 있다. 독립 변수 $x$가 지수(指數, exponent)인 지수 함수는 $a^x$로 표기하고, 지수는 고정되고 밑수(base)가 독립적으로 바뀌는 멱함수는 $x^r$로 쓴다. 식 (1)을 이용해서 지수 함수의 미분 공식을 곧바로 얻을 수 있다.

                            (2)

식 (2)의 우변에 있는 극한이 1이 되면 지수 함수 $a^x$는 미분을 하더라도 함수가 변하지 않고 자기 자신이 된다. 여기서 이런 관계를 만족하는 수를 식 (3)과 같이 $e$라고 한다. 구체적으로 숫자 $e$는 오일러의 수(Euler's number) 혹은 네이피어의 상수(Napier's constant)라 한다. 엄밀성을 약간 포기하면서, 식 (2)를 이용해 $e$를 좀 거칠게 정의한다.

                             (3a)

                            (3b)

                  (3c)

여기서 $0^+$와 $0^-$는 각각 매우 작은 양수와 음수의 극한을 뜻한다. 극한(limit) 관점으로 더 깊게 들어가면, 식 (3a)와 (3b)는 좌극한과 우극한이 동일함을 표현한다. 이 성질은 식 (10)을 이용해 증명할 수 있다.
오일러Leonhard Euler(1707–1783)가 1727년오일러 20세, 조선 영조 시절에 식 (3)의 극한을 적극적으로 사용했기 때문에, 오일러 이름의 첫자를 이용해 $e$로 표기한다[2]. 혹은 겸손한 오일러가 자신을 표현하려고 $e$를 썼을 리는 없고, 모음 알파벳을 상수로 쓰던 오일러가 $a$ 다음의 모음으로 $e$를 선택했다는 의견도 있다[7]. 오일러가 쓴 $e$에 대한 표현식이 유명하지만 $e$의 최초 발견자는 야곱 베르누이Jacob Bernoulli(1655–1705)이다. 베르누이는 1683년베르누이 28세, 조선 숙종 시절에 식 (3)과 같은 극한을 고민했다. 식 (3)의 정의에서 $e$는 수렴한다고 가정한다. 물론 진짜 수렴하는지는 반드시 증명해야 한다. 따라서 식 (3)에서 중요한 부분은 $e$로 표현된 극한의 계산이다. 숫자 $e$의 극한을 실제로 구하려 해보면 식 (3)의 정의는 너무 복잡하다. 그래서 다음처럼 식 (3)을 그대로 따라가면서도 계산이 편리한 방법을 찾아야 한다.

[무한 급수(infinite series)로 표현한 오일러의 수]

                             (4)

[증명: 테일러 급수]
식 (5)에 있는 테일러 급수(Taylor series)를 이용하면 식 (4)를 쉽게 증명할 수 있다.

              (5)

지수 함수 $e^x$는 미분해도 $e^x$이므로 식 (5)에서 $a$ = $0$으로 놓고 테일러 급수 전개를 하면

                         (6)

식 (6)에서 $x$ = $1$이라 두면 식 (4)가 증명된다.

[증명: 이항 정리]
식 (7)의 이항 정리(二項定理, binomial theorem)를 이용해서도 식 (4)를 증명할 수 있다.

             (7)

식 (7)에서 $r$ = $n$, $x$ = $1/n$이라 두면 식 (7)을 이용해 식 (3)을 급수 전개할 수 있다.

              (8)
______________________________

다음으로 중요한 부분은 무한 급수로 표현된 식 (4)의 수렴성이다. 먼저 식 (4)가 유계(有界, bounded)임을 증명한다. 항대항(項對項, term by term)으로 보면 아래 부등식이 항상 성립한다.

              (9)

식 (9)의 유도에는 무한 등비 급수(infinite geometric series)를 이용한다. 또한 무한 급수인 식 (4)는 양수를 계속 더해가고 있으므로, $n$이 커짐에 따라 부분 합은 단조 증가한다. 따라서 단조 증가하면서 유계인 오일러의 수 $e$는 분명히 수렴한다. 오일러의 수 $e$를 어림짐작하면 대충 $2.5 < e < 3$에 있으며 정확한 값은 아래와 같다[1].

   $e$ = 2.7182818284590452353602874713526624977572...

식 (3a)에서 $n$이 음의 무한대로 가는 극한은 식 (3b)이다. 이 극한은 다음처럼 표현할 수 있다.

                        (10)

식 (10)에 의해 $n$이 양 혹은 음의 무한대로 가더라도 극한은 항상 오일러의 수가 된다. 식 (10)의 증명에는 보통 뉴턴의 이항 정리(Newton's binomial theorem)를 이용한다.
식 (1)의 지수 함수 정의를 로그로 표현하면 로그 함수(logarithmic function)를 새롭게 정의할 수 있다. 지수 함수를 이용해 로그 함수를 정의하면 이해가 참 쉽다. 이런 순서를 제안한 수학자는 오일러이다. 역사적으로 보면 1614년네이피어 61세, 조선 광해군 시절에 네이피어John Napier(1550–1617)가 기하학적 상상을 바탕으로 로그를 제안하고 이후 1745년오일러 38세, 조선 영조 시절에 오일러가 지수 함수를 기반으로 로그 함수를 재정의했다[5], [6].[오일러 이전에도 지수와 로그 함수의 관계를 고민한 수학자는 있었지만 가장 세련되게 이론을 전개한 오일러의 기여가 상당히 크다.]

                        (11)

식 (1)과 (11)을 이용하면 곱셈을 덧셈으로 변환할 수 있는 로그의 성질이 증명된다.

                        (12)

만약 $a$ = $e$인 경우는 자연 로그(natural logarithm)라 하고 밑수(base) $e$는 생략한다. 현재까지의 중요 개념을 로그 함수의 미분에 적용한다.

             (13)

여기서 $\log(x)$는 $x$에 대한 자연 로그이다. 식 (1)과 (12)는 너무나 유명해서 학생에게는 외워야 되는 대상이 되는 경우가 많다. 하지만 로그 함수의 개념은 세상을 바꾸었다. 컴퓨터가 없던 시절에 복잡한 곱셈, 나눗셈, 제곱근 계산을 도와준 너무나 고마운 개념이다. 대부분의 수학 역사가는 로그의 발명에 미적분 발명과 동등한 중요성을 부여한다. 로그의 역사를 공부해 보면 이 말을 이해할 수 있다. 입시에 바빠 인류 역사를 새롭게 써내려간 로그 함수의 참맛을 모르고 지나가는 대한민국의 고등학생은 참으로 불쌍하다.

[그림 2] 파스칼의 삼각형(출처: wikipedia.org)

오일러의 수를 만드는 재미있는 예는 여러 가지가 있다. 그 중에 최근에 나온 결과를 보면, [그림 2]와 같은 파스칼의 삼각형(Pascal's triangle)을 이용하기도 한다[3], [4]. 아래에 오일러의 수를 만들 수 있는 다양한 방법을 소개한다.


   1. 극한 표현식(limit representation)   

[파스칼의 삼각형]
파스칼의 삼각형에서 $n$번째 줄에 나온 수를 모두 곱하여 $p_n$이라 하면, 다음 결과는 오일러의 수가 된다.

                         (1.1)

[증명]
식 (1.1)의 증명을 위해 [그림 2]의 파스칼 삼각형을 다음처럼 조합(combination)으로 표현한다[4].

[그림 1.1] 조합으로 표현한 파스칼의 삼각형(출처: wikipedia.org) 

                        (1.2)

식 (1.2)를 이용해 $p_{n+1}$과 $p_n$의 비율을 구한다.

                 (1.3)

식 (1.3)을 식 (1.1)처럼 배치하면 다음을 얻는다.

                        (1.4)

식 (1.4)의 최종 결과식은 식 (3a)의 마지막 항과 동일하다. 따라서 $n$을 무한대로 보내면 최종 결과는 오일러의 수가 된다.
______________________________


[참고문헌]
[1] N. J. A. Sloane, "A001113: decimal expansion of e," The On-Line Encyclopedia of Integer Sequences. (방문일 2011-02-06)
[3] H. J. Brothers, "Finding e in Pascal’s triangle," Mathematics Magazine, vol. 85, no. 1, p. 51, Feb. 2012.
[4] A. Bogomolny, "e in the Pascal triangle," Interactive Mathematics Miscellany and Puzzles.
[5] F. Cajori, "History of the exponential and logarithmic concepts," The American Mathematical Monthly, vol. 20, no. 2, pp. 35–47, Feb. 1913.
[6] D. Bal, "Leibniz, Bernoulli and the logarithms of negative numbers," Montclair State University. (방문일 2019-10-16)
[7] 김성숙, "$e$의 역사적 기원과 의의", 한국수학사학회지, 제17권, 제3호, pp. 33–42, 2004년 8월.

[다음 읽을거리]
1. 조화 급수와 오일러-마스케로니 상수
2. 로그 함수의 기원
3. 감마 함수