수학 채널

고등학교 수학 문제 중 극한값을 구하는 문제를 풀 때, 가끔 테일러 전개를 사용하면 쉽게 풀리는 경우가 꽤 많다. 이 방법은 사실 수능에서도 통하는 방법이고, 대학교 과정의 수학이 수능에 응용될 수 있는 강력한 방법 중 하나이다. 

테일러 전개 급수라는 표현은, 테일러 전개가 급수(덧셈) 형태로 나타나고, 종종 무한 급수로 표현하는데서 나온 표현일 것이다. 


(그리고 고교 수준에서 테일러 전개가 가능한 모든 함수에 대해 이렇게 극한값을 구하는 건 거의 유효하다. 이걸 못 쓰게 하고 싶으면, 미분이 불가능하게 하거나 e^(-1/x^2) 같은 이상한 함수를 가져오거나 미분한 형태를 쉽게 유추할 수 없게 해야 한다.)


이렇게 테일러 전개를 했을 때 극한값을 쉽게 구할  수 있는 이유는, 

테일러 전개라는 것이, 미분가능한 함수를 특정 구간에서 다항함수로 근사시키는 것이기 때문이다. 

그리고 다항함수에서 극한값을 구하는 것은 상당히 쉽다. 



그러면 테일러 전개에 대해 간단하게 소개해 보겠다. 


테일러 전개를 하기 위해서는, 다음의 사항이 필요하다. 

1. 어떤 함수를 테일러 전개할 것인가

2. 그 함수를 어디에서 테일러 전개할 것인가.


간단한 표기를 위해, f(x)를 x에 대해 1번 미분한 것을 f_1(x), n번 미분한 것을 f_n(x)라고 하겠다.  그리고 f_0(x)=f(x)이다. 그리고 f를 무한 번 미분 가능한 실수에서 실수로 가는 함수라고 하자.  그리고 a를 실수라고 하자. 

그러면, 함수 f의 x=a에서의 테일러 전개는 다음과 같다. 

g(x)=(k=0에서 무한까지)∑(x-a)^k / k! f_k(a)=f(a)+(x-a)*f_1(a)+(x-a)^2*f_2(a)/2+(x-a)^3*f_3(a)/6+(x-a)^4*f_4(a)+......

보면 알겠지만, g(a)=f(a)가 언제나 성립한다. 게다가, g_n(a)=f_n(a)도 자연스럽게 성립한다. (실제로 해 보면 알 수 있다.)

따라서 lim (x->a) f(x)/(x-a) =lim (x->a) g(x)/(x-a)가 성립한다는 것도 알 수 있다. 그래서, 그냥 두 함수 A(x), B(x)에 대해, lim (x->a) A(x)/B(x)를 구하라고 하면, A(x)와 B(x)의 x=a에서의 테일러 전개한 함수 A_t(x)와 B_t(x)를 구한 뒤에, lim(x->a) A_t(x)/B_t(x)를 구해주면 된다. 

또 저 g(x)에서 1차항까지만 계산하면, f(a)+(x-a)f_1(a)가 된다. 즉, x=a에서 f(x)를 1차 함수로 근사해 준 형태가 나온다. 

f(x)를 x=a에서 n차 함수로 근사시켜 주려면, 저 g(x)에서 n차항까지만 계산해 주면 된다. 


그러면, 다른 실수 x 값에서도 g(x)=f(x)가 성립할까? 언제나 그렇지는 않다. (심지어 저 g(x)가 다른 실수 x에서는 수렴하지 않을 수도 있다.) 그럼에도 고등학교 때 유용한 이유는....


고등학교 때 배우는 삼각함수와 지수함수, 다항함수, 로그함수는 g(x)=f(x)가 모든 실수 x에 대해 성립한다. 

그리고 꼭 전체 정의역은 아니더라도 a를 원소로 갖는 어떤 구간 [c, d] (이때, c가 d보다 작아야 함.)에서 g(x)=f(x)가 성립하는 함수를 analytic function(해석적 함수)라고 한다. 나름 중요한 개념이다. 

(게다가 복소해석학으로 가면, 대충 복소함수에서의 미분 가능=analytic function 이다. 와! 대단하다!)



예시)

1. f(x)=x^3+x^2+x+1을 x=1에서 테일러 전개해 보자. 

