수학기초론 Foundations of Mathematics |
|||
{{{#!wiki style="margin: 0 -10px -5px; min-height: calc(1.5em + 5px)" {{{#!folding [ 펼치기 · 접기 ] {{{#!wiki style="margin: -5px -1px -11px" |
다루는 대상과 주요 토픽 | ||
수리논리학 | 논리 · 논증{ 귀납논증 · 연역논증 · 귀추 · 유추} · 공리 및 공준 · 증명{ 증명보조기 · 자동정리증명 · 귀류법 · 수학적 귀납법 · 반증 · 더블 카운팅 · PWW} · 논리함수 · 논리 연산 · 잘 정의됨 · 조건문( 조각적 정의) · 명제 논리( 명제 · 아이버슨 괄호 · 역 · 이 · 대우) · 양상논리 · 술어 논리( 존재성과 유일성) · 형식문법 · 유형 이론 · 모형 이론 | ||
집합론 | 집합( 원소 · 공집합 · 집합족 · 곱집합 · 멱집합) · 관계( 동치관계 · 순서 관계) · 순서쌍( 튜플) · 서수( 하세 다이어그램 · 큰 가산서수) · 수 체계 · ZFC( 선택공리) · 기수( 초한기수) · 절대적 무한 · 모임 | ||
범주론 | 범주 · 함자 · 수반 · 자연 변환 · 모나드 · 쌍대성 | ||
계산가능성 이론 | 계산 · 오토마타 · 튜링 기계 · 바쁜 비버 · 정지 문제 · 재귀함수 | ||
정리 | |||
드모르간 법칙 · 대각선 논법 · 러셀의 역설 · 거짓말쟁이의 역설 · 뢰벤하임-스콜렘 정리 · 슈뢰더-베른슈타인 정리 · 집합-부분합 정리 · 퍼스의 항진명제 · 굿스타인 정리 · 완전성 정리 · 불완전성 정리( 괴델 부호화) · 힐베르트의 호텔 · 연속체 가설 · 퍼지 논리 | |||
기타 | |||
예비사항( 약어 및 기호) · 추상화 · 벤 다이어그램 · 수학철학 | |||
틀:논리학 · 틀:이산수학 · 틀:이론 컴퓨터 과학 · 철학 관련 정보 · 논리학 관련 정보 · 수학 관련 정보 | }}}}}}}}} |
1. 개요
歸 謬 法 / proof by contradiction수학과 논리학의 증명법 중 하나. 배리법( 背 理 法)[1]이라고도 한다.
어떤 명제가 참이라고 가정한 후, 모순을 이끌어내 그 가정이 거짓임을, 즉 처음의 명제가 거짓임을 증명하는 방법이다. 일상 언어생활에서도 은근히 자주 볼 수 있는 방식이다. "그래, 네 말이 맞다고 치자. 그런데 이러이러하니까 말이 안 되네. 따라서 네 말은 틀렸어"식의 말이 다름 아닌 귀류법.
수학에서는 흔히 간접적 증명이라고도 부른다.
무한 강하법 역시 귀류법의 한 가지 방법이다.
2. 설명
불합리로의 회귀, reductio ad absurdum; RAA( 라틴어)기본적인 추리 규칙 중 하나이면서 간접 증명법 중의 하나로 논증의 타당성(validity of argument)을 보이기 위해 사용한다.
어떤 논증(argument)이 있다고 하자.
[math(p)]
[math(\therefore q)]
[math(\therefore q)]
위 논증에서 [math(p)]는 전제(hypothesis or premises)이며, [math(q)]는 결론(conclusion)을 말한다. 모든 논증은 그와 상응하는 조건 명제(conditional statement)로 바꾸어 쓸 수 있다. 따라서 위 논증은
[math(p\rightarrow q)]
라는 조건 명제를 가리킨다. 즉, '만약 전제들 [math(p)]가 참이면 결론 [math(q)]가 참'임을 보여야 위 논증이 타당해지는데, 직접적으로 추론이 불가능한 경우, 다음과 같은 과정을 거친다.[math(p\rightarrow q)]라는 조건 명제의 논리적 동치(logical equivalence)는 다음과 같다.
[math(p\rightarrow q\equiv {\sim} p\vee q\equiv {\sim} (p\wedge {\sim} q)\equiv {\sim}(p\wedge {\sim} q)\vee F\equiv (p\wedge {\sim} q)\rightarrow F)]
위 조건 명제의 후건(consequent)은 [math(F)]인데 이는 진릿값이 항상 거짓인 명제이다.
"모든 논증은 그와 상응하는 조건 명제와 바꾸어 쓸 수 있으며, 모든 조건 명제는 그와 상응하는 논증과 바꾸어 쓸 수 있다."
그러므로, 우리는 [math((p\wedge{\sim} q)\rightarrow F)]를 다음과 같은 논증으로 바꾸어 쓸 수 있다.
[math(p)]
[math({\sim} q)]
[math(\therefore F)]
위 논증을 설명하면, "결론 [math(q)]를 부정(negation)하면 [math({\sim} q)]가 되는데 이것을 다른 전제들 [math(p)]와 같이 전제로 가정한 후에, 즉 "[math(p)] 그리고 [math({\sim} q)]" [math((p\wedge{\sim} q))]라고 가정한 뒤 연역을 통해 모순 혹은 거짓 명제 F를 이끌어내면 원래 논증 [math(p\rightarrow q)]이 타당하는 것"을 의미한다. 이것이 바로 우리가 논리학, 기호 논리학, 수학에서 말하는 귀류법이다. 사실 [math((p\wedge{\sim} q))]를 참이라고 가정한다는 것은 곧 [math(p\rightarrow q)]가 거짓이라고 가정하는 것과 같기 때문에 ([math((p\wedge{\sim} q))]가 참이면 [math(p)]와 [math({\sim} q)]가 모두 참, 즉 [math(p)]가 참이면서 [math(q)]가 거짓이며 이 경우 [math(p\rightarrow q)]는 거짓이다.) 귀류법은 곧 어떤 조건 명제를 거짓이라고 가정하고 그로부터 거짓 명제 혹은 모순을 논리적으로 이끌어 냄으로써 원래의 조건 명제가 참임을 증명하는 방법이다.[math({\sim} q)]
[math(\therefore F)]
그런데 인터넷상에서 그리고 학교 내의 강의에서 심지어 수학 전공자들, 수학 강사들, 수학 교사들마저도 귀류법에 대해서 잘못된 서술을 하는 경우가 많은데, 그 중 가장 많은 오류가 바로 다음과 같은 설명이다.
귀류법의 잘못된 설명: "[math(p\rightarrow q)]를 증명하기가 까다로우니 [math(p\rightarrow{\sim} q)]를 [전제]로 가정하고, 즉 [[math(p)]이면 [math({\sim} q)]이다]를 통째로 가정한 뒤 [모순]을 이끌어낸다. 이것이 귀류법이다."
라는 잘못된 설명이 가장 많은 사례로 발견된다. 이것은 귀류법에 대한 오개념이다. [math(p\rightarrow{\sim} q)]를 가정하고 [모순]을 이끌어 낼 때 증명되는 것은, [math((p\to {\sim} q)\to F\equiv ({\sim} p\vee {\sim} q)\to F\equiv {\sim}({\sim} p\vee {\sim} q)\vee F\equiv {\sim}({\sim} p\vee {\sim} q)\equiv p\wedge q)], 즉 [math(p \wedge q)]로서 본래 증명하고자 하는 [math(p\rightarrow q)]와는 다른 명제이다. [math(p\wedge q)](p가 참이고 q도 참이다)가 참이면 [math(p\rightarrow q)](만약 p가 참이라면 q도 참이다)도 참이지만, [math(p\rightarrow q)]가 참이라고 해서 [math(p\wedge q)]가 참이라는 보장은 없다. 예를 들어 "만약 내게 고양이 알레르기가 없다면 나는 고양이를 키울 것이다"([math(p\rightarrow q)])라는 명제는 내게 고양이 알레르기가 없고(p가 참) 내가 고양이를 키운다면(q도 참) 참이 되지만([math(p\wedge q)]가 참이면 [math(p\rightarrow q)]도 참), 내게 고양이 알레르기가 있다면(p가 거짓) 고양이를 키우든 키우지 않든 무조건 참이 된다.([math({\sim} p)]가 참이면 [math(p\rightarrow q)]도 참)
귀류법의 올바른 설명: "[math(p\rightarrow q)]를 증명하기가 까다로우니 [math((p\wedge{\sim} q))]를 [전제]로 [모순]을 이끌어낸다. 이것이 귀류법이다."
전제들이 여러 개인 형태: [math((p\wedge q\wedge r\wedge s\wedge t)\rightarrow z)] 또한 귀류법을 적용하면, [math((p\wedge q\wedge r\wedge s\wedge t\wedge{\sim} z)\rightarrow F)]로 증명하면 된다. 결론을 부정해서 전제에 추가한 다음, 모순을 이끌어낸다.
다음 주어진 논증을 예로 들어보겠다. 전제들이 여러 개이지만, 귀류법을 적용하는 것은 쉽다.
전제 [math(:\quad A\rightarrow(B\wedge C))]
전제 [math(:\quad (B\vee D)\rightarrow E)]
전제 [math(:\quad D\vee A)]
결론 [math(:\quad \therefore E)]
전제 [math(:\quad (B\vee D)\rightarrow E)]
전제 [math(:\quad D\vee A)]
결론 [math(:\quad \therefore E)]
위 논증의 타당성을 귀류법으로 증명해 보이겠다. 우리는 결론 [math(E)]를 부정한 다음에 그것을 반드시 전제에 넣어야 한다.
전제 [math(:\quad A \rightarrow(B\wedge C))]
전제 [math(:\quad (B\vee D)\rightarrow E)]
전제 [math(:\quad D\vee A)]
전제 [math(:\quad {\sim} E)]
이런 식으로 결론을 부정한 후에 그것을 전제에 추가한 다음, 위 전제들로부터 결론을 [math(F)] = 모순으로 이끌어내야 한다. 아래는 추론 과정이다.전제 [math(:\quad (B\vee D)\rightarrow E)]
전제 [math(:\quad D\vee A)]
전제 [math(:\quad {\sim} E)]
전제 [math(1.\quad \; \; A\rightarrow(B\wedge C))]
전제 [math(2.\quad \; \; (B\vee D)\rightarrow E)]
전제 [math(3.\quad \; \; D\vee A)]
전제 [math(4.\quad \; \; {\sim} E)]
추론 [math(5.\quad \; \; {\sim}(B\vee D)\quad\quad)] (∵전제 4, 전제 2의 대우[2])
추론 [math(6.\quad \; \; {\sim} B\wedge{\sim} D\quad\quad)] (∵추론 5 → 드 모르간의 법칙)
추론 [math(7.\quad \; \; {\sim} B)]
추론 [math(8.\quad \; \; {\sim} D)]
추론 [math(9.\quad \; \; A\quad\quad\quad\quad\quad\;\;)] (∵전제 3, 추론 8)
추론 [math(10.\quad B\wedge C\quad\quad\quad\;\;)] (∵전제 1, 추론 9)
추론 [math(11.\quad B)]
추론 [math(12.\quad B\wedge{\sim} B\quad\quad\quad)] (∵추론 7, 추론 11)
결론 [math(13.\quad F)]
위 증명의 방식이 우리가 흔히 말하는 추론이다. 전제들로부터 차례대로 아래로 내려오면서 연역을 통해 결론을 도출한다.전제 [math(2.\quad \; \; (B\vee D)\rightarrow E)]
전제 [math(3.\quad \; \; D\vee A)]
전제 [math(4.\quad \; \; {\sim} E)]
추론 [math(5.\quad \; \; {\sim}(B\vee D)\quad\quad)] (∵전제 4, 전제 2의 대우[2])
추론 [math(6.\quad \; \; {\sim} B\wedge{\sim} D\quad\quad)] (∵추론 5 → 드 모르간의 법칙)
추론 [math(7.\quad \; \; {\sim} B)]
추론 [math(8.\quad \; \; {\sim} D)]
추론 [math(9.\quad \; \; A\quad\quad\quad\quad\quad\;\;)] (∵전제 3, 추론 8)
추론 [math(10.\quad B\wedge C\quad\quad\quad\;\;)] (∵전제 1, 추론 9)
추론 [math(11.\quad B)]
추론 [math(12.\quad B\wedge{\sim} B\quad\quad\quad)] (∵추론 7, 추론 11)
결론 [math(13.\quad F)]
[math(A\rightarrow(B\wedge C))], [math((B\vee D)\rightarrow E)], [math(D\vee A)], [math({\sim} E)] 이러한 전제들이 참(true)이라 가정했을 때, 결론이 모순 [math(F)]가 나오므로 우리는 원래 주어진 논증이 타당함을 알 수 있다. 이렇게 전제들이 여러 개일 때도 그냥 결론을 부정한 다음, 전제들에 추가하면 된다. 그리고 모순을 이끌어낸다.
또 다른 예를 들어보자. 이번엔 간단한 수학이다.
"정수 [math(a)]와 [math(b)]가 덧셈에 대한 항등원이라 하자. 그러면 [math(a=b)]이다."
일단, 위 논증을 분석해 보자. "정수 [math(a)]와 [math(b)]가 덧셈에 대한 항등원이다. "라는 명제는 전제이고, "[math(a=b)]이다. "라는 명제는 결론이다.위 논증은 "정수 [math(a)]와 [math(b)]가 덧셈에 대한 항등원이면 [math(a=b)] 이다."라는 조건 명제 꼴로 바꿀 수 있다. 즉, [math(p\rightarrow q)] 꼴의 조건 명제라고 볼 수 있다.
위 논증을 귀류법으로 증명한다고 해보자.
[math(p\rightarrow q)] 꼴의 조건 명제를 귀류법으로 증명하려면 [math((p\wedge{\sim} q))]를 전제로 가정하고 모순을 이끌어내라고 분명히 설명했다.
" 전제: 정수 [math(a)]와 [math(b)]가 덧셈에 대한 항등원이고, [math(a=b)]가 아니라고 가정하자." ---- [math((p\wedge{\sim} q))] 꼴
전제 1: 정수 [math(a)]와 [math(b)]가 덧셈에 대한 항등원이다.
전제 2: [math(a\neq b)]이다.
추론 과정(1): 전제 1에 의해 [math(a+b = a)]이고, [math(a + b = b)](둘 다 항등원이라는 전제)
추론 과정(2): 따라서 [math(a=b)]이다.
추론 과정(3): '[math(a\neq b)]이다'라고 전제에 나와있는데 동시에 '[math(a = b)]이다'라는 추론이 나온다.
추론 과정(4): 어떤 명제가 참인 동시에 거짓이라는 것은 모순이다.
마침내 결론: '따라서 [math(a=b)]가 아니다.'라고 가정하면 모순이 나온다.
이 간단한 증명에서도 나와있지만, 결국 [math(p\rightarrow q)] 형태를 귀류법으로 증명하는 것은
[math((p\wedge{\sim} q))] 를 가정한 다음에 모순을 보이는 것이다. 이게 제일 중요하다. 절대 [math(p\rightarrow{\sim} q)]를 가정하는 게 아님을 명심하자.
그렇다면 "[math(\sqrt{2})]가 무리수이다." 를 귀류법으로 증명하라는 것은 어떻게 이해해야 할까?
위에서 서술한 것처럼 [math(p\rightarrow q)] 꼴의 명제가 아니라, 단지 결론 하나만 덜렁 존재하는 경우다. 이것은 사실 전제가 없는 것이 아니라, 수학적 사실들(공리, 정리 따위들)을 암묵적으로 전제로 가정하고 있다고 봐야 한다. 수학이나 논리학에서 항진 명제가 아닌 어떤 우연 명제가 참이라는 것은 다른 공리나 전제들로부터 도출되는 것이지, 자기 혼자서 참이라는 것을 주장하는 것이 아니다. 이 명제를 다시 쓰면 다음과 같다.
"수학의 공리들이 참이고 수학의 정리들이 참이다. 그러한 전제들에 의해 [math(\sqrt{2})]가 무리수이다. "
"[math((p\wedge q\wedge r\wedge s\wedge t)\rightarrow z)]의 형태"
즉, 이미 수학적 사실들을 전제로 존재한 다음, 그것으로부터 "[math(\sqrt{2})]가 무리수이다." 라는 결론이 도출되는 셈이다. 그래서 여기에 귀류법을 적용하는 것도 마찬가지로 똑같다. "[math(\sqrt{2})]가 무리수이다." 를 부정한 다음, 그것을 우리가 알고 있는 수학의 공리, 정리들과 함께 전제로 취급한 다음, 모순을 이끌어내면 된다."[math((p\wedge q\wedge r\wedge s\wedge t)\rightarrow z)]의 형태"
"수학의 어떤 공리들과 정리들이라는 전제들이 참이고 [math(\sqrt{2})]는 무리수가 아니라고 한다면, 모순이 나온다. "
"[math((p\wedge q\wedge r\wedge s\wedge t\wedge{\sim} z)\rightarrow F)]의 형태"
그런데 실제 증명에서는 암묵적인 전제들을 전부 일일이 찾아서 나열하지 않고, 그냥 결론을 부정한 후에 추론할 때마다 하나씩 하나씩 전제들을 추가하면서 증명을 한다. 그래서 그냥 결론을 부정한 다음,
[math({\sim} q)]
[math(\therefore F)]
위 추론 과정에서 전제들을 하나씩 추가하면서 [math({\sim} q)]으로부터 모순을 이끌어낸다. 본문이 이해가 되지 않는다면, 처음부터 다시 자세히 읽어보고 그래도 이해가 안 된다면 논리학이나 기호 논리학을 공부해 보길 권한다. 수학의 연역적 추론은 기호 논리학의 형식적 연역 추론에 밑바탕을 두고 있기 때문에 이러한 사소한 논리적 지식 하나하나가 수학의 증명 능력에 상당한 영향을 미친다.[math(\therefore F)]
*참고: 이 논리를 안다면 귀류법을 더 효과적으로 적용시키는 방법이 있다. 귀류 가정을 만족시키는 공집합이 아닌 해집합을 고려할 수 있는데, 여기서 극단성을 이용해 쓸모 있는 값만 뽑아낼 수 있다.
2.1. 주의할 점
위에서 설명한 것처럼 어떤 명제 [math( q)]를 증명할 때, 귀류법은 강력한 도구가 될 수 있다. 그러나 귀류법에는 맹점이 있는데 일단 [math( q)]가 참이어야 [math({\sim} q)]를 전제(가정)했을 때 모순이 생길 수도 있다는 것이다. 즉, 애초부터 [math( q)]가 거짓이라면, [math({\sim} q)]를 전제했을 때 아무런 모순도 생기지 않게 된다(참인 명제에서 논리적으로 도출되는 명제는 참인 명제이다). 이 경우 [math( q)]를 전제로 하고 모순을 찾는 방법으로 귀류법을 사용하지 않는 이상, [math(q)]의 진위(참 혹은 거짓)을 증명할 수 없다. [math( q)]와 [math({\sim} q)] 중에서 어떤 것을 전제로 하고 귀류법을 써야 할까? 그건 모른다. 해 봐야 안다. 그걸 안다는 것 자체가 [math( q)]가 증명되었다는 사실을 의미하니까. 설사 [math( q)]가 참, 즉 [math({\sim} q)]가 거짓이라고 해도 거짓 명제에서 반드시 거짓 명제가 논리적으로 도출된다는 보장은 없기 때문에 귀류법에 의한 [math( q)]의 증명이 안 될 수도 있다.수학의 경우 컴퓨터를 이용한 수치적 해석과 같은 귀납적 탐구를 이용해서 이를 결정하나, 문제는 귀납적 탐구의 결과가 반드시 옳으리단 보장이 없다는 것. 당장 대수학의 경우만 봐도 4차 방정식까지 근의 공식이 존재하길래 "어 그러면 모든 대수 방정식에 근의 공식이 존재하지 않을까?" 하고 추측했다가 뒤통수를 씨게 맞은 전례가 있다.
이러한 특성으로 인해 G. H. 하디는 귀류법과 관련하여 다음과 같은 말을 남기기도 하였다.
유클리드가 그토록 좋아했던 귀류법은 수학자들이 갖고 있는 가장 훌륭한 무기이다. 그것은
체스보다 훨씬 대담한 경기라고 할 수 있다. 체스를 두는 사람은
폰 따위의 말을 희생시키면서 경기를 풀어나가지만, 귀류법의 논리를 펴는 수학자는 게임 자체를 담보로 잡기 때문이다.
3. 예제: 2의 제곱근이 무리수임을 증명
고등학생 레벨에서 제일 유명한 사례는 [math(sqrt{2})]가 무리수임을 증명하는 문제. 원래는 서울대학교 본고사 문제였다. 나왔을 당시에는 수험생들에게 충격과 공포를 선사해 주었다는 전설의 문제이나, 대수학 문제답게 발상을 떠올릴 수만 있다면 복잡한 계산이나 특별한 테크닉이 필요 없어서 실질적인 난이도도 상당히 낮고, 무엇보다 문제가 너무 유명해진지라(...) 지금은 제대로 공부한 고등학생이면 누구든지 증명할 수 있는 문제가 되어 버렸다. (보통 고 1 때 등장하며 일부 중 3 교과서에도 나오고, 사실 과고 대비 중이라면 초등학교 고학년 때 만나볼 수도 있다.)[math(\sqrt{2} = \dfrac{p}{q})] (단 [math(p)]와 [math(q)]는 서로소인 자연수[3].)로 놓은 다음에, 양변을 제곱하여 [math(p)]와 [math(q)]가 모두 짝수가 된다는 것을 증명하는[4][5] 방식으로 한다.
3.1. 초보적인 증명: 2의 제곱근이 유리수가 아님을 증명
고등학교 교과 과정상으로는 다음과 같은 과정을 거친다.- 고등학교 교과 과정에서 무리수를 '유리수가 아닌 실수'로 정의함을 안다.
- 유리수의 정의가 '서로소인 두 정수 [math(p)]와 [math(q)]가 있을 때, [math(\dfrac{p}{q})](단, [math(q\ne0)])로 표현 가능한 수'임을 설명한다.
- [math(m^2)]이 [math(2)]의 배수이면 [math(m)]이 [math(2)]의 배수임을 보인다.[6]
- 귀류법을 이용하여 [math(\sqrt{2})]가 유리수라고 가정했을 때, [math(p)]와 [math(q)]가 [math(2)]라는 공통인수를 가짐을 보인다.[7]
- 이는 [math(p)]와 [math(q)]가 서로소라는 가정에 모순이므로 [math(\sqrt{2})]가 무리수라고 결론짓는다.
3.2. 위 증명의 논리적 비약을 메우기 위한 해석학적 접근
위의 증명에서 논리적 비약을 찾았는가? 엄밀히 말해서 위의 증명은 제곱해서 2가 되는 (양의) 실수가 존재한다는 것을 증명 없이 그냥 깔고 들어가고 있다. 즉, [math(\sqrt 2)]가 유리수가 아니다는 것만 증명했을 뿐, 이것이 무리수인지 허수인지 뭔지를 밝혀내지는 않았으므로 [math(\sqrt 2)]가 실수 집합에 속한다는 것을 추가로 증명해야 한다. 위의 비약이 비약인지 모르겠다면, 예시에서 [math(\sqrt{2})]를 허수 [math(i)]로 바꿔 써보자. 귀류법을 적절하게 쓰면서도 [math(i)]가 '무리수'라고 증명하는 기적(?)을 이끌어낼 수 있다.[8] 유리수가 아닐 경우 무리수인 실수이거나 아니면 아예 실수가 아닐 텐데 저 증명에서는 유리수가 아니니 무작정 무리수라고 주장했기 때문.실수의 구성방법에는 공리적 방법과 구성적 방법이 있는데, 구성적 방법은 페아노 공리계로부터 시작해 유리수를 구성하고, 데데킨트 절단이나 코시 수열을 이용하여 무리수를 만드는 방법이다. 공리적 방법은 체의 공리, 완비성 공리, 순서 공리를 만족하는 수 체계를 실수라고 정의하는 방법이다. 일반적으로는 공리적 방법을 많이 사용한다. 구성적 방법으로 실수를 구성하는 것은 매우 어렵다. 혹시 궁금하다면 Rudin의 Principle of Mathematical Analysis의 1장 부록에 실수 구성 방법이 10단계에 걸쳐 나와 있다.[9]
중등 교육 과정은 이러한 공리들을 언급하고 있지 않으므로, 관념적으로 사용하는 실수에 대해 모든 양수에는 제곱근이 되는 실수가 당연히 있다고 가정하고 있다. 하지만 대수학적으로 [math(\sqrt{2})]가 무리수임을 보이려면 [math(\sqrt{2})]가 실수임을, 다시 말해 완비성 공리를 이용하여 실수체의 원소 중에 [math( x^2 = 2 )]를 만족하는 원소가 있는지를 먼저 보여야 한다.
여러 가지 방법이 있으나 시중의 웬만한 해석학 입문용 교재에 [math(\sqrt{2})] 한정으로 그 존재성을 밝히는 과정이 있으니[10] 그걸 참고해도 좋겠다. 대부분의 경우 데데킨트 컷이나 코시 수열, 실수의 완비성으로 증명하는데, 어떻게 증명하든 그 과정에서 체의 공리부터 시작해 실수 구조 자체를 엄밀하게 구성하는 방법을 요구하므로 고등학교 과정에선 이를 다룰 수 없는 것이 당연하다. 이 때문에 완비 순서체로서의 실수 집합을 제대로 정의하지 않는 것을 못내 겸연쩍게 여기는 수학 교사들은 교육 과정에서 귀류법에 대해 소개할 때 드는 예제를 소수가 무수히 많음을 보이기 위해 써먹는 귀류법[11]으로 바꿀 것을 주장하기도 한다.
다만 [math(\sqrt{2})]가 무리수임을 증명하는 것이 아니라, 제곱해서 2가 되는 유리수가 없음을 증명하고 싶다면 이러한 해석적 논증은 필요 없다. 실제로 현대 대수학에서 분수체[12]를 소개할 때 [math(\sqrt{2})]가 '유리수가 아니'라는 걸 증명하라는 예제가 간혹 등장하기도 하는데, 위에서 다룬 문제가 너무 파급력이 강했던지라 현대 대수학 교재를 읽는 독자의 입장에서는 시시하게(...) 여겨질 수도 있다.
4. 여담
- 수학 철학의 갈래 중 하나인 직관주의 수학자들은 귀류법을 싫어했다. 직관주의자들은 배중률를 거부하는데 귀류법은 배중률를 포함하고 있기 때문이다.
- 이 논법은 니시오 이신의 소설 ' 데스노트 어나더 노트 로스앤젤레스 BB 연속 살인사건' 후반부에 미소라 나오미가 살인 사건의 범인인 'B'를 잡는 데에 쓰이기도 했다.
- 특이하게 과학 명제의 증명에서도 쓰일 수가 있는데 대표적으로 열역학 법칙 같은 표현을 증명할 때도 쓰인다. 의도치 않게 귀류법으로 증명해 버린 마이컬슨-몰리 실험[13] 같은 케이스도 있다.
-
더욱 특이하게도 성범죄의 증명에서도 쓰인 적이 있는데,
진중권은 이러한 귀류법을 이용하여
정봉주 성추행 의혹을 증명했다고 주장하였다.
2018년 3월 17일 프레시안 [기고] 응답하라, 정봉주-정봉주 '미투' 사건에 관하여
2018년 3월 17일 네이버-프레시안
거짓 미투로 밝혀진 건 넘어가자
- 양자 역학에서 국소적 숨은 변수 이론의 존재성을 반증하는 데 사용된다. 국소적 숨은 변수 이론이 존재하면 관측값이 벨의 부등식을 만족해야 하는데, 실험 결과 벨의 부등식이 성립하지 않음이 밝혀져 국소적 숨은 변수 이론의 존재성이 반증되었다.
[1]
일본 수학에선 이 용어가 보편적임.
[2]
[math((B\vee D)\rightarrow E \equiv \sim E \rightarrow \sim(B\vee D) \equiv \sim (B\vee D)\vee E)]
[3]
우변이
유리수의 정의이다. 따라서 이 식은 '[math(\sqrt{2})]는 무리수'라는 사실을 일단 부정한 것이다.
[4]
즉, 멀쩡한 명제의 결론을 부정했더니 말이 안 되더라는 것을 보여주는.
[5]
다른 방법으로, 제곱한 다음 양변을 소인수 분해 했을 때 '[math(2)]의 개수'가 서로 다르다는 방식으로도 증명이 가능하다. 좌변은 [math(2)]가 홀수 개, 우변은 짝수 개이다.
[6]
이 역시 귀류법을 이용하거나 대우 증명법을 이용해서 증명해 주어야 한다.
[7]
[math(\sqrt{2} = \dfrac{p}{q})]에서 양변을 제곱하면 [math(2 = \dfrac{p^{2}}{q^{2}})]가 되고, 이를 정리하면 [math(p^{2} = 2q^{2})]가 된다. [math(p^2)]이 [math(q^2)]의 [math(2)]배이므로 [math(p^2)]는 짝수이고, 자연스럽게 [math(p)]도 짝수임을 알 수 있다.([math(p)]가 홀수라면 [math(p^2)]도 홀수여야 한다. 그렇지 않으므로 짝수) [math(p)]를 어떤 정수 [math(r)]의 [math(2)]배라고 표현하여 식에 대입하면 [math(4r^2=2q^{2})], 즉 [math(q^2 = 2r^2)]이고 따라서 [math(q)]도 짝수임을 알 수 있다.
[8]
[math(i)]를 유리수로 가정하면, 서로소인 두 정수 [math(p)]와 [math(q)]가 있을 때, [math(\dfrac{p}{q})](단, [math(q\ne0)])로 표현할 수 있고, 이를 정리해 [math(i)][math(q)]= [math(p)], 양변을 제곱하면 [math(-q^2)] = [math(p^2)]. 정수의 제곱은 반드시 0과 같거나 0보다 커야 하므로 [math(p)]와 [math(q)]가 모두 0이어야 하고, 이는 [math(q\ne0)]라는 전제와 모순된다.
[9]
Rudin에서는 데데킨트 절단을 이용하여 실수를 구성한다. 한편 김김계 해석개론 교재에서는 칸토어의 방법인 코시 수열을 이용한 방법이 나와있다.
[10]
참고로 Rudin의 Principle of Mathematical Analysis 혹은 김김계
서울대학교 해석개론 교재에는 임의의 양수에 대한 증명이 나와 있다. 유일성은 덤.
[11]
출처를 대개 유클리드의 원론이라하는 데, 정작 유클리드의 원문은 귀류법이 아니라 매거적 귀납법이다. 후에 귀류법 예시를 들기 쉽다고 마개조한 것.
[12]
간단히 말하자면 정수(와 비슷한 성질을 갖는 집합인 정역)을 포함하면서 사칙 연산이 잘 정의되는 가장 작은 집합(인 유리수체)
[13]
간단하게 말하자면 빛도 소리처럼 매질이 존재한다고 가정하고 이를 증명하기 위해 진행한 실험이다. 그런데 실험 결과는 매질이 있다면 도저히 나올 수 없는 결괏값이 나왔다. 그래서 빛은 매질이 필요 없다는 것이 증명이 되었고 이걸로 노벨상까지 탔다. 문제는 이 실험의 의도는 본디 귀류법을 의도한 게 아니라 진짜로 매질이 있을 거라고 생각하고 이를 증명하려고 행했던(...) 실험이다. 즉 실패한 실험. 어찌 되었건 결과만 두고 보면 옳다고 가정하고 실험을 진행했더니 모순이 생겼으므로 틀렸음을 증명했다는 점에서 딱 귀류법이긴 하다.