fbpx
维基百科

构造演算

构造演算(CoC)是高阶有类型 lambda 演算,这里的类型是一级值。因此在 CoC 内有可能定义从整数到类型、从类型到类型的函数,同从整数到整数的函数一样。CoC 是强规范化的。

CoC 最初由 Thierry Coquand 开发。

CoC 是 Coq 定理证明器早期版本的基础;它后来的版本建造在归纳构造演算之上,这是带有对归纳数据类型的天然支持的 CoC 扩展。在最初的 CoC 中,归纳数据类型必须模拟为它们的多态解构函数。

构造演算的基础

构造演算可以被当作 Curry-Howard同构的扩展。Curry-Howard 同构把在简单类型 lambda 演算中项关联上在直觉命题逻辑中自然演绎证明。构造演算扩展了这个同构为在完全的直觉谓词逻辑中的证明,这包括了量化陈述(它也叫做"命题")的证明。

在构造演算中使用如下规则构造:

  • T 是项(也叫做类型
  • P 是项(也叫做命题,所有命题的类型)
  • 变量   是项
  • 如果    是项,则如下也是项
    •  
    • ( )
    • ( )

构造演算有 5 种对象类型:

  1. 证明,它是其类型都是命题的那些项
  2. 命题,也叫做小类型
  3. 谓词,它是返回命题的函数
  4. 大类型,它是谓词的类型。(P 是大类型的例子)
  5. T 自身,它是大类型的类型。

判断

在构造演算中,判断是类型推理:

 

它可以被读作蕴涵

如果变量   分别有类型  ,则项   有类型  

构造演算的有效判断是从推理规则集合可推导的。在下面,我们使用   来指示类型指派的序列  ,并使用 K 来指示要么 P 要么 T。我们将写   来指示“  有类型  ,和   有类型  ”。我们将写   来指示用项   代换在项   中变量   的结果。

推理规则用如下形式写成

 

它指示着

如果   是有效判断,则   也是。

构造演算的推理规则

  1.  

  2.  

  3.  

  4.  

定义逻辑运算

构造演算在引入基本算子的时候是非常简约的:唯一形成命题的逻辑算子是  。但是,这个唯一的算子足够定义所有其他逻辑算子:

 

定义数据类型

在构造演算中可以定义计算机科学中使用的基本数据类型:

布尔
 
自然数
 
乘积  
 
不交并  
 

参见

引用

  • Thierry Coquand and Gerard Huet: The Calculus of Constructions. Information and Computation, Vol. 76, Issue 2-3, 1988.
  • For a source freely accessible online, see Coquand and Huet: 。Technical Report 530, INRIA, Centre de Rocquencourt, 1986.
  • M. W. Bunder and Jonathan P. Seldin: Variants of the Basic Calculus of Constructions (页面存档备份,存于互联网档案馆)。2004.

构造演算, 是高阶有类型, lambda, 演算, 这里的类型是一级值, 因此在, 内有可能定义从整数到类型, 从类型到类型的函数, 同从整数到整数的函数一样, 是强规范化的, 最初由, thierry, coquand, 开发, 定理证明器早期版本的基础, 它后来的版本建造在归纳之上, 这是带有对归纳数据类型的天然支持的, 扩展, 在最初的, 归纳数据类型必须模拟为它们的多态解构函数, 目录, 的基础, 判断, 的推理规则, 定义逻辑运算, 定义数据类型, 参见, 引用的基础, 编辑可以被当作, curry, h. 构造演算 CoC 是高阶有类型 lambda 演算 这里的类型是一级值 因此在 CoC 内有可能定义从整数到类型 从类型到类型的函数 同从整数到整数的函数一样 CoC 是强规范化的 CoC 最初由 Thierry Coquand 开发 CoC 是 Coq 定理证明器早期版本的基础 它后来的版本建造在归纳构造演算之上 这是带有对归纳数据类型的天然支持的 CoC 扩展 在最初的 CoC 中 归纳数据类型必须模拟为它们的多态解构函数 目录 1 构造演算的基础 2 项 3 判断 4 构造演算的推理规则 5 定义逻辑运算 6 定义数据类型 7 参见 8 引用构造演算的基础 编辑构造演算可以被当作 Curry Howard同构的扩展 Curry Howard 同构把在简单类型 lambda 演算中项关联上在直觉命题逻辑中自然演绎证明 构造演算扩展了这个同构为在完全的直觉谓词逻辑中的证明 这包括了量化陈述 它也叫做 命题 的证明 项 编辑在构造演算中项使用如下规则构造 T 是项 也叫做类型 P 是项 也叫做命题 所有命题的类型 变量 x y z displaystyle x y z 是项 如果 A displaystyle A 和 B displaystyle B 是项 则如下也是项 A B displaystyle mathbf AB l x A B displaystyle mathbf lambda x A B x A B displaystyle forall x A B 构造演算有 5 种对象类型 证明 它是其类型都是命题的那些项 命题 也叫做小类型 谓词 它是返回命题的函数 大类型 它是谓词的类型 P 是大类型的例子 T 自身 它是大类型的类型 判断 编辑在构造演算中 判断是类型推理 x 1 A 1 x 2 A 2 t B displaystyle x 1 A 1 x 2 A 2 ldots vdash t B 它可以被读作蕴涵 如果变量 x 1 x 2 displaystyle x 1 x 2 ldots 分别有类型 A 1 A 2 displaystyle A 1 A 2 ldots 则项 t displaystyle t 有类型 B displaystyle B 构造演算的有效判断是从推理规则集合可推导的 在下面 我们使用 G displaystyle Gamma 来指示类型指派的序列 x 1 A 1 x 2 A 2 displaystyle x 1 A 1 x 2 A 2 ldots 并使用 K 来指示要么 P 要么 T 我们将写 A B C displaystyle A B C 来指示 A displaystyle A 有类型 B displaystyle B 和 B displaystyle B 有类型 C displaystyle C 我们将写 B x N displaystyle B x N 来指示用项 N displaystyle N 代换在项 B displaystyle B 中变量 x displaystyle x 的结果 推理规则用如下形式写成 G A B G C D displaystyle Gamma vdash A B over Gamma vdash C D 它指示着 如果 G A B displaystyle Gamma vdash A B 是有效判断 则 G C D displaystyle Gamma vdash C D 也是 构造演算的推理规则 编辑 P T displaystyle over vdash P T G A K G x A x A displaystyle Gamma vdash A K over Gamma x A vdash x A G x A t B K G l x A t x A B K displaystyle Gamma x A vdash t B K over Gamma vdash lambda x A t forall x A B K G M x A B G N A G M N B x N displaystyle Gamma vdash M forall x A B qquad qquad Gamma vdash N A over Gamma vdash MN B x N 定义逻辑运算 编辑构造演算在引入基本算子的时候是非常简约的 唯一形成命题的逻辑算子是 displaystyle forall 但是 这个唯一的算子足够定义所有其他逻辑算子 A B x A B x B A B C P A B C C A B C P A C B C C A C P A C x A B C P x A B C C displaystyle begin matrix A Rightarrow B amp equiv amp forall x A B amp x notin B A wedge B amp equiv amp forall C P A Rightarrow B Rightarrow C Rightarrow C amp A vee B amp equiv amp forall C P A Rightarrow C Rightarrow B Rightarrow C Rightarrow C amp neg A amp equiv amp forall C P A Rightarrow C amp exists x A B amp equiv amp forall C P forall x A B Rightarrow C Rightarrow C amp end matrix 定义数据类型 编辑在构造演算中可以定义计算机科学中使用的基本数据类型 布尔 A P A A A displaystyle forall A P A Rightarrow A Rightarrow A 自然数 A P A A A A displaystyle forall A P A Rightarrow A Rightarrow A Rightarrow A 乘积 A B displaystyle A times B A B displaystyle A wedge B 不交并 A B displaystyle A B A B displaystyle A vee B 参见 编辑Curry Howard同构 直觉逻辑 直觉类型论 Lambda 演算 Lambda立方体 系统F 有类型 lambda 演算引用 编辑Thierry Coquand and Gerard Huet The Calculus of Constructions Information and Computation Vol 76 Issue 2 3 1988 For a source freely accessible online see Coquand and Huet The calculus of constructions Technical Report 530 INRIA Centre de Rocquencourt 1986 M W Bunder and Jonathan P Seldin Variants of the Basic Calculus of Constructions 页面存档备份 存于互联网档案馆 2004 取自 https zh wikipedia org w index php title 构造演算 amp oldid 69367854, 维基百科,wiki,书籍,书籍,图书馆,

文章

,阅读,下载,免费,免费下载,mp3,视频,mp4,3gp, jpg,jpeg,gif,png,图片,音乐,歌曲,电影,书籍,游戏,游戏。