그러면, f(1)=4, f_1(1)=6, f_2(1)=8, f_3(1)=6,  f_4(1)=f_5(1)=....=0  

따라서, 테일러 전개한 함수 

g(x)=f(1)+f(1)(x-1)+f_2(1)(x-1)^2/2+f_3(1)(x-1)^3/6

=4+6(x-1)+4(x-1)^2+(x-1)^3


이 g(x)를 실제로 전개해 보면, g(x)=x^3+x^2+x+1이 나온다. 


정 전개하기 귀찮은데 저 등식이 성립하는 걸 확인하고 싶으면, 삼차 이하의 다항식은 4점에 의해 유일하게 결정된다는 점을 이용하면 된다. g(-1)=0=f(-1), g(0)=1=f(0), g(1)=4=f(1), g(2)=15=f(2)이 되고, g(x)와 f(x)는 삼차 이하의 다항식이므로 g(x)=f(x)이다. 


2. f(x)=1/(1-x)를 x=0에서 테일러 전개를 해 보자. 

그러면, f_1(x)=-1/(1-x)^2, f_2(x)=2/(1-x)^3, ... f_n(x)=n!/(1-x)^(n+1)

f_n(0)=n!이다. 

그러면, g(x)=1+x+x^2+x^3+....=(k=0에서 무한)∑x^k   (단, 0^0=1.) 이 된다. 


어, 이건 공비가 x인 무한 등비 급수다. 굳이 테일러 정리를 쓰지 않아도 -1과 1 사이의 x에 대해, 1+x+x^2+x^3+...=1/(1-x)이 성립하는 것을 알 수 있다. (등비 급수의 합 공식 이용)

그런데, x=1을 대입하면, g(1)은 정의가 되지 않는다. (무한으로 발산한다.) 

따라서, g(x)는 열린 구간 (-1, 1)에서만 f(x)=g(x)가 성립한다. 


3. f(x)=e^x을 x=0에서 테일러 전개해보자. 이때, f_n(x)=e^x이다.  (e^x은 몇 번을 x에 대해 미분해도 자기자신이다.)

즉, f_n(0)=1이다. 따라서 e^x을 x=0에서 테일러 전개한 함수 g(x)=1+x+x^2/2+x^3/6+....=(k=0에서 무한)∑x^k/k!   


(단, 0^0=1이라고 하자. 이게 불편하면, g(x)=1+(k=1에서 무한)∑x^k/k!  이라고 해 줘도 된다.  사실, 수학과에서는 이걸 e^x의 정의로 채택하기도 한다. 왜냐하면, 저 식에서는 x에 허수를 안전하게 대입할 수 있기 때문이다! 그리고 e=1+1/2+1/6+1/24+ .... 이라는 성질을 이용해 e가 무리수라는 것을 증명하기도 한다.)



4. f(x)=sin x의 x=0에서의 테일러 전개

미분해보면, sin x, cos x, -sin x, -cos x, sin x가 번갈아 가면서 나오는 것을 알 수 있다. (4번 미분하면 자기 자신이 된다.)그러면, 

f(0)=0, f_1(0)=1, f_2(0)=0, f_3(0)=-1,

f_4(0)=0, ....

그러면, 모든 양의 정수 k에 대해, f_(2k+1)(0)=(-1)^k이다. 


g(x)=x-x^3/6+x^5/120-x^7/7! +.... =(k=0에서 무한까지)∑f_k(0)x^k /k! =(k=0에서 무한까지)∑f_(2k+1)(0)x^(2k+1) /(2k+1)!

=(k=0에서 무한까지)∑(-1)^k*x^(2k+1) /(2k+1)!



5. f(x)=cos x의 x=0에서의 테일러 전개

이것도 미분해 보면, cos x, -sin x, -cos x, sin x, cos x로 4번 미분하면 자기 자신이 된다. 그리고

f(0)=1, f_1(0)=0, f_2(0)=-1, f_3(0)=0,

f_4(0)=1, ....

그러면, 모든 0 이상의 정수 k에 대해, f_(2k)(0)=(-1)^k이다.

이제 x=0에서의 테일러 전개한 함수를 계산해 보면,

g(x)=1-x^2/2+x^4/24+..... =(k=0에서 무한까지)∑f_k(0)x^k /k! =(k=0에서 무한까지)∑f_(2k)(0)x^(2k) /(2k)!

