증명 보조기

컴퓨터 과학 및 수리 논리학에서 **증명 보조기** 또는 **대화형 정리 증명기**는 인간-기계 협업에 의한 형식 증명을 보조하는 소프트웨어 도구이다. 증명 보조기는 대화형 증명 편집기 또는 기타 인터페이스가 포함하며, 이를 통해 인간의 증명 검색을 돕는다. 또한 증명 보조기는 증명의 세부 정보를 컴퓨터에 저장하고, 증명의 일부 단계를 컴퓨터로 계산한다.
# 시스템 비교
{| class="wikitable" ! rowspan="2" |이름 ! rowspan="2" |마지막 버전 ! rowspan="2" |개발자 ! rowspan="2" |구현 언어 ! colspan="6" |기능 |- !고차 논리 !Dependent types !Small kernel !자동 정리 증명 !Proof by reflection !Code generation |- |ACL2 |8.3 |Matt Kaufmann and J Strother Moore |커먼 리스프|| No || Untyped || No || Yes || Yeschapter-url=http://www.cs.utexas.edu/~moore/publications/meta-05.pdf || Already executable |- |Agda |2.6.2 |Ulf Norell, Nils Anders Danielsson, and Andreas Abel (Chalmers and Gothenburg) |하스켈|| Yes || Yes || Yes || No || Partial || Already executable |- |Albatross |0.4 |Helmut Brandl |OCaml|| Yes || No || Yes || Yes || 알 수 없음 || not yet Implemented |- |Coq |8.13.2 |INRIA |OCaml|| Yes || Yes || Yes || Yes || Yes || Yes |- |F* |repository |Microsoft Research and INRIA |F*|| Yes || Yes || No || Yes || YesSearch for "proofs by reflection": 1803.06547 || Yes |- |HOL Light |repository |John Harrison |OCaml|| Yes || No || Yes || Yes || No || No |- |HOL4 |Kananaskis-13 (or repo) |Michael Norrish, Konrad Slind, and others |표준 ML|| Yes || No || Yes || Yes || No || Yes |- |Idris |2 0.4.0. |Edwin Brady |Idris|| Yes || Yes || Yes || 알 수 없음 || Partial || Yes |- |Isabelle |Isabelle2021 (February 2021) |Larry Paulson (케임브리지 대학교), Tobias Nipkow (뮌헨 공과대학교) and Makarius Wenzel |표준 ML, Scala|| Yes || No || Yes || Yes || Yes || Yes |- |Lean |v3.4.2 (official release)웹사이트=GitHub v3.39.1 (community release)웹사이트=GitHub v4.0.0-m3 (pre-release)웹사이트=GitHub |마이크로소프트 리서치 |C++ |Yes |Yes |Yes |Yes |Yes |알 수 없음 |- |LEGO (레고와 관련 없음) |1.3.1 |Randy Pollack (Edinburgh) |표준 ML|| Yes || Yes || Yes || No || No || No |- |Mizar |8.1.05 |비아위스토크 대학 |Free Pascal|| Partial || Yes || No || No || No || No |- |NuPRL |5 |코넬 대학교 |커먼 리스프|| Yes || Yes || Yes || Yes || 알 수 없음 || Yes |- |PVS |6.0 |SRI International |커먼 리스프|| Yes || Yes || No || Yes || No || 알 수 없음 |- |Twelf |1.7.1 |Frank Pfenning and Carsten Schürmann |표준 ML|| Yes || Yes || 알 수 없음 || No || No || 알 수 없음 |} * ACL2– Boyer-Moore 전통의 프로그래밍 언어, 1차 논리 이론 및 정리 증명기(대화형 모드와 자동 모드 모두 포함). * Coq- 수학적 주장의 표현을 허용하고, 이러한 주장의 증명을 기계적으로 확인하고, 형식적 증명을 찾는 데 도움을 주고, 형식 사양의 구성적 증명에서 인증된 프로그램을 추출한다. * HOL 정리 증명기– 궁극적으로 LCF 정리 증명기에서 파생된 도구 제품군이다. 이러한 시스템에서 논리적 핵심은 프로그래밍 언어의 라이브러리이다. 정리는 언어의 새로운 요소를 나타내며 논리적 정확성을 보장하는 "전략(strategy)"을 통해서만 도입될 수 있다. 전략 구성을 통해 사용자는 시스템과의 상호 작용이 비교적 적은 중요한 증명을 생성할 수 있다. 여기에 포함된 증명 보조기들은 다음과 같다. ** HOL4– 아직 활발히 개발 중인 "기본 자손". 모스크바 ML 및 Poly/ML 모두 지원 . BSD 스타일 라이센스가 있다. ** HOL Light – 번성하는 "미니멀리스트 포크". OCaml 기반. ** ProofPower – 독점이 된 다음 오픈 소스로 돌아 왔다. 표준 ML을 기반으로 한다. * IMPS, 대화형 수학 증명 시스템이름3=F. Javier * Isabelle은 HOL의 후속인 대화식 정리 증명자이다. 주요 코드 기반은 BSD 라이선스이지만 Isabelle 배포판은 다른 라이선스를 가진 많은 애드온 도구를 번들로 제공한다. * Jape – 자바 기반. * Lean * LEGO * Matita – 귀납적 구성의 미적분에 기반한 조명 시스템. * MINLOG – 1차 최소 논리를 기반으로 하는 증명 보조기. * Mizar – 자연 연역 스타일의 1차 논리와 타르스키-그로텐디크 집합론을 기반으로 하는 증명 보조기. * PhoX – 확장 가능한 고차 논리에 기반한 증명 보조기. * 프로토타입 검증 시스템 (PVS) – 고차 논리에 기반한 증명 언어 및 시스템. * TPS 및 ETPS – 단순 형식 람다 대수의 독립적인 공식화와 구현을 기반으로 하는 대화형 증명 보조기. * Typelab * Yarrow url=https://web.archive.org/web/20220527220519/https://www.cs.ru.nl/~janz/yarrow/ 정리 증명기 박물관은 중요한 문화/과학적 인공물인 정리 증명 시스템의 향후 분석을 위해 소스를 보존하기 위한 이니셔티브이다. 위에서 언급한 많은 시스템의 소스가 여기에 있다.
# 사용자 인터페이스
증명 보조기를 위한 인기 있는 프론트엔드는 에든버러 대학교에서 개발된 Emacs 기반 Proof General이다. Coq에는 OCaml/GTK를 기반으로 하는 CoqIDE가 포함되어 있다. Isabelle에는 jEdit 및 문서 지향 증명 처리를 위한 Isabelle/Scala 인프라를 기반으로 하는 Isabelle/jEdit가 포함되어 있다. Coq url=https://web.archive.org/web/20211204100900/https://marketplace.visualstudio.com/items?itemName=siegebell.vscoq, Isabelle의 비주얼 스튜디오 코드 확장도 개발되었다.확인날짜=2 November 2019
## 카탈로그
* 범주별 디지털 수학: Tactic Provers * 자동 연역 체계 및 그룹 * 정리 증명 및 자동 추론 시스템 * 기존의 기계화 추론 시스템 데이터베이스 * NuPRL: 기타 시스템 url=https://web.archive.org/web/20220522101305/http://www.nuprl.org/Intro/others.html * 특정 논리적 프레임워크 및 구현 * DMOZ : 과학: 수학: 논리 및 기초: 계산 논리: 논리 프레임워크 url=https://web.archive.org/web/20170308171141/http://www.dmoz.org/Science/Math/Logic_and_Foundations/Computational_Logic/Logical_Frameworks/ 위키데이터 속성 추적 분류:논리학 분류:컴퓨터 과학 분류:컴퓨터 과학 내 논리