“이 문장은 거짓이다” 는 참이라면 거짓이고 거짓이면 참인 문장입니다. 거짓말쟁이 역설이라는 이름의 매우 유명한 역설이죠. 하지만 이 역설의 단순함 이면에는 심오한 철학적, 논리학적 딜레마가 있습니다.
거짓말쟁이 역설은 플라톤의 글에도 언급될 정도로 오래된 역설입니다. 그러나 진지한 연구가 이루어지지는 않았는데요, 역설을 말장난으로 치부하는 사람이 많았을 뿐더러 당시 서양의 논리학은 아리스토텔레스의 논리학이 전부였기에 역설을 다룰 적절한 도구조차 없었기 때문입니다.
하지만 19세기에 이르러 이야기는 달라집니다. “모든 사람은 죽는다” 등의 제한된 문형만을 허용한 아리스토텔레스의 논리학과 달리, 새로 등장한 술어 논리는 “그리스인이면서 아테네인이 아닌 사람이 존재한다면 모든 그리스인이 아테네인인 것은 아니다” 등의 복잡한 문장도 표현할 수 있었습니다
술어 논리 덕분에 논리학에는 비약적인 발전이 일어났지만, 그 이면에는 찝찝한 문제 또한 있었습니다. 바로 술어와 정의역을 어떻게 정의할 것인가의 문제였죠. 위 논리식에서 대문자로 표기된 것이 술어이고, 술어가 취할 수 있는 값의 영역(위의 경우 “지구상의 사람”)을 정의역이라고 합니다.
문제는, 아무 제약 없는 술어와 정의역을 허용하는 논리학은 역설적이라는 데 있습니다. 이 글의 주제인 거짓말쟁이의 역설이 그러한 예시입니다. 다음의 술어를 고려해 봅시다.
L(x): x는 거짓이다.
술어 L을 허용하고 “이 문장”을 정의역에 포함하는 논리학은
L(“이 문장”)
이라는 논리식을 허용합니다. 이것은 다름아닌 거짓말쟁이 역설입니다. 따라서 무제한적인 논리학은 모순적입니다.
또다른 문제로는 러셀의 역설이 있습니다. “명사”라는 단어는 명사입니다. “한국어”는 한국어이고, “세 글자”는 세 글자입니다. 반면 “동사”는 동사가 아니고, “영어”는 영어가 아니며, “네 글자”는 네 글자가 아닙니다. 둘째 유형에 속하는 단어를 자기부정어라고 부릅시다.
이제 다음 술어를 고려해 볼게요.
R(x): x는 자기부정어이다.
술어 R을 허용하고 “자기부정어”를 정의역에 포함하는 논리학은
R(“자기부정어”)
이라는 논리식을 허용합니다. 머리를 굴려보면 이 또한 역설을 일으킨다는 사실을 알 수 있습니다.
여기서 한 가지 언급할 점이 있습니다. 표준 논리학에서는 단 하나의 모순으로부터 모든 명제를 증명하는 것이 가능합니다. 이를 폭발 원리라고 부릅니다. 따라서 논리학에는 모순이 하나라도 있으면 안 됩니다. 이것은 거짓말쟁이 역설과 러셀의 역설을 심각한 문제로 만듭니다.
거짓말쟁이 역설과 러셀의 역설로부터 우리는 다음의 결론을 내립니다.
무제약적인 술어와 정의역은 모순을 일으킨다.
따라서 술어와 정의역의 허용 범위를 ‘잘’ 규정하여 모순은 없되, 충분한 표현력을 가진 논리학을 만들 필요성이 있는 것이죠. 이것은 결코 쉬운 작업이 아닙니다.
여기서 “충분한 표현력”의 기준은 “산술을 표현할 수 있을 것”입니다. 산술이란 쉽게 말해 자연수와 사칙연산을 이르는 말입니다. 즉, 우리가 원하는 것은 2 + 3 = 5와 같은 산술식을 논리식으로 적을 수 있을 정도로 풍부한 표현력을 지니는 한편 모순이 없는 논리학입니다. 산술을 어떻게 논리학으로 환원할 수 있는지는 일찍이 데데킨트라는 수학자가 제시한 바 있습니다만(저의 저번 글에서 확인할 수 있습니다), 데데킨트가 사용한 논리학 또한 ‘술어’의 범위를 명확히 긋지 않는다는 점에서 문제가 있습니다.
산술을 논리학으로 환원하는 것이 중요한 이유는 당시의 지성사적 맥락과 닿아 있습니다. 전통적으로 수학은 인간의 지식 중 가장 확실한 지식이자 진리에 이르는 유망한 열쇠로 여겨졌습니다. 이러한 태도의 사례는 유클리드 기하학이 선험적 종합판단이라고 주장함으로써 인식의 초험성을 논한 칸트의 저작에서 찾을 수 있습니다.
그런데 18, 19세기에 이같은 수학의 명성에 균열이 생겼습니다. 인간의 직관을 한참 벗어난, 소위 “병리적 현상”이 발견된 것이죠. 모든 점에서 미분 불가능한 연속함수, 비유클리드 기하학, 어떤 무한보다 ‘더 큰’ 무한 등의 발견을 받아들여야 하는가를 두고 수학자들 사이에서 논쟁이 일었습니다.
진리의 최종 보루로 여겨진 수학에서조차 논쟁이 생기다니! 이같은 혼란 속에서 수학자들은 논쟁을 종식하기 위해 수학을 지탱하는 가장 근본적인 원리가 무엇인지를 검토할 필요성을 느꼈습니다. "무엇이 수학의 명제를 참으로 만드는가"라는 철학적 질문이 수면 위로 떠오른 것이죠.
러셀을 비롯한 일부 수학자는 그 원리가 다름아닌 논리학이라고 믿었고, 그 믿음을 증명하기 위해 모든 수학을 순수 논리학으로 환원하고자 했습니다. 이로써 이른바 논리주의 프로그램이 개시되었습니다. 논리주의 프로그램의 첫 목표는 산술을 논리학으로 환원하는 것이었습니다. 산술이야말로 수학의 가장 기초적인 개념이기 때문이지요. 게다가 산술을 논리학으로 환원하면 해석학이나 기하학을 비롯한 나머지 수학은 어렵지 않게 환원할 수 있음이 알려져 있었습니다.
그러나 논리주의가 극복해야만 했던 가장 난감한 문제는 모순이었습니다. 논리학의 표현력과 무모순성 사이에는 트레이드오프 관계가 있는 듯했습니다. 예컨데 러셀은 모순을 피하기 위해 술어의 유형을 구분하는 접근법을 택했지만, 유형 논리는 산술을 환원하기에는 턱없이 표현력이 부족했습니다.
결국 수년에 걸친 논의 끝에 수학자들은 역설을 피하는 동시에 산술을 논리학으로 온전히 환원하는 것은 불가능하다는 결론에 대체로 합의했습니다. 논리주의의 폐기 이후 수학의 기초를 해명하는 작업은 힐베르트를 필두로 한 형식주의 프로그램이 이어받습니다.
수학을 논리학으로 환원하려는 논리주의와 달리 형식주의는 수학을 집합론으로 환원하고자 합니다. 논리학과 집합론의 차이는 미묘하지만 여기서 염두에 둘 차이는, 논리학의 공리는 누구나 인정할 수 있는 보편 원리여야 하는 한편 집합론의 공리는 다소 임의적(ad hoc)이어도 괜찮다는 점입니다.
예를 들어 “무한집합이 존재한다”는 논리학의 공리로 받아들여지기 힘듭니다. 유한한 대상만으로 이루어진 우주는 분명 논리적으로 가능하니까요. 하지만 집합론의 공리로 받아들이는 데에는 문제가 없습니다. 형식주의는 모순을 일으키지 않는 웬만한 공리는 받아들일 수 있습니다. 따라서 형식주의 프로그램의 목표는 두 가지입니다.
웬만해서는 아무 공리를 써도 괜찮으니 현대 수학을 완전히 환원하는 집합론을 구축할 것.
해당 집합론이 정말로 무모순적임을 증명할 것.
그러나...! 형식주의 프로그램 또한 치명타를 입고 맙니다. 1930년대에 괴델이 불완전성 정리를 발표한 것이죠.
(괴델의 제2불완전성 정리) 산술을 환원하는 무모순적인 이론은 스스로가 무모순적임을 증명할 수 없다.
이것이 말하는 바는 다름아닌 형식주의 프로그램의 2번 목표가 신기루라는 것입니다.
불완전성 정리 증명의 핵심은 괴델의 대각선 보조정리입니다. L이 산술을 환원할 수 있을 정도로 강력한 이론이라고 합시다. 대각선 보조정리에 따르면, ψ가 L에서 허용되는 술어일 때 다음을 만족하는 문장 φ가 존재합니다.
예컨데 ψ(x)가 “x는 한국어이다”라는 술어라고 합시다. 대각선 보조정리에 따르면 φ와 ψ(“φ”)의 진릿값이 같은 문장 φ가 존재합니다. 실제로 우리는 그런 문장을 찾을 수 있습니다. “이 문장은 한국어이다”가 그러한 예시이죠. “This sentence is in Korean”도 조건을 만족하고요.
대각선 보조정리를 증명하면 불완전성 정리는 어렵지 않게 얻을 수 있습니다. 하지만 여기에는 반전이 있습니다. 타르스키라는 논리학자는 대각선 보조정리가 불완전성 정리뿐 아닌 또다른 결론을 함의한다는 사실을 발견했습니다.
타르스키의 논증은 이렇습니다. 만약 언어 L이 “x는 참이다”라는 술어 T(x)를 허용한다면, 괴델의 대각선 보조정리에 ψ = ¬T, 즉 T의 부정을 대입함으로써 다음을 만족하는 문장 φ의 존재를 보일 수 있습니다.
L ⊢ φ ↔ ¬T("φ")
위 식의 우변이 의미하는 바를 풀어 쓰자면,
A. 이 문장은 B와 진릿값이 같다.
B. A는 참이 아니다.
이것은 다름아닌 거짓말쟁이 역설입니다! 따라서 귀류법에 의해 우리는 "모순이 없는 언어는 ‘참’에 대응하는 표현을 가질 수 없다"는 결론에 도달합니다. 이것이 타르스키의 참의 정의불가능성 정리입니다.
그런데 타르스키의 결론은 어딘가 모순적입니다. '참'이 정의불가능하다는 결론은 우리가 '참'이 무엇인지 모른다는 사실을 시사합니다. 그런데 '참'이 무엇인지도 모르는데 '참'의 정의불가능성을 증명하는 것이 어떻게 가능할까요? 마치 '부바'가 뭔지 모르면서 '부바'가 맛있음을 증명한 셈입니다.
여기서 우리의 이야기는 논리 및 언어철학으로 접어듭니다...만, 이미 글이 길어졌기 때문에 해당 떡밥과 관련해서는 다음 기회에 이야기해 보도록 하겠습니다. 좋은 연말 되세요!