=(k=0에서 무한까지)∑(-1)^k*x^(2k) /(2k)!



여기서 잠깐, 예시 3, 4, 5를 함께 보자. 

그리고 3번의 e^x의 테일러 전개에 x 자리에 ix   (i는 허수.)를 대입해 보자. 그러면, 


e^(ix)=(k=0에서 무한)∑(ix)^k/k! =1+ix-x^2/2-ix^3/6+x^4/24+ix^5/120 -....

cos x=1-x^2/2+x^4/24+..... 


흥미롭게도 e^(ix)과 cos x 사이에는 공통부분이 존재한다. 한 번 빼보자.

그러면, e^(ix)-cos x=ix-ix^3/6+x^ -ix^5/120 ... =i (x-x^3/6+x^5/120....) 이 된다. 근데,

sin x= x-x^3/6+x^5/120-x^7/7! +.... 이다. 

신기하게도 i*sin x= e^(ix)-cos x 가 나왔다. 

이로써,  e^(ix)=cos x + i*sin x 라는 공학에서 상당히 중요한 드무아브루 정리를 증명했다!


(물론, 저런 연산들이 다 안전하게 가능하다, 즉, 다 수렴하면서 그 수렴값이 저 계산값과 같다는 것을 중간중간에 다 설명할 수 있어야 하는데, 실제로 모든 복소수 x에서 저 중간에 나오는 것들이 다 수렴하고 수렴값도 저 계산값으로 같다.)


6. 극한값 계산하기 lim (x->0)   x^3*(sin x)/ (cos (x^2)-1)의 극한값을 계산해 보자. 

테일러 전개에 의하면, sin x는 대충 x=0 부근에서 x-x^3/6+x^5/120 ... 이고, cos (x)=1-x^2/2+x^4/24 ....이다.

그러면, x^3*sin x=x^4-x^6/6+x^8/120 ...   

cos(x^2)=1-x^4/2+x^8/24 ....

cos(x^2)-1=-x^4/2+x^8/24 ....

그러면, lim(x->0) (x^4-x^6/6+x^8/120 ...   .)/(-x^4/2+x^8/24 ....)= -1/2이 된다. 



이제 테일러 전개에 대해 대충 어떤 식으로 돌아가는지를 알았을 것이다. 


이제, 이러한 테일러 전개의 이론적 뒷받침이 되는 테일러 정리에 대해 알아 보자. (글 수준이 너무 올라갈 수 있으므로, 증명은 생략한다. 

테일러 정리의 정확한 내용은 다음과 같다.

"""

두 실수 a, b에 대해, a를 b보다 작은 실수라고 하고, f를 [a, b]에서 실수로 가는 함수라고 하자.  ([a, b]는 a 이상 b 이하의 실수를 모두 원소로 갖는 집합이다.)

그리고 [a, b]의 원소 중 하나를 z라고 하고, 함수 f가 z에서 n번 미분가능하다고 해 보자. (n은 양의 정수이다.) 그리고 t를 (a, b)의 원소라고 하자. (즉, t는 a보다 크고 b보다 작음.)  그리고, A와 B를 [a, b]의 서로 다른 두 원소라고 하자. 그리고 

P(t)=f(A)+f_1(A)(x-A)+f_2(A)(x-A)^2/2+...=(k=0에서 n-1까지)∑f_n(A)(x-A)^k /k!  이라고 하자. 그러면, 

A와 B 사이에, 다음의 등식을 만족하는 실수 c가 존재한다. 


f(B)=P(B)+f_n(c) (B-A)^n /n! 

"""

(증명은 보조 함수 만든 뒤에 평균값 정리 쓰면 돼서 그렇게 길진 않지만 생략하겠습니다. 혹시 궁금하면 질문해 주세요.)


이 정리가 어떻게 테일러 전개의 뒷받침이 되는지?

저 마지막 등식은 대충 함수 P(t)가 x=A에서 함수 f를 n차 다항식으로 근사할 수 있다는 것을 알려준다. 

f(B)=P(B)+f_n(c) (B-A)^n /n!을 잘 정리하면   n!*(f(B)-P(B))/(B-A)^n=f_n(c)이다. 그러면, B를 A로 극한을 보내주게 되면, c는 A로 갈 것이고, f_n이 점 A에서 연속이라면,  lim(B->A) n!*(f(B)-P(B))/(B-A)^n =f_n(A) 로 수렴하게 된다. 이것이 모든 자연수 n에 대해 성립한다는 것을 알면 된다. (여기서 analytic의 여부까지 알고 싶다면, 증명 과정을 좀 더 자세히 들여다 보는 게 좋다. 근데, 증명 과정은 생략했다.)


(아마 대학교 미적분학이나 해석학을 수강한 사람 아니면 테일러 정리의 내용을 한 번에 알아듣기 힘들 것이다. 근데, 알고 싶은데 모르겠으면 질문하면 된다.)




P.S) (사실상 이 글을 작성하게 된 계기)


