Coq

✍ dations ◷ 2025-10-19 17:08: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 语言本身并非图灵完全。

相关

  • 砂眼砂眼可以指:
  • 奥布维拉奥布维拉战役是半岛战争里的其中一战。一支英国、西班牙、葡萄牙组成的多国部队在奥布维拉的一个西班牙小村庄与法国南方军(Armée du Midi)遭遇,大约位于西班牙巴达霍斯的堡垒
  • CWCW,等幅电波,在无线电通信中,特指等幅电报。由于是形如“1、0”的二进制信号,故一般利用摩尔斯电码发送信息。它通过电键控制发信机产生短信号"."(点)和长信号"--"(划),并利用其不同
  • 硫化锂硫化锂(Li2S),为锂的硫化物。白色至黄色晶体。在空气中吸收水分并水解,放出硫化氢气体。易溶于水,能溶于乙醇。具反萤石型结构。可被酸分解放出硫化氢;可与硝酸剧烈反应,但氢溴酸与
  • 瑟凯福尔维-纳吉·贝洛瑟凯福尔维-纳吉·贝洛(匈牙利语:Szőkefalvi-Nagy Béla,1913年7月29日-1998年12月21日),出生于克卢日-纳波卡,匈牙利数学家。他的父亲瑟凯福尔维-纳吉·久洛也是一位著名的数学家
  • 2008年格鲁吉亚总统选举2008年格鲁吉亚总统选举举办于2008年1月5日。这次选举本来应在2008年秋季举行,但由于2007年格鲁吉亚示威而提前举行。国会选举亦同时举行。选举结果是时任总统米哈伊·萨卡希
  • 一乐照雄一乐照雄(一楽照雄,1906年7月-1994年2月3日),德岛县人,日本农学家。1930年,毕业于东京帝国大学农业经济学科,进入产业组合中央金库(后为农林中央金库)工作。1958年转至全国农业协会任
  • 林沉默林沉默 (1959年- ),本名林承谟。云林县斗六市人。中国文化大学企管系毕业。曾担任《八掌溪》、《掌握》、《汉广》等社刊及蕃薯诗社的成员,也曾任《时报新闻周刊》的编辑主任
  • 亚美尼亚的库尔德人亚美尼亚的库尔德人,主要居住在亚美尼亚的西部地区。20世纪20年代,前苏联的库尔德人最初用亚美尼亚字母书写库尔德语,1927年开始用拉丁字母,1945年开始用西里尔字母写作,现在兼用
  • 沙丘 (2020年电影)《沙丘》(英语:)是一部2020年美国科幻电影,由丹尼·维勒纳夫执导,埃里克·罗斯(英语:Eric Roth)、乔·斯派茨(英语:Jon Spaihts)和导演本人共同编写剧本,剧情改编自法兰克·赫伯特的1965