증명 보조기(Proof assistant)
사람이 증명의 뼈대를 대화하듯 적으면, 컴퓨터가 모든 단계를 논리 규칙까지 내려가 검사하는 프로그램. 믿어야 할 것을 작은 검사 핵심(커널) 하나로 줄인다.
'A이고 B이면, B이고 A이다'를 증명한다고 해 봅시다. 종이에서는 한 줄로 끝납니다. 증명 보조기 Lean에서는 아래처럼 한 걸음씩 적고, 걸음마다 컴퓨터가 지금 가진 가정과 남은 목표를 보여 줍니다. 목표가 모두 사라지면 증명이 끝납니다. 끝에 남는 것은
증명할 명제는
믿어야 할 것을 줄이기. 증명 보조기에서 사람이 적는 것은 대개 전술(tactic)입니다. 'intro h'나 'induction n'처럼 증명을 어떻게 만들지 지시하는 명령이고, 자동화된 전술은 긴 계산이나 뻔한 단계를 대신 채웁니다. 전술을 실행하는 프로그램은 크고 복잡해서 틀릴 수 있습니다. 그래서 전술은 결국 증명 항을 내놓고, 그 항을 작은 검사 핵심(커널)이 타입 규칙대로 다시 검사합니다. 이 구조 덕분에 믿어야 할 코드가 커널 하나로 줄어듭니다. 증명을 작은 독립(independence) 프로그램이 확인할 수 있는 형태로 남겨야 한다는 이 원칙을 더 브라위언 기준(de Bruijn criterion)이라 부릅니다(Automath를 만든 더 브라위언의 이름을 딴 것입니다). 다른 길은 1970년대 밀너의 LCF가 연 방식입니다. '정리'를 하나의 추상 타입으로 두고 그 값을 만드는 함수(function)를 추론 규칙들로만 제한하면, 아무리 복잡한 전술을 써도 규칙을 우회해 정리를 만들 수 없습니다. 이 전술들을 안전하게 적으려고 만든 언어가 ML이고, ML을 위해 다듬어진 것이 힌들리–밀너 타입 추론(type inference)입니다.
증명 보조기는 바탕으로 삼는 논리에 따라 갈래가 나뉩니다. Automath(1967년 무렵), Coq(1989년 첫 공개, 2025년 Rocq로 이름을 바꿈), Agda, Lean(2013년 시작)은 의존 타입(dependent type) 이론 위에 서 있습니다. HOL 계열(HOL Light, Isabelle/HOL)은 처치의 단순 타입 이론(type theory)에서 나온 고차 논리를, 폴란드의 Mizar(1973년 시작)는 집합론(set theory)을 씁니다. 어느 쪽이든 원리는 같습니다. 증명은 공리(axiom)에서 출발해 추론 규칙을 한 번씩 적용해 가는 유한한 기호열이고, 규칙을 지켰는지 확인하는 일은 기계적입니다.
검사할 수 있는 것과 없는 것. 증명을 검사하는 일은 기계적이지만 증명을 찾는 일은 다릅니다. 1차 논리(first-order logic)의 문장이 증명 가능한지 판정하는 일반적인 방법이 없다는 것이 1936년 처치와 튜링의 결과입니다(정지 문제(halting problem)와 같은 종류의 불가능성). 증명이 있다면 기호열을 짧은 것부터 차례로 검사해 언젠가 찾을 수는 있지만, 증명이 없을 때는 이 탐색이 끝나지 않고, 있을 때도 대개 너무 오래 걸립니다. 그래서 증명 보조기에 들어가는 증명의 뼈대는 대부분 사람이 적습니다. 답을 확인하기는 쉬운데 찾기는 어려워 보인다는 이 모양은 P 대 NP 문제(P versus NP problem)의 모양과도 닮았습니다. 또 검사를 통과한 증명이 보증하는 것은 '적어 넣은 형식 명제가 체계의 공리에서 따라 나온다'까지입니다. 형식 명제가 사람이 뜻한 명제와 다르게 적혔다면, 예컨대 정의를 잘못 옮겼다면 검사는 그것을 잡지 못합니다. 커널이나 하드웨어의 결함도 드물지만 실제로 발견되어 고쳐진 적이 있습니다. 괴델의 불완전성 정리(Gödel's incompleteness theorems)도 그대로 적용됩니다. 증명 보조기의 논리처럼 산술을 담을 만큼 강한 체계는, 모순이 없다면 참이지만 체계 안에서 증명할 수 없는 문장을 가지며 자기의 무모순성(consistency)을 증명하지 못합니다.
이정표. 4색 정리(four color theorem)는 1976년 케네스 아펠과 볼프강 하켄이 컴퓨터로 수많은 배치를 확인해 증명했지만, 사람이 다 따라갈 수 없는 계산 때문에 오래 의심을 받았습니다. 2005년 조르주 공티에와 뱅자맹 베르네르가 증명 전체를 Coq로 형식화했고, 그 뒤로는 경우를 확인하는 여러 특수한 프로그램이 아니라 Coq의 커널만 믿으면 됩니다. 공티에가 이끈 팀은 2012년 9월, 원래 논문이 255쪽에 이르던 파이트–톰프슨 정리(원소(element)가 홀수 개인 유한군(finite group)은 가해군(solvable group), 곧 아벨군 조각들로 차례로 쪼갤 수 있는 군이다)의 형식화를 6년 만에 마쳤습니다. 증명 스크립트만 15만 줄이 넘었습니다.
같은 크기의 공을 가장 빽빽하게 쌓는 방법은 과일 가게에서 오렌지를 쌓는 방식(공이 차지하는 부피의 비율
기계가 찾은 증명. 형식 증명은 기계로 확인할 수 있다는 점 때문에 인공지능(artificial intelligence) 연구와도 이어집니다. 언어 모델(language model)이 자연어로 쓴 증명은 그럴듯해도 틀릴 수 있지만, 커널을 통과한 형식 증명은 적어 넣은 명제에 관한 한 그런 걱정을 거의 없애 줍니다. 2024년 7월 구글 딥마인드는 강화 학습(reinforcement learning)으로 훈련한 AlphaProof가 그해 국제 수학 올림피아드 6문제 가운데 3문제의 Lean 증명을 찾았고, 기하(geometry) 전용 체계 AlphaGeometry 2가 1문제를 더 풀어 42점 만점에 28점, 은메달 수준에 이르렀다고 발표했습니다. 다만 문제를 형식 명제로 옮긴 것은 사람이었습니다. 또 발표에 따르면 한 문제는 몇 분 만에 풀었지만 나머지에는 사흘까지 걸렸습니다(참가자에게는 이틀 동안 하루 4시간 30분이 주어집니다). 자연어 수학을 형식 명제로 옮기는 일(자동 형식화, autoformalization)은 아직 열린 과제입니다.
흔한 오해. '컴퓨터가 증명했다'와 '컴퓨터가 검사했다'는 다릅니다. 위의 이정표는 대부분 사람이 먼저 증명을 알고, 그것을 몇 년에 걸쳐 기계가 읽을 수 있게 옮긴 것입니다. 형식화의 가치는 새 정리를 찾는 데보다 오류를 잡고, 증명에 쓰인 가정을 빠짐없이 드러내고, 다시 쓸 수 있는 정의와 정리의 라이브러리(Lean의 mathlib 같은)를 쌓는 데 있습니다. 또 형식 증명도 '100% 확실'한 것은 아닙니다. 커널, 하드웨어, 그리고 형식 명제를 옮긴 사람의 판단은 여전히 믿어야 합니다. 다만 믿어야 할 것이 작고 분명해집니다.
이어지는 곳. 증명 검사가 타입 검사가 되는 원리는 커리–하워드 대응이고, Coq·Lean·Agda가 쓰는 논리는 의존 타입 이론입니다. 위 그림의 두 번째 증명은 의존 타입 페이지의 되부르는 증명과 같은 모양이라, 수학적 귀납법(mathematical induction)이 도구 안에서 어떻게 보이는지 견주어 볼 수 있습니다. 일가성을 계산하는 입방 타입 이론은 Cubical Agda로 구현되어 호모토피 타입 이론(homotopy type theory)을 직접 실험하게 해 줍니다. 1976년의 4색 정리가 불러일으킨 '컴퓨터 증명을 믿을 수 있는가'라는 물음에 약 30년 뒤 나온 답이 형식화였습니다. 증명을 찾는 일의 한계는 정지 문제와 불완전성 정리(incompleteness theorem)가 긋습니다. 형식 체계(formal system)로 수학 전체를 세우고 그 무모순성을 보이려던 힐베르트의 계획은 괴델의 정리 때문에 원래 모습대로는 이룰 수 없게 되었지만(수학 기초론 논쟁, debate on the foundations of mathematics), '증명은 기계가 확인할 수 있는 기호열'이라는 그의 생각은 증명 보조기로 살아 있습니다. 람다 계산(lambda calculus)의 항이 증명이 되고, 그 항을 검사하는 일이 타입 이론의 규칙을 따르는 일입니다. 반복문 옆에 불변식과 변량을 적는 다프니 같은 검증 도구는 호어 논리(Hoare logic)의 방식을 따르고, Lean과 Rocq가 귀납적으로 정의한 타입마다 자동으로 만드는 재귀자(recursor)는 시작 대수의 fold를 결과의 타입이 입력에 따라 달라지도록 넓힌 것입니다.
이 개념이 나오는 긴 글
이 개념을 언급하는 페이지
- 4색 정리
… 배치를 633개로 줄인 더 간결한 증명(역시 컴퓨터가 필요)을 내놓았고, 2005년에는 조르주 공티에가증명 보조기Coq(증명의 모든 단계를 논리 규칙에 맞는지 기계적으로 확인하는 프로그램)로 증명 전체를 형식 …
- 람다 계산
… 끌어내는 추론에 대응합니다. 이 대응은 Coq(Rocq)나 Lean처럼 컴퓨터로 증명을 검사하는 도구(증명 보조기)의 바탕이 되었습니다. 그런 도구가 다루는 형식 증명으로도 넘을 수 없는 한계를 말해 주는 것이 ⟦괴델의 …
- 수학적 귀납법
… 안에 같은 모양을 품는 대수적 자료형에서는 같은 원리를 자료의 짜임새를 따라 쓰는데(구조적 귀납법),증명 보조기는 이런 귀납 증명의 모든 단계를 기계로 검사합니다. 조심할 점. '모든 말은 색이 같다'는 유명한 가짜 …
- 공리와 공준
… 그런 체계에서 쓴 증명을 컴퓨터가 공리와 추론 규칙까지 내려가 한 단계씩 검사하게 하는 프로그램이증명 보조기입니다. 참과 거짓의 계산 규칙은 불 대수에, 공리에서 수를 쌓아 올리는 과정은 수 체계에 …
- 수학 기초론 논쟁
… 커리–하워드 대응을 거쳐 컴퓨터 과학의 전통으로 이어졌고, 오늘날 컴퓨터가 증명의 모든 단계를 검사하는증명 보조기의 논리적 바탕 가운데 하나가 되었습니다. 이어지는 곳. 역설과 불완전성과 정지 문제를 한 줄로 꿰는 …
- 타입 이론
… 주는 구성이므로 논리는 직관주의 논리가 됩니다. 타입 검사기가 증명 검사기가 되는 까닭에, 오늘날의증명 보조기는 대부분 타입 이론 위에 서 있습니다. 셋째는 끝남입니다. 단순 타입 람다 계산과 시스템 F에서는 타입이 …
- 단순 타입 람다 계산
… 읽으면 더 심각합니다. 이 항은 아무 명제 A의 '증명'이 되어 버리므로, 논리로서는 모순입니다.증명 보조기가 되부름을 허락하되 끝남이 보장되는 모양(인자가 매번 작아지는 되부름)만 받아들이는 까닭이 이것입니다. …
- 커리–하워드 대응
… 그것이 의존 타입과 수학적 귀납법을 되부름 프로그램으로 쓰는 방법입니다. 이 대응을 도구로 만든 것이증명 보조기이고, Coq(Rocq)와 Lean에서 증명을 검사하는 일은 타입 검사입니다. 합과 곱을 논리 대신 개수로 …
- 직관주의 논리
… 상당 부분을 구성적으로 다시 세웠고, 그렇게 얻은 정리의 증명에서는 계산 방법을 뽑아낼 수 있습니다.증명 보조기Coq(Rocq)와 Agda는 기본 논리가 직관주의이고 배중률은 필요할 때 공리로 더합니다. Lean은 …
- 타입 추론: 힌들리–밀너
… 거기서 타입만 보고 얻는 공짜 정리가 다형성의 힘을 보여 줍니다. ML은 원래 밀너가 에든버러에서 만든증명 보조기LCF의 증명 전술을 적는 언어로 태어났으니, 타입 추론과 증명 검사는 처음부터 한집에서 자랐습니다. 가장 …
- 의존 타입
… 묻는 데서 호모토피 타입 이론이 시작되고, 이런 체계를 실제로 돌려 증명을 검사하는 도구가증명 보조기입니다. 섬유를 세는 그림은 대수적 자료형의 셈을 넓힌 것입니다. 우주를 층으로 나누는 방법은 ⟦러셀의 …
- 호모토피 타입 이론
… 표현 바꾸기: '동형인 것은 같다'를 규칙으로 삼는 일가성은 이 큰 생각을 기초에 새겨 넣은 것입니다.증명 보조기: 이런 증명을 실제로 컴퓨터로 검사하는 도구입니다. 수학 기초론 논쟁: 집합론 대신 무엇을 수학의 …
- 데카르트 닫힌 범주
… 따라 달라지는 의존 타입은 지수 대상을 Π 타입으로 넓힌 것이고, 그 위에서 증명을 검사하는 도구가증명 보조기입니다. 함수 집합의 크기 |B^A| = |B|^{|A|} 에서 A를 무한으로 보내면 멱집합과 …
- 추론 모델과 테스트 시점 계산
… 이것은 전직 메달리스트 세 명이 채점한 결과였습니다. 형식 증명을 쓰던 2024년의 알파프루프(증명 보조기린)와 달리 둘 다 자연어 풀이였습니다. 2026년 IMO에서는 AFP 보도에 따르면 화웨이와 샤오훙수의 …
- 언어 모델의 발전사: RLHF 이후
… 2는 그해 국제수학올림피아드 문제로 42점 가운데 28점(은메달 기준)을 받았습니다. 알파프루프는증명 보조기린으로 형식 증명을 썼는데, 문제를 린으로 옮기는 일은 사람이 했고 어떤 문제에는 대회 시간보다 훨씬 긴 …
- 호어 논리와 프로그램 검증
… 선형 논리와 닮았고, 명세를 타입에 적어 증명과 프로그램을 한 몸으로 만드는 다른 길은 의존 타입과증명 보조기에 있습니다.
- F-대수와 fold: 재귀와 귀납의 범주론
… 유한한 값의 구조를 따라 한 칸씩 내려가므로, 바꿔 끼운 연산들이 끝나기만 하면 언제나 끝납니다.증명 보조기가 구조적 재귀만 그대로 받아들이는 까닭이 이것입니다. 시작 대수에는 놀라운 성질이 하나 더 있습니다. …
- 페르마의 마지막 정리
… 기대고 있습니다. 이런 증명을 믿을 수 있게 하는 방법의 하나가 모든 단계를 컴퓨터 프로그램이 검사하는증명 보조기로 옮기는 것입니다. 2024년 10월 영국 임피리얼 칼리지의 케빈 버저드는 이 증명을 사람들이 함께 증명 …