수학적 귀납법(Mathematical induction)
첫 단계가 참이고, n에서 참이면 n+1에서도 참임을 보이면 모든 자연수(natural number)에서 참이다. 한 줄로 세운 도미노가 모두 넘어지는 논리.
도미노를 한 줄로 세워 두었습니다. 두 가지만 확인하면 모두 넘어진다는 것을 압니다. 첫째, 첫 도미노가 넘어진다. 둘째, 어느 도미노든 넘어지면 바로 다음 도미노를 넘어뜨린다. 수학적 귀납법은 이 논리를 자연수에 옮긴 것입니다. 명제
도미노
두 조건 가운데 하나라도 빠지면 결론이 무너집니다. 기초 단계가 없으면 '넘어지면 다음도 넘어진다'는 조건은 헛돌 뿐입니다. 귀납 단계가 어느 한 곳에서라도 깨지면 그 뒤로는 아무 보장이 없습니다. 귀납법이 옳은 까닭은 자연수의 성질에 있습니다. 거짓인 n이 있다면 그런 n들의 집합(set)에 가장 작은 원소(element) m이 있을 것입니다. m은 1이 아닙니다(기초 단계). 그러면 m−1도 자연수이고 m보다 작으니 P(m−1)은 참이며, 귀납 단계에 따라 P(m)도 참이어야 합니다. 모순입니다. 자연수의 공집합(empty set)이 아닌 부분집합(subset)에는 언제나 가장 작은 원소가 있다는 이 성질을 정렬성(well-ordering principle)이라 하며, 정렬성과 귀납법은 한쪽에서 다른 쪽을 증명할 수 있는 같은 힘의 원리입니다.
보기. 처음 m개 홀수의 합은
m = 1이면 1 = 1²이므로 참입니다(기초, basics). m×m 정사각형의 위와 오른쪽에 ㄱ자 모양으로
강한 귀납법. 귀납 단계에서 바로 앞 하나가 아니라 1부터 k까지 전부가 참이라고 가정해도 됩니다. 2 이상의 자연수는 모두 소인수분해(prime factorization)된다는 증명이 그렇습니다. n이 소수(prime number)이면 n 자신이 소인수분해입니다. 소수가 아니면
프로그램과 귀납법. 재귀(recursion)는 귀납법을 거꾸로 돌린 것입니다. 프로그램이 가장 작은 경우를 옳게 풀고, 큰 경우의 답을 더 작은 경우의 답으로 옳게 짓는다고 합시다. 줄여 나가다 보면 반드시 가장 작은 경우에 닿는다면, 귀납법이 그 프로그램이 모든 입력에서 옳은 답을 낸다는 것을 보장합니다. 반복문이 옳다는 증명에는 '루프 불변식(loop invariant)', 곧 반복이 한 바퀴 돌 때마다 참으로 유지되는 명제를 씁니다. 처음에 참이고 한 바퀴가 참을 참으로 넘겨준다는 것을 보이는 일이니, 반복 횟수에 대한 귀납법입니다. 유클리드 호제법(Euclidean algorithm)이 언제나 최대공약수(greatest common divisor)를 준다는 증명이 대표적인 예입니다. 두 수를 (큰 수를 작은 수로 나눈 나머지(remainder), 작은 수)로 바꾸어도 두 수의 최대공약수는 변하지 않는다는 것이 불변식이고, 나머지가 0이 되어 멈추면 남은 수가 곧 최대공약수입니다(알고리즘(algorithm)). 리스트나 나무처럼 제 안에 같은 모양을 품는 대수적 자료형(algebraic data type)에서는 같은 원리를 자료의 짜임새를 따라 쓰는데(구조적 귀납법, structural induction), 증명 보조기(proof assistant)는 이런 귀납 증명의 모든 단계를 기계로 검사합니다.
조심할 점. '모든 말은 색이 같다'는 유명한 가짜 증명이 있습니다. 말 n+1마리에서 한 마리씩 빼면 겹치는 두 무리가 생기고, 각 무리는 귀납 가정에 따라 한 색이므로 모두 한 색이라는 것입니다. 그러나 1마리에서 2마리로 넘어갈 때는 두 무리가 겹치지 않아 귀납 단계가 깨집니다. 도미노 그림의 '벌어진 틈'이 바로 거기입니다.
이어지는 곳. 귀납법은 자연수처럼 가장 작은 것에서 출발해 한 걸음씩 쌓아 올린 구조라면 어디서나 씁니다. 원소를 하나씩 셀 수 있다(가산)는 것만으로는 부족합니다. 유리수(rational number)는 셀 수 있지만, 크기 순서로 보면 0보다 큰 유리수 전체처럼 가장 작은 원소가 없는 부분집합이 있어서 위의 정렬성 논법이 통하지 않습니다. 비둘기집 원리(pigeonhole principle), 순열(permutation)의 개수 n!, 카탈랑 수(Catalan number)의 점화식이 모두 귀납법으로 증명됩니다. 1889년 이탈리아의 수학자 페아노는 '1은 자연수다', '모든 자연수에는 바로 다음 수가 있다' 같은 몇 개의 공리(axiom)로 자연수를 정했는데(페아노 공리계, Peano axioms), 귀납법이 그 공리 가운데 하나로 들어가 있습니다.
이 체계를 논리식으로 적은 페아노 산술(Peano arithmetic)에 모순이 없다면, 귀납법까지 갖춘 그 안에서도 증명할 수 없는 참인 명제가 있습니다. 이것이 1931년 괴델이 보인 불완전성 정리(incompleteness theorem)입니다. 범주론(category theory)으로 적으면(여기서는 자연수를 0부터 셉니다) 귀납법은 (ℕ, 0, S)가 함자(functor)
이 개념이 나오는 긴 글
이 개념 위에 세워진 것
이 개념을 언급하는 페이지
- 멱집합
… 2^n 가지입니다. 원소를 하나 더하면 부분집합이 새 원소를 넣은 것과 뺀 것으로 정확히 두 배가 되니,수학적 귀납법으로도 바로 증명됩니다. "넣는다"를 1, "뺀다"를 0으로 적으면 부분집합 하나가 n 자리 이진수 하나가 …
- 4색 정리
… 이웃이 다섯 이하인 나라가 반드시 있습니다. 그 나라를 떼어 낸 작은 지도를 먼저 칠하고 되돌려 놓는수학적 귀납법이 증명의 뼈대입니다. 이웃이 넷 이하이면 남는 색이 있습니다. 이웃이 다섯이고 다섯 색을 모두 쓰고 …
- 괴델의 불완전성 정리
… 검사할 수 있는 체계입니다. 대표적인 예가 0, '다음 수', 덧셈, 곱셈에 관한 몇 가지 공리와수학적 귀납법으로 자연수를 다루는 페아노 산술입니다(주세페 페아노의 이름을 땄습니다). 체계가 무모순 이라는 것은 …
- 점화식
… 규칙을 한 번씩 적용하면 모든 항이 차례로 정해집니다. 모든 n에서 항이 빠짐없이 하나씩 정해진다는 보장은수학적 귀납법에서 나옵니다. 점화식은 세기 문제에서 저절로 나옵니다. 하노이의 탑은 기둥 셋 가운데 한 기둥에 크기 …
- 램지 이론
… 작은 번호 이상이어야 한다'는 조건 하나를 더한 명제를 내놓았습니다. 이 패리스–해링턴 정리는 참이지만,수학적 귀납법을 핵심으로 하는 자연수의 공리계(페아노 산술) 안에서는 증명할 수 없습니다. 괴델의 불완전성 정리가 …
- 재귀
… 큰 경우를 한 단계 작은 경우로 줄이는 규칙입니다. 나머지는 같은 규칙이 끝까지 알아서 해 줍니다.수학적 귀납법을 거꾸로 쓰는 셈이라, 재귀가 옳게 동작한다는 증명도 대개 귀납법입니다. 1883년 프랑스의 수학자 …
- 분할 정복
… n 단계에 끝납니다. 상태 공간 모형의 하나인 Mamba가 학습 때 이 방법을 씁니다. 점화식과수학적 귀납법: T(n) = a\,T(n/2) + n^d 같은 식을 일반적으로 풀고 그 답을 증명하는 도구입니다.
- 트리
… 길을 더 늘이거나 순환이 생길 테니까요. 잎 하나와 그 변을 떼어 내면 꼭짓점이 하나 적은 트리가 남으니,수학적 귀납법으로 변은 늘 꼭짓점보다 하나 적습니다. 보기: 새 무작위 트리 . 꼭짓점 두 개를 차례로 누르면 그 …
- 허프만 부호
… 늘 형제 잎이 있습니다. 그 두 글자를 무게가 합쳐진 한 글자로 보면 글자가 하나 적은 같은 문제가 남고,수학적 귀납법으로 매번 가장 가벼운 둘을 묶는 것이 최적임이 따라 나옵니다. 매 순간 가장 좋아 보이는 선택을 하는 …
- 수 체계: 자연수에서 실수까지
… 그러면 맨 처음의 자연수는 무엇일까요? 1888년 데데킨트와 1889년 페아노는 자연수를 '다음 수'와수학적 귀납법에 관한 몇 개의 공리로 정했고, 20세기에는 자연수마저 집합으로 지었습니다(0 = ∅, 1 = …
- 공리와 공준
… 수도 같다. 0에서 성립하고, n에서 성립하면 S(n)에서도 성립하는 성질은 모든 자연수에서 성립한다(수학적 귀납법). 1은 S(0), 2는 S(S(0))에 붙인 이름일 뿐이고, 덧셈은 규칙 두 개 a + 0 = a 와 …
- 단순 타입 람다 계산
… 보장과 튜링 완전성이 함께할 수 없는 이유는 정지 문제의 대각선 논법과 같습니다. 유도의 모양은수학적 귀납법의 구조를 따라가므로, 이 체계에 관한 정리는 거의 모두 유도나 타입에 대한 귀납으로 증명됩니다. 되부름 …
- 직관주의 논리
… 모든 x에 대해 증명을 주는 '방법'을 실제 프로그램으로 쓰려면 의존 타입이 필요하고, 거기서수학적 귀납법은 되부름 함수가 됩니다. 크립키 모형과 열린 집합 모형은 둘 다 '어디까지 알려졌는가'에 따라 달라지는 …
- 대수적 자료형
… 구조에서 다시 보는 일입니다. 되부르는 타입은 재귀로 처리하고, 그 되부름이 반드시 끝난다는 보장은수학적 귀납법과 같은 원리에서 나옵니다. 타입 변수를 넣어 '모든 A에 대해 A의 리스트'를 한 번에 다루는 것이 …
- 의존 타입
… 가 이것을 succ (k + 0) = succ k로 바꿔 줍니다. 첫째 줄은수학적 귀납법의 기초 단계, 둘째 줄은 귀납 단계이고, 둘째 줄에서 k에 대해 되부르는 것이 곧 귀납 가정을 쓰는 …
- 증명 보조기
… 의존 타입 이론입니다. 위 그림의 두 번째 증명은 의존 타입 페이지의 되부르는 증명과 같은 모양이라,수학적 귀납법이 도구 안에서 어떻게 보이는지 견주어 볼 수 있습니다. 일가성을 계산하는 입방 타입 이론은 Cubical …
- 영역 이론: 스콧과 재귀의 의미
… 씌우면 F(\bot) \sqsubseteq F^2(\bot) , 이것을 되풀이하면 사슬 전체가 나옵니다.수학적 귀납법입니다. (2) 고정점: 상한을 x^* 라 하면 F(x^*) \;=\; F\Big(\bigsqcup_{n} …
- 호어 논리와 프로그램 검증
… 조건 I, 곧 반복 불변식 을 찾으면, 반복이 끝났을 때 I와 ¬b가 함께 성립합니다. 규칙이 옳은 이유는수학적 귀납법입니다. 0바퀴 뒤에 I가 참이고(처음에 참), k바퀴 뒤에 참이면 k + 1바퀴 뒤에도 참이니(몸통이 …
- F-대수와 fold: 재귀와 귀납의 범주론
… 1888년 『수란 무엇이며 무엇이어야 하는가』에서 이 재귀 정리를 따로 증명했습니다. '하나뿐'은수학적 귀납법입니다. 두 함수 h, h′이 모두 두 등식을 만족하면, 두 함수가 같은 값을 주는 n들의 집합은 0을 …
- 페르마의 마지막 정리
… 해가 또 생기고, 양의 정수가 끝없이 작아질 수는 없으니 처음부터 해가 없었다는 '무한 강하법'입니다(수학적 귀납법을 거꾸로 쓴 논법). n = 3은 18세기에 오일러가, n = 5는 1825년 디리클레와 …