함수 f를 실수에서 실수로 가는 함수, f(x)=(1+x)^n  (단, n은 양의 실수)라고 하자. 


그리고 f를 x=0에서 테일러 전개를 해 보자. 

그러면, 

f(0)=1

f_1(x)=n(1+x)^n-1, f_1(0)=n

f_2(x)=n(n-1)x^(n-2), f_2(0)=n(n-1)

f_3(0)=n(n-1)(n-2)

f_4(0)=n(n-1)(n-2)(n-3)

.

.

.

이다. 

여기서 n이 양의 정수라면, 저 값들은 어느 순간부터 계속 0이 된다. 그리고 이항 정리를 쓰면, (1+x)^n=(k=0에서 n까지)∑nCk x^k 이 된다는 것을 알 수 있다. 

근데, n이 양의 정수가 아닌 실수라면 어떻게 될까? 저 f_n(0)의 값들이 계속 0이 아니게 된다. 

여기서 어떤 사람은 (머리 아프다. 내가 이런 걸 왜 해야 돼?) 라고 생각했을 수도 있다. 

그리고 어떤 사람은 저 n이 양의 정수일 때만 정의되었던 이항 정리 nCk를 n이 양의 실수일 때도 정의되게 정의를 확장할 수 있을 것이다! 라는 생각을 했을 수도 있다. 


즉, (1+x)^n을 테일러 전개한 뒤에, 각 항의 계수를 nCk로 보겠다는 것이다. (k는 0 이상의 정수)


그러면, (1+x)^n=(k=0에서 무한까지)∑nCk x^k  라고 할 수 있고, nCk=n(n-1)(n-2)*...*(n-k+1)/k!   (단, nC0=1) 라고 nCk를 정의하겠다는 것이다. (nC1=n, nC2=n(n-1)/2!, nC3=n(n-1)(n-2)/6  이다.)

물론, 적어도 (1+x)^n의 테일러 전개한 함수 g(x)가 x=0을 포함하는 어떤 구간에서 f(x)와 같은 값을 가져야 할 것이다. 즉, analytic해야 한다는 것이다. (그렇지 않으면 근삿값으로서의 가치가 작다. 

그리고 다행히도 x의 절댓값이 1보다 작을 때,, (1+x)^n=(k=0에서 무한까지)∑nCk x^k 가 성립한다. 


그러면, 이제 f(x)=√(1+x)=(1+x)^1/2를 x=0에서 테일러 전개를 해 보자. 

그러면, 

f(0)=1, f_1(0)=1/2, f_2(0)=-1/4, f_3(0)=3/8....

따라서 g(x)=1+x/2-x^2/8+x^3/16-5x^4/128+.... 이 된다. 


즉, lim (x->0) (√(1+x) -1)/(1+x/2 -1)=1이 된다. 

 lim (x->0) (√(1+x) -1-2/x)/x^2=1/8이 된다. 

이러한 √(1+x)의 근사는 x의 값이 작을수록 근사할 가치가 커진다. 

즉, x가 0으로부터 멀어지면, 저런 식의 테일러 전개에서 1차항, 2차항까지만 해서 근사한 것의 가치가 작아진다는 것이다. 

하지만, 그렇다고 해도 무한 급수 그대로 계산하면, -1보다 1 사이의 모든 x에 대해서 g(x)=f(x)이니, x의 값이 0에서 좀 멀어진다 싶으면 테일러 전개에서 더 많은 항을 가져와서 근사해 주면 되긴 한다. 



궁금한 거나 틀린 거 있으면 말씀해 주세요.