読み方:こきゅー《coenzyme Q》ユビキノン のこと。Weblio国語辞典では「coq」の意味や使い方、用例、類似表現などを解説しています。">

「coq」の意味や使い方 わかりやすく解説 Weblio辞書 (original) (raw)

Coq

作者 フランス国立情報学自動制御研究所, パリ第7大学, エコール・ポリテクニーク, パリ第11大学, リヨン高等師範学校
初版 4.10 (1989年)
最新版 9.0.0 / 2025年3月12日 (4か月前) (2025-03-12)[1]
リポジトリ github.com/coq/coq
プログラミング言語 OCaml
対応OS マルチプラットフォーム
対応言語 多言語対応
種別 定理証明支援系
ライセンス GNU LGPL 2.1
公式サイト The Coq Proof Assistant
テンプレートを表示

Coqは、証明支援システムの一つ。Coqの核はプログラミング言語Gallina(英語版)を用いる。フランス国立情報学自動制御研究所のPI.R2チーム(PPS研究所内にある)が、エコール・ポリテクニークフランス国立工芸院パリ第7大学パリ第11大学と(かつてリヨン高等師範学校とも)共同して開発している。Hugo Herbelinが事実上の開発代表者である。

2023年10月11日、開発チームは名称をCoqからThe Rocq Proverに変更すると発表し、コードベースやウェブサイトなどの更新を開始した[2]

特徴

CoqはCalculus of constructions(英語版)という高階型システム(Thierry CoquandとGérard Huetが1984年に創始したもので、英語では_CoC_と略せてシステム名Coqに至る)に基づく。正しい証明は正しく型がつくラムダ式であるというカリー=ハワード同型対応を利用しているので、Coqの証明言語は型付きラムダ計算の一種である。1991年以降Coqが用いているCalculus of Constructionsの変種は、Christine Paulin-Mohringによるもので、帰納的構成を直接含み、Calculus of Inductive Constructions(CIC)という名前がついている。

Coqには

がある。

加えてCoqには証明の自動化機能が増えている。中にはomegaタクティクというものがあり、プレスバーガー算術の大部分を決定できる。

Coqの最大の達成の中には、

がある。

CoqはGNU LGPLライセンスで配布されている自由ソフトウェアである。

Ssreflect拡張

Georges GonthierのチームがSsreflect(small scale reflectionの略)というCoqの拡張を開発している。拡張はreflection用の機能にとどまらず、Coqの多くのタクティクの改良版を提供する上に、証明の保守性を高めるコーディング慣習も含んでいる。 Ssreflectの機能には下のようなものがある。

SsreflectはCeCill-BとCecill-2.0でデュアルライセンスされていて、自由に利用できる。Ssreflectの最新版はCoq 8.4上で動く[6]

脚注

  1. ^Release Rocq 9.0.0”. 2025年3月23日閲覧。
  2. ^Change of Name: Coq -> The Rocq Prover”. 2025年3月23日閲覧。
  3. ^ A computer-checked proof of the Four Colour Theorem Georges Gonthier
  4. ^ CompCertのページ(英語)
  5. ^ 証明完了のアナウンス(英語)
  6. ^ Ssreflectの配布元(英語)

参考文献

関連項目

外部リンク