Coq

✍ dations ◷ 2025-11-09 14:03:37 #程序设计语言,函数式编程语言,1984年建立的编程语言

Coq 是一个交互式的定理证明辅助工具。它允许用户输入包含数学断言的表达式、机械化地对这些断言执行检查、帮助构造形式化的证明、并从其形式化描述的构造性证明中提取出可验证的(certified)程序。Coq 的理论基础是归纳构造演算(calculus of inductive constructions)、一种构造演算(calculus of constructions)的衍生理论。Coq 并非一个自动化定理机器证明语言;然而,它提供了自动化定理证明的策略(tactics)和不同的决策过程。

Coq 同时还是一个依赖类型的函数式编程语言。它由法国PPS实验室的PI.R2团队研究开发,该团队由INRIA、巴黎综合理工学院、巴黎第十一大学、巴黎第七大学和法国国家科学研究中心组成。此前里昂高等师范学校亦曾参与开发。Coq 项目当前由 Gérard Huet、Christine Paulin 和 Hugo Herbelin领导。Coq 使用 OCaml 以及少部分 C 实现。

单词 在法语中意为“公鸡”,此命名体现了法国在研究活动中使用动物名称命名工具的传统。 最初,它被简单地称作 Coc,意即构造演算(calculus of constructions)的缩写,同时也暗含了 Thierry Coquand(与 Gérard Huet 共同提出了前述的构造演算)的姓氏。

Coq 自身提供了一套规范语言 Gallina(gallina 在西班牙语中意为“母鸡”)。使用 Gallina 书写的程序具有规范化性质——它们总是会终止。此性质使之避开了停机问题。同时,这也使得 Coq 语言本身并非图灵完全。

相关

  • 欧亚板块欧亚板块(英语:Eurasian Plate)为包括大部分欧亚地区的板块,但不含括南亚的印度半岛(印度次大陆)、西南亚的阿拉伯半岛(阿拉伯次大陆)以及东西伯利亚的上扬斯克山脉以东(属鄂霍次克板
  • 路易斯·卡罗查尔斯·路特维奇·道奇森(英语:Charles Lutwidge Dodgson,1832年1月27日-1898年1月14日),笔名路易斯·卡罗(Lewis Carroll),英国作家、数学家、逻辑学家、摄影家,以儿童文学作品《爱
  • apteproaptepro株式会社(日语:アプトプロ 株式会社,英语:aptepro Co., Ltd.)是日本的经纪公司,主要经营声优事业。此公司由身任音响监督的龟山俊树设立,为同样由龟山担任代表人的grooove的
  • 卡莎规则卡莎规则(英语:Kasha's rule)是光化学中有关激发态分子的重要原理。卡莎规则指出,对于多重态的分子,光子仅能由最低激发态发射。此光子可以以荧光或者磷光的形式发射。因此,发射光
  • 丹尼斯·斯金纳丹尼斯·爱德华·斯金纳(英语:Dennis Edward Skinner,1932年2月11日-),英国政客,前任下议院议员,因为在国会的所作所为反叛,被人冠以“保素华怪兽”(Beast of Bolsolver) 之名。斯金
  • 泰范·塔什德米尔泰范·塔什德米尔(土耳其语:Tayfun Taşdemir,1975年11月5日-),是一名土耳其职业开仑台球运动员,专门从事三颗星项目。泰范·塔什德米尔出生于土耳其东部的穆什。他毕业于马尔马拉
  • 柯锡杰《转动镜头的顽童-柯锡杰》 《柯锡杰摄影五十年精选》 《心的视界:柯锡杰的摄影美学》 《家乡人》 《柯锡杰的镜头与生命之旅》 《宇宙游子-现代摄影第一人》 《给我一个家》
  • 长模式在x86-64处理器架构中,当处于长模式(Long mode)时,64位应用程序(或者是操作系统)可以使用64位指令和寄存器,而32位程序将以一种兼容子模式运行。虚拟86模式在长模式下不可用,也就是
  • 弗洛拉·芬奇弗洛拉·芬奇(Flora Finch,1867年6月17日-1940年1月4日),是一名英国演员,出演300多部无声电影。早年出演一些音乐剧,并在剧院工作。1908年,加入沃格拉夫电影公司(英语:American Mutosc
  • 哈里·希勒哈利·朱利叶斯·希勒(英语:Harry Julius Shearer,1943年12月23日-)是一名美国演员、喜剧演员、作家、配音演员。他在动画片《辛普森一家》中多样的配音最广为人知。他为蒙哥马利