점화식

수학에서 점화식(漸化式) 또는 재귀식(再歸式, 영어: recurrence relation)이란 수열에서 이웃하는 두개의 항 사이에 성립하는 관계를 나타낸 관계식이다. 즉, 수열 { a n } {\displaystyle \{a_{n}\}} 의 각 항 a n {\displaystyle a_{n}} 이 함수 f를 이용해서 a n + 1 = f ( a n ) {\displaystyle a_{n+1}=f(a_{n})} 처럼 귀납적으로 정해져 있을 때, 함수 f를 수열 { a n } {\displaystyle \{a_{n}\}} 의 점화식이라고 하며, 또한, 수열 { a n } {\displaystyle \{a_{n}\}} 은 점화식 f 로 정의된다고 한다. 점화식을 푼다는 것은 귀납적으로 주어진 수열 { a n } {\displaystyle \{a_{n}\}} 의 일반항 a n {\displaystyle a_{n}} 을 n 의 명시적인 식(explicit formula)으로 나타내는 것을 말한다. 수열{an} 이 점화식에 의해서 정의되고 점화식이 변수가 하나인 함수 f에 의해서 an+1 = f(an) 로 나타내지고 있을 때, 이 점화식은 인접 2항간의 점화식이라고 한다. 인접 2항간 점화식중 f 가 일차식 an+1 = p(n) · an + q(n) (p, q는 n 의 함수) 일 때, 선형이라고 한다. 계수 p, q가 상수인 2항간 점화식, 즉, an+1 = p · an + q (p, q는 n 에 관계하지 않는 상수) 라면, 이 점화식은 다음과 같이 해서 등차수열 혹은 등비수열에 귀착되어 일반항 n 의 식으로 명시적으로 기술할 수 있다.： p = 1 일 때, 점화식은 an+1 = an + q 이며, 이것은 등차수열을 나타낸다. p ≠ 1 일 때, 점화식 an+1 = p · an + q 의 특성방정식이라 불리는 x = px + q 의 근을 α 라고 하면, 점화식은 an+1 - α = p (an - α) 으로 변형할 수 있다. 이것은 일반항이 bn = an - α 로 정의되는 수열{bn} 이 공비가 p 인 등비수열이 된다는 뜻이 되며, bn 을 n 의 식으로 쓸 수 있다. 다시, an = bn + α 이므로, 이것도 n 의 식으로 표현이 가능하다. 유명한 하노이의 탑(Tower of Hanoi) 문제가 있다. n {\displaystyle n} 개의 원판을 이동하는 회수를 수열 a n {\displaystyle a_{n}} 으로 정의하자. n {\displaystyle n} 개의 원판을 이동시키기 위해서는 그 위쪽 n − 1 {\displaystyle n-1} 개의 원판을 다른 막대로 이동한 후, 맨 아래쪽 원판을 이동하고 다시 n − 1 {\displaystyle n-1} 개의 원판을 이동해야 하므로 다음과 같은 점화식이 성립함을 알 수 있다. a n = 2 a n − 1 + 1 {\displaystyle a_{n}=2a_{n-1}+1} 선형 점화식이므로 간단하게 일반항이 2 n − 1 {\displaystyle 2^{n}-1} 임을 알 수 있다. 등차수열이나 등비수열은 인접 2항간 점화식의 매우 특수한 형태이며, 그 정의에 의해 매우 단순한 점화식을 가진다. 즉, an+1 = an + d (d는 상수) 와 같이 된다. 이 등차수열의 점화식에서 상수 d가 공차(공통적인 차이)이다. 이 점화식을 풀면 일반항의 식은 an = a1 + (n - 1)d 이 된다. 마찬가지로 an+1 = r · an (r는 상수) 이 등비수열의ff,상수 r 이 공비(공통적인 비율)이다. 이 점화식을 풀면 an = rn-1 · a1 이란 일반항을 얻을 수 있다. 이러한 경우 적절한 변형을 통해 해결이 가능한 형태로 변형해주는 작업이 필요하다. 몇몇 특수한 경우에 풀이법이 잘 알려져 있다. 이 경우 계차수열(인접한 두 항의 차로 이루어진 수열)이 q ( n ) {\displaystyle q(n)} 이라는 일반항을 알고 있는 상태가 된다. 따라서 그 합을 구하면 즉시 일반항을 알 수 있게 된다. 점화식에 1부터 n까지 차례로 대입하여 다음 식들을 구성한다. a 2 − a 1 = q ( 1 ) {\displaystyle a_{2}-a_{1}=q(1)} a 3 − a 2 = q ( 2 ) {\displaystyle a_{3}-a_{2}=q(2)} ⋮ {\displaystyle \vdots } a n − a n − 1 = q ( n − 1 ) {\displaystyle a_{n}-a_{n-1}=q(n-1)} 이므로 변변 모두 더하면 다음과 같은 일반항을 구할 수 있다. a n = a 1 + ∑ k = 1 n − 1 q ( k ) {\displaystyle a_{n}=a_{1}+\sum _{k=1}^{n-1}q(k)} 이 경우 p ( n ) = 1 {\displaystyle p(n)=1} 인 경우와 마찬가지로 점화식에 1부터 n까지 차례로 대입하여 변변 곱하면 다음과 같은 일반항을 구할 수 있다. a n = a 1 ∏ k = 1 n − 1 p ( k ) {\displaystyle a_{n}=a_{1}\prod _{k=1}^{n-1}p(k)} a n + 1 = p a n + q ( n ) {\displaystyle a_{n+1}=pa_{n}+q(n)} 점화식이 위와 같은 경우 양변을 p n + 1 {\displaystyle p^{n+1}} 으로 나누면 다음과 같이 식을 바꿀 수 있다. a n + 1 p n + 1 = a n p n + q ( n ) p n + 1 {\displaystyle {\frac {a_{n+1}}{p^{n+1}}}={\frac {a_{n}}{p^{n}}}+{\frac {q(n)}{p^{n+1}}}} 그러면 일반항이 a n p n {\displaystyle {\frac {a_{n}}{p^{n}}}} 인 수열은 p(n) = 1인 경우와 동일함을 확인할 수 있다. 계차수열 q ( n ) p n + 1 {\displaystyle {\frac {q(n)}{p^{n+1}}}} 의 합을 이용하여 일반항을 구한다. n a n + 1 = ( n + 1 ) a n + q ( n ) {\displaystyle na_{n+1}=(n+1)a_{n}+q(n)} 점화식이 위와 같은 경우 양변을 n ( n + 1 ) {\displaystyle n(n+1)} 으로 나누면 일반항이 a n / n {\displaystyle a_{n}/n} 인 수열은 p(n) = 1인 경우와 동일함을 확인할 수 있다. a n + 1 = n a n + q ( n ) {\displaystyle a_{n+1}=na_{n}+q(n)} 점화식이 위와 같은 경우 양변을 n ! {\displaystyle n!} 으로 나누면, 일반항이 a n / ( n − 1 ) ! {\displaystyle a_{n}/(n-1)!} 인 수열은 p(n) = 1인 경우와 동일함을 확인할 수 있다. 수열 {an} 이 점화식에 의해서 정해지며, 점화식이 2 변수 함수 f에 의해서 an+2 = f(an+1, an) 로 표현될 때, 이 점화식은 인접3항간의 점화식이라고 한다. 인접 3항간 점화식 중 f 가 일차식 a n + 2 = p ( n ) a n + 1 + q ( n ) a n + r ( n ) {\displaystyle a_{n+2}=p(n)a_{n+1}+q(n)a_{n}+r(n)} （p, q, r 은 n 의 함수） 일 경우 선형이라고 한다. 상수 계수 선형 인접 3항간 점화식이 다음과 같다고 하자. a n + 2 = p a n + 1 + q a n {\displaystyle a_{n+2}=pa_{n+1}+qa_{n}} （p, q는 n에 무관한 상수） 이 경우, 특성 방정식(characteristic equation) x2 = px + q 의 근을 이용해 풀 수 있다. 즉, 특성 방정식 x 2 = p x + q {\displaystyle x^{2}=px+q} 의 두 해를 α , β {\displaystyle \alpha ,\beta } 라고 하면, 일반항이 a n = C 1 α n + C 2 β n {\displaystyle a_{n}=C_{1}\alpha ^{n}+C_{2}\beta ^{n}} 인 수열은 주어진 점화식을 만족하게 된다. 따라서 초항의 값에 따라 미정계수 C 1 , C 2 {\displaystyle C_{1},C_{2}} 를 결정하면 된다. 이차 방정식의 두 해가 중근이 될 경우 일반항을 a n = C 1 α n + C 2 n α n {\displaystyle a_{n}=C_{1}\alpha ^{n}+C_{2}n\alpha ^{n}} 로 두면 마찬가지로 주어진 점화식을 만족하게 된다. 이는 마치 상수계수만을 가진 2계도 선형 제차 미분방정식의 풀이를 연상하게 한다. (본질적으로 동일한 매커니즘이다.) 피보나치 수(Fibonacci numbers)의 경우 초기값 F 1 = 1 , F 2 = 1 {\displaystyle F_{1}=1,F_{2}=1} 과 다음과 같은 선형 인접 3항간 점화식으로 정의되어 있다. F n = F n − 1 + F n − 2 {\displaystyle F_{n}=F_{n-1}+F_{n-2}} 이차 방정식 x 2 = x + 1 {\displaystyle x^{2}=x+1} 의 두 해는 1 + 5 2 , 1 − 5 2 {\displaystyle {\frac {1+{\sqrt {5}}}{2}},{\frac {1-{\sqrt {5}}}{2}}} 이므로 초항의 값을 대입하면 다음과 같은 일반항을 얻는다. F n = 1 5 { ( 1 + 5 2 ) n − ( 1 − 5 2 ) n } {\displaystyle F_{n}={\frac {1}{\sqrt {5}}}\left\{\left({\frac {1+{\sqrt {5}}}{2}}\right)^{n}-\left({\frac {1-{\sqrt {5}}}{2}}\right)^{n}\right\}} 계수가 상수가 아닌 경우에는 각각의 점화식에 따라 다양한 기법을 적용해야 한다. 양변을 적절한 수로 나누는 등의 시도를 해 볼 수 있다. 완전순열 혹은 교란순열(Derangement)이라 불리는 수열의 점화식은 다음과 같다. d n = ( n − 1 ) ( d n − 1 + d n − 2 ) {\displaystyle d_{n}=(n-1)(d_{n-1}+d_{n-2})} 이 식은 다음과 같이 변형된다. d n − n d n − 1 = − { d n − 1 − ( n − 1 ) d n − 2 } {\displaystyle d_{n}-nd_{n-1}=-\{d_{n-1}-(n-1)d_{n-2}\}} 그러므로 d n − n d n − 1 {\displaystyle d_{n}-nd_{n-1}} 을 새로운 수열 a n {\displaystyle a_{n}} 으로 정의하면, 다음과 같은 점화식이 된다. a n = − a n − 1 {\displaystyle a_{n}=-a_{n-1}} a n {\displaystyle a_{n}} 의 일반항은 즉시 나오므로 다음과 같이 인접 3항간 점화식이 인접 2항간 점화식으로 변형된다. d n = n d n − 1 + ( − 1 ) n {\displaystyle d_{n}=nd_{n-1}+(-1)^{n}} 이 경우 위에서 다룬 인접 2항간 점화식에서 p(n) = n인 꼴이 된다. 양변을 n ! {\displaystyle n!} 으로 나누면, 일반항이 d n / ( n − 1 ) ! {\displaystyle d_{n}/(n-1)!} 인 수열의 일반항을 알 수 있고 이로써 d n {\displaystyle d_{n}} 의 일반항도 쉽게 유도된다. p = - q - 1인 경우는 특성방정식을 푸는 번거로운 과정없이 쉽게 답을 구할 수 있다. 점화식은 다음과 같이 변형된다. a n + 2 − a n + 1 = − q ( a n + 1 − a n ) {\displaystyle a_{n+2}-a_{n+1}=-q(a_{n+1}-a_{n})} 그러므로 그 계차수열이 공비가 - q 인 등비수열임을 확인할 수 있다. 계차수열의 일반항을 구해 그것으로부터 즉시 a n {\displaystyle a_{n}} 의 일반항을 이끌어낼 수 있다. 점화식의 계수가 모두 상수인 선형 점화식 a n = c 1 a n − 1 + c 2 a n − 2 + ⋯ + c d a n − d {\displaystyle a_{n}=c_{1}a_{n-1}+c_{2}a_{n-2}+\cdots +c_{d}a_{n-d}} 의 경우 다음과 같은 특성 방정식의 해를 구하여 일반항을 구한다. x d = c 1 x d − 1 + ⋯ + c d − 1 x 1 + c d {\displaystyle x^{d}=c_{1}x^{d-1}+\cdots +c_{d-1}x^{1}+c_{d}} 다항 방정식을 이용한 풀이법도 있지만 선형대수학을 이용할 수도 있다. 다음과 같이 수열의 초기항을 고유기저(eigenbasis)로 표현했다고 하자. [ a 0 ⋮ a d − 1 ] = b 1 v 1 + ⋯ + b d v d {\displaystyle {\begin{bmatrix}a_{0}\\\vdots \\a_{d-1}\end{bmatrix}}=b_{1}v_{1}+\cdots +b_{d}v_{d}} 이 경우 조르당 표준형(Jordan normal form)을 이용하여 일반항을 구할 수 있다. [ a n ⋮ a n + ( d − 1 ) ] = C n [ a 0 ⋮ a d − 1 ] = C n ( b 1 v 1 + ⋯ + b d v d ) = λ 1 n b 1 v 1 + ⋯ + λ d n b d v d {\displaystyle {\begin{bmatrix}a_{n}\\\vdots \\a_{n+(d-1)}\end{bmatrix}}=C^{n}{\begin{bmatrix}a_{0}\\\vdots \\a_{d-1}\end{bmatrix}}=C^{n}(b_{1}v_{1}+\cdots +b_{d}v_{d})=\lambda _{1}^{n}b_{1}v_{1}+\cdots +\lambda _{d}^{n}b_{d}v_{d}} 만약 행렬이 대각화(diagonalizable)되지 않으면 해법은 좀 더 복잡하게 된다. 피보나치 수의 점화식을 행렬로 표현하면 다음과 같이 된다. [ F n + 1 F n ] = [ 1 1 1 0 ] [ F n F n − 1 ] {\displaystyle {\begin{bmatrix}F_{n+1}\\F_{n}\end{bmatrix}}={\begin{bmatrix}1&1\\1&0\end{bmatrix}}{\begin{bmatrix}F_{n}\\F_{n-1}\end{bmatrix}}} 그러므로 일반항은 다음과 같이 된다. [ F n + 1 F n ] = [ 1 1 1 0 ] n − 1 [ F 2 F 1 ] {\displaystyle {\begin{bmatrix}F_{n+1}\\F_{n}\end{bmatrix}}={\begin{bmatrix}1&1\\1&0\end{bmatrix}}^{n-1}{\begin{bmatrix}F_{2}\\F_{1}\end{bmatrix}}} 이 행렬은 다음과 같이 대각화 된다. 특성방정식의 x 2 − x − 1 = 0 {\displaystyle x^{2}-x-1=0} 의 두 해를 α , β {\displaystyle \alpha ,\beta } 라고 두면, 이 두 값이 고윳값이므로 [ 1 1 1 0 ] = [ α β 1 1 ] [ α 0 0 β ] [ α β 1 1 ] − 1 {\displaystyle {\begin{bmatrix}1&1\\1&0\end{bmatrix}}={\begin{bmatrix}\alpha &\beta \\1&1\end{bmatrix}}{\begin{bmatrix}\alpha &0\\0&\beta \end{bmatrix}}{\begin{bmatrix}\alpha &\beta \\1&1\end{bmatrix}}^{-1}} 그러므로 일반항은 다음과 같이 정리되며 다항방정식을 이용한 풀이와 동일한 일반항을 얻을 수 있다. [ F n + 1 F n ] = [ 1 1 1 0 ] n − 1 [ F 2 F 1 ] = [ α β 1 1 ] [ α n − 1 0 0 β n − 1 ] [ α β 1 1 ] − 1 [ F 2 F 1 ] {\displaystyle {\begin{bmatrix}F_{n+1}\\F_{n}\end{bmatrix}}={\begin{bmatrix}1&1\\1&0\end{bmatrix}}^{n-1}{\begin{bmatrix}F_{2}\\F_{1}\end{bmatrix}}={\begin{bmatrix}\alpha &\beta \\1&1\end{bmatrix}}{\begin{bmatrix}\alpha ^{n-1}&0\\0&\beta ^{n-1}\end{bmatrix}}{\begin{bmatrix}\alpha &\beta \\1&1\end{bmatrix}}^{-1}{\begin{bmatrix}F_{2}\\F_{1}\end{bmatrix}}} Z 변환 페이지 참조. 점화식 내에 그 수열의 합이 들어있는 경우, 적절한 변형을 하여 인접한 몇 개의 항을 포함하는 점화식으로 바꾸어 준다. 예를 들어, a 1 + a 2 + a 3 + ⋯ + a n = f ( n ) a n {\displaystyle a_{1}+a_{2}+a_{3}+\cdots +a_{n}=f(n)a_{n}} 점화식이 위와 같이 주어진 경우, 다음과 같이 인접 2항간의 점화식으로 변형한다. f ( n − 1 ) a n − 1 + a n = f ( n ) a n {\displaystyle f(n-1)a_{n-1}+a_{n}=f(n)a_{n}} 수열 { a n } {\displaystyle \{a_{n}\}} 의 n {\displaystyle n} 째 항까지의 총합이 S n {\displaystyle S_{n}} 인 경우, S n − S n − 1 = a n {\displaystyle S_{n}-S_{n-1}=a_{n}} 임을 활용하여 인접 2항간의 점화식으로 변형가능한 것도 있다. 비선형의 경우 일반적인 풀이법은 없다. 그러나 몇몇 간단하게 해결되는 경우가 알려져 있다. p a n a n + 1 = q a n − r a n + 1 {\displaystyle pa_{n}a_{n+1}=qa_{n}-ra_{n+1}} 점화식이 위와 같이 주어진 경우 양변을 a n a n + 1 {\displaystyle a_{n}a_{n+1}} 으로 나누면 수열 {1/ a n {\displaystyle a_{n}} }이 선형 점화식이 됨을 알 수 있다. 이 선형 점화식의 일반항을 구하여 해결한다. a n + 1 = 4 a n 2 {\displaystyle a_{n+1}=4a_{n}^{2}} 점화식이 위와 같이 주어진 경우 양변에 밑이 2인 로그를 취하면 log 2 ⁡ a n + 1 = 2 log 2 ⁡ a n + 2 {\displaystyle \log _{2}a_{n+1}=2\log _{2}a_{n}+2} 와 같이 변형되어 수열 { log ⁡ a n } {\displaystyle \{\log a_{n}\}} 이 선형 점화식을 가짐을 알 수 있다. 따라서 선형 점화식을 풀면 쉽게 해결할 수 있다. a n + 1 = 2 a n a n + 2 {\displaystyle a_{n+1}={\frac {2a_{n}}{a_{n}+2}}} 점화식이 위와 같이 주어진 경우 양변의 역수를 취하면 수열 {1/ a n {\displaystyle a_{n}} }이 선형 점화식을 가짐을 알 수 있다. 이 점화식을 풀면 쉽게 일반항을 구할 수 있다. 십진법에 기초하여 정의된 수열의 경우 쉽게 일반항을 구할 수 있는 경우가 있다. 예를 들어, 4가 이전의 항에서 하나씩 늘어가는 방법으로 정의된 수열이 있다고 하자. 즉, 4, 44, 444, 4444, 44444, ..... 이 경우 일반항은 다음과 같다. 4 9 ( 10 n − 1 ) {\displaystyle {\frac {4}{9}}(10^{n}-1)} 기수법이 다른 경우도 마찬가지 방법을 쓸 수 있다. a n + 1 = − 1 a n + 1 , a n ≠ − 1 {\displaystyle a_{n+1}=-{\frac {1}{a_{n}+1}},\;a_{n}\neq -1} 점화식이 위와 같이 주어진 경우, n에 대한 식으로 표현하기 어렵다. 그러나 몇몇 값을 대입해보면 이 수열은 주기적으로 같은 값이 반복됨을 알 수 있다. 즉, a , − 1 a + 1 , − a + 1 a {\displaystyle a,-{\frac {1}{a+1}},-{\frac {a+1}{a}}} 이 세 수가 반복되어 나타난다. 생성함수(generating function)를 이용하여 수열의 일반항을 찾는 것이 가능한 경우가 있다. a 1 = 0 {\displaystyle a_{1}=0} 이고 점화식이 아래와 같이 주어진 수열을 생각해보자. a n + 1 = 2 a n + 1 {\displaystyle a_{n+1}=2a_{n}+1} 이 수열을 계수로 갖는 다항식 A ( x ) = ∑ n = 1 ∞ a n x n {\displaystyle A(x)=\sum _{n=1}^{\infty }a_{n}x^{n}} 은 다음 등식을 만족해야 한다. A ( x ) x = 2 A ( x ) + ∑ n = 1 ∞ x n = 2 A ( x ) + x 1 − x {\displaystyle {\frac {A(x)}{x}}=2A(x)+\sum _{n=1}^{\infty }x^{n}=2A(x)+{\frac {x}{1-x}}} 그러므로 A ( x ) {\displaystyle A(x)} 를 구할 수 있고 이를 다시 부분분수로 분해하여 무한급수로 표현한다. A ( x ) = x 2 ( 1 − x ) ( 1 − 2 x ) = x ( 1 1 − 2 x − 1 1 − x ) = ∑ ( 2 n − 1 − 1 ) x n {\displaystyle A(x)={\frac {x^{2}}{(1-x)(1-2x)}}={x}\left({\frac {1}{1-2x}}-{\frac {1}{1-x}}\right)=\sum (2^{n-1}-1)x^{n}} a 0 = 1 {\displaystyle a_{0}=1} 이고 점화식이 아래와 같이 주어진 수열을 생각해보자. a n + 1 = 2 a n + n {\displaystyle a_{n+1}=2a_{n}+n} 그런데 d d x ∑ x n = ∑ n x n − 1 {\displaystyle {\frac {d}{dx}}\sum x^{n}=\sum nx^{n-1}} 이라는 사실을 이용하여 ∑ n x n − 1 = d d x 1 1 − x = 1 ( 1 − x ) 2 {\displaystyle \sum nx^{n-1}={\frac {d}{dx}}{\frac {1}{1-x}}={\frac {1}{(1-x)^{2}}}} 임을 알 수 있으므로, 이 수열을 계수로 갖는 다항식 A ( x ) {\displaystyle A(x)} 은 다음 등식을 만족해야 함을 알 수 있다. A ( x ) − 1 x = 2 A ( x ) + x ( 1 − x ) 2 {\displaystyle {\frac {A(x)-1}{x}}=2A(x)+{\frac {x}{(1-x)^{2}}}} 마찬가지로 부분분수로 분해하여 무한급수로 표현한다. A ( x ) = 1 − 2 x + 2 x 2 ( 1 − x ) 2 ( 1 − 2 x ) = − 1 ( 1 − x ) 2 + 2 1 − 2 x = ∑ ( 2 n + 1 − n − 1 ) x n {\displaystyle A(x)={\frac {1-2x+2x^{2}}{(1-x)^{2}(1-2x)}}={\frac {-1}{(1-x)^{2}}}+{\frac {2}{1-2x}}=\sum (2^{n+1}-n-1)x^{n}} n {\displaystyle n} 번째 피보나치 수를 계수로 갖는 다항식 F ( x ) {\displaystyle F(x)} 는 정의에 의해 다음을 만족해야 함을 즉시 알 수 있다. F ( x ) − x x = F ( x ) + x F ( x ) {\displaystyle {\frac {F(x)-x}{x}}=F(x)+xF(x)} 그러므로 다음을 얻는다. F ( x ) = x 1 − x − x 2 {\displaystyle F(x)={\frac {x}{1-x-x^{2}}}} 방정식 1 − x − x 2 = 0 {\displaystyle 1-x-x^{2}=0} 의 두 근을 r 1 , r 2 {\displaystyle r_{1},r_{2}} 라고 하면 다음과 같이 부분분수로 분해된다. F ( x ) = 1 r 1 − r 2 ( 1 1 − x r 1 − 1 1 − x r 2 ) {\displaystyle F(x)={\frac {1}{r_{1}-r_{2}}}\left({\frac {1}{1-xr_{1}}}-{\frac {1}{1-xr_{2}}}\right)} 이것을 무한급수로 표현하면 일반항을 얻을 수 있다. 위키배움터에 관련된 자료가 있습니다. 점화식 예제 미분 방정식 정보통신기술용어해설 매스월드