수학적 귀납법 — 도미노 쓰러뜨리기
무한히 많은 것을 두 줄로 증명하는 법
첫 장을 넘어뜨리고, 넘어지면 다음도 넘어진다를 보이면 전부 넘어집니다.
"1부터 n까지 더하면 n(n+1)/2 이다." 이걸 어떻게 증명할까요?
n = 1, 2, 3… 무한히 많은데 하나씩 확인할 수는 없습니다.
도미노를 생각해 보세요. 도미노가 무한히 늘어서 있어도,
딱 두 가지만 확인하면 전부 넘어진다고 말할 수 있습니다.
이것이 수학적 귀납법(mathematical induction)입니다.
무한한 확인을 두 줄로 바꾸는 마법이에요.
🎮 도미노를 직접 세워 보세요
기초 단계를 빼면 어떻게 되는지, 귀납 단계가 끊기면 어떻게 되는지
도미노를 넘어뜨리며 확인해 보세요. 둘 중 하나만 빠져도 전체가 무너집니다.
증명 써 보기
주장 : 모든 자연수 n에 대해 1 + 2 + … + n = n(n+1)/2
[기초] n = 1 일 때, 좌변 = 1, 우변 = 1·2/2 = 1. 참이다.
[귀납 가정] n = k 일 때 참이라고 하자. 즉
1 + 2 + … + k = k(k+1)/2.
[귀납 단계] n = k+1 일 때를 계산한다.
1 + 2 + … + k + (k+1)
= k(k+1)/2 + (k+1) (← 귀납 가정을 여기서 쓴다)
= (k+1)(k + 2)/2
= (k+1)((k+1)+1)/2
이것은 n = k+1 일 때의 식과 정확히 같다.
[결론] 기초와 귀납 단계가 모두 성립하므로, 모든 자연수 n에 대해 참이다. ∎
핵심은 귀납 가정을 어디서 쓰는가입니다. 그 한 줄이 없으면 증명이 아니에요.
강한 귀납법
때로는 바로 앞 한 장이 아니라 앞의 전부가 필요할 때가 있습니다.
"k일 때 참"이 아니라 "1부터 k까지 모두 참"을 가정하는 것을
강한 귀납법(strong induction)이라고 해요.
대표적인 예가 "2 이상의 모든 정수는 소수들의 곱으로 쓸 수 있다"입니다.
n이 소수가 아니면 n = a × b 인데, 여기서 a와 b는
n-1이 아니라 n보다 작은 아무 수거든요.
재귀 호출이 곧 '더 작은 경우를 가정한다'입니다.
🤔 확인 문제
수학적 귀납법에서 기초 단계가 하는 일은?
해설 귀납 단계는 "넘어지면 다음도 넘어진다"는 조건부 주장일 뿐입니다. 실제로 하나라도 넘어뜨려 주지 않으면 아무 도미노도 넘어지지 않아요 — n = n+1 가짜 증명이 그 예입니다.
🤔 확인 문제
귀납 단계에서 하는 일을 바르게 말한 것은?
해설 핵심은 가정을 실제로 쓰는 것입니다. 귀납 가정을 한 번도 쓰지 않고 k+1을 증명했다면 그건 귀납법이 아니라 그냥 직접증명이에요 (그것도 유효하긴 합니다).
🤔 확인 문제
"2 이상의 정수는 모두 소수의 곱이다"를 증명할 때 강한 귀납법이 필요한 이유는?
해설 보통의 귀납법은 바로 앞 한 칸만 쓸 수 있습니다. 12를 3×4로 쪼개면 11이 아니라 3과 4가 나오므로, n보다 작은 모든 수에 대한 가정이 필요해요. 그것이 강한 귀납법입니다.