直觉类型论

✍ dations ◷ 2025-06-07 11:07:55 #直觉类型论
直觉类型论(Intuitionistic type theory)、或构造类型论、或Martin-Löf 类型论、或就叫类型论是基于数学构造主义的函数式编程语言、逻辑和集合论。直觉类型论由瑞典数学家和哲学家 Per Martin-Löf 在1972年介入。 Martin-Löf 已经多次修改了它的提议;先是非直谓性的而后是直谓性的,先是外延的而后是内涵的类型论变体。直觉类型论基于的是命题和类型的同一: 一个命题同一于它的证明的类型。这种同一通常叫做Curry-Howard同构,它最初公式化了命题逻辑和简单类型 lambda 演算。类型论通过介入包含着值的依赖类型把这种同一扩展到谓词逻辑。类型论内在化了 Brouwer、Heyting 和 Kolmogorov 提议的叫做 BHK释义的直觉逻辑释义。类型论的类型扮演了类似于集合在集合论的角色,但是在类型论中的函数总是可计算的。在类型论的上下文中,连结词是可能使用已给定的类型而构造类型的一种方式。类型论的基本连结词有:Π {displaystyle Pi } -类型,也叫做依赖函数类型,一般化了普通的函数空间,建模其结果的类型可以随它们的输入而变化的函数,比如,对实数的 n {displaystyle n} -元组写为 Vec ( R , n ) {displaystyle {mbox{Vec}}({mathbb {R} },n)} ,则 Π n : N . Vec ( R , n ) {displaystyle Pi n:{mathbb {N} }.{mbox{Vec}}({mathbb {R} },n)} 表示对给定的自然数返回这个大小的实数元组的函数的类型。在值域类型实际上不依赖于输入的时候,普通函数空间作为特殊情况出现,比如 Π n : N . R {displaystyle Pi n:{mathbb {N} }.{mathbb {R} }} 是从自然数到实数的函数的类型,它也写为 N → R {displaystyle {mathbb {N} }to {mathbb {R} }} 。使用 Curry-Howard同构, Π {displaystyle Pi } -类型还充当建模蕴涵和全称量化: 比如,居留于 Π m , n : N . m + n = n + m {displaystyle Pi m,n:{mathbb {N} }.m+n=n+m} 的一个项,它对任何一对自然数的函数指派加法对这个数对是交换性的证明,并因此可以被当作加法对于所有自然数是交换性的一个证明。Σ {displaystyle Sigma } -类型,也叫做依赖乘积类型,一般化了普通的笛卡尔积,建模第二个构件的类型依赖于第一个构件的有序对,比如类型 Σ n : N . Vec ( R , n ) {displaystyle Sigma n:{mathbb {N} }.{mbox{Vec}}({mathbb {R} },n)} 表示自然数和这个大小的实数的元组的有序对的类型,就是说,这个类型可以用来建模任意长度的序列(通常叫做列表)。在第二个构件的类型实际上不依赖于第一个构件的时候,常规的笛卡尔积类型作为特殊情况出现,比如 Σ n : N . R {displaystyle Sigma n:{mathbb {N} }.{mathbb {R} }} 是自然数和实数的有序对的类型,它也写为 N × R {displaystyle {mathbb {N} }times {mathbb {R} }} 。再次使用 Curry-Howard同构, Σ {displaystyle Sigma } -类型也充当建模合取和存在量化。特别重要的是 0 {displaystyle 0} (空类型)、 1 {displaystyle 1} (单位类型)和 2 {displaystyle 2} (布尔值或真值)。再次用到 Curry-Howard同构, 0 {displaystyle 0} 表示假而 1 {displaystyle 1} 表示真。使用有限类型,我们可以定义否定为 ¬ A = A → 0 {displaystyle neg A=Ato 0} ,服从Curry-Howard同构,不相交并集也表示析取,它可以定义为 A + B = Σ b : 2. if b then A else B {displaystyle A+B=Sigma b:2.{mbox{if}},b,{mbox{then}},A,{mbox{else}},B} 。给定 a , b : A {displaystyle a,b:A} ,则 a = b {displaystyle a=b} 是 a {displaystyle a} 等于 b {displaystyle b} 的等式证明。只有一个(规范的) a = b {displaystyle a=b} 的居留,并且这是自反性 refl : Π a : A . a = a {displaystyle {mbox{refl}}:Pi a:A.a=a} 的证明。归纳类型的基本例子是自然数 N {displaystyle mathbb {N} } 的类型,它是通过 0 : N {displaystyle 0:{mathbb {N} }} 和 succ : N → N {displaystyle {mbox{succ}}:{mathbb {N} }to {mathbb {N} }} 生成的。命题为类型原理的一个重要应用是通过对用 n : N {displaystyle n:{mathbb {N} }} 索引的给定类型 P ( n ) {displaystyle P(n)} 的一个消除常量: N − elim : P ( 0 ) → ( Π n : N . P ( n ) → P ( succ ( n ) ) ) → Π n : N . P ( n ) {displaystyle {mathbb {N} }-{mbox{elim}}:P(0)to (Pi n:{mathbb {N} }.P(n)to P({mbox{succ}}(n)))to Pi n:{mathbb {N} }.P(n)} 来把(依赖的)原始递归和归纳同一起来的。在一般的归纳类型中可以被定义为 W-类型,它是良基的树的类型。一类重要的归纳类型是像上面提及的向量 Vec ( A , n ) {displaystyle {mbox{Vec}}(A,n)} 的归纳类型家族,它们是归纳生成自构造子 vnil : Vec ( A , 0 ) {displaystyle {mbox{vnil}}:{mbox{Vec}}(A,0)} 和 vcons : A → Π n : N . Vec ( A , n ) → Vec ( A , succ ( n ) ) {displaystyle {mbox{vcons}}:Ato Pi n:{mathbb {N} }.{mbox{Vec}}(A,n)to {mbox{Vec}}(A,{mbox{succ}}(n))} 。再次用到Curry-Howard同构,归纳类型家族对应于归纳定义的关系。全集的一个例子是 U 0 {displaystyle U_{0}} ,它是所有小类型的全集,它包含前面介绍的所有类型的名字。对于每个名字 a : U 0 {displaystyle a:U_{0}} 我们关联上一个类型 E l ( a ) {displaystyle El(a)} ,这是它的外延或意义。标准上是假定全集的一个直谓性等级: 对于每个自然数 n : N {displaystyle n:{mathbb {N} }} 的 U n {displaystyle U_{n}} ,这里的全集 U n + 1 {displaystyle U_{n+1}} 包含以前的全集的一个代码,就是说,我们通过 E l ( u n ) = U n {displaystyle El(u_{n})=U_{n}} 而有 u n : U n + 1 {displaystyle u_{n}:U_{n+1}} 。这个等级经常被假定为是累积性的,就是说来自 U n {displaystyle U_{n}} 的代码被嵌入了 U n + 1 {displaystyle U_{n+1}} 。已经研究了更强的全集原理,比如超全集和 Mahlo 全集。在 1992 年 Huet 和 Coquand 介入了构造演算,它是带有非直谓性全集的类型论,从而把类型论同 Girard 的系统F 合并起来了。这个扩展不被直觉主义者所普遍接受,因为它允许非直谓性的,就是循环的构造,这经常用经典推理来识别。类型论通常表示为依赖的有类型 lambda 演算,使用判断:特别重要的是转换规则,它声称给定 Γ ⊢ t : σ {displaystyle Gamma vdash t:sigma } 和 Γ ⊢ σ ≡ τ {displaystyle Gamma vdash sigma equiv tau } 则 Γ ⊢ t : τ {displaystyle Gamma vdash t:tau } 。一个基本区别是外延和内涵的类型论。在外延类型论中定义性(就是计算性)等式不区别于需要证明的命题性等式。作为结论类型检查成为不可判定性的。相反的,在内涵类型论中,类型检查是可判定性的,但是很多数学概念的表达是不标准的,因为缺乏外延推理。这是目前对这种折中是否是不可避免的和在内涵类型论中缺乏外延原理是一个特色还是一个缺陷的讨论的一个主题。类型论已经被用做很多证明助理的基础,比如 NuPRL、LEGO、Coq 和 Agda。最近,依赖类型也作为编程语言设计的特征,比如Dependent ML 和 Epigram。

相关

  • 维生素E维生素E(英语:Vitamin E)是一种脂溶性维生素,是最主要的抗氧化剂之一。溶于脂肪和乙醇等有机溶剂中,不溶于水,对热、酸稳定,对碱不稳定,对氧敏感,对热不敏感,但油炸时维生素E活性明显
  • 松露松露(英语:Truffle)是数种可食用子囊菌门物种的合称,和蘑菇、灵芝一样都是真菌。其中有多种属于西洋松露属(学名:Tuber),大约有10种不同的品种。松露多数在阔叶树的根部着丝生长,散布
  • 白色念珠菌白色念珠菌(学名:Candida albicans)是一种能造成伺机性感染的酵母菌,常见于人类消化道与泌尿生殖道的菌群,约有四成至六成健康成人的口腔与消化道中都有白色念珠菌,平时与人体行片
  • 另见内文貂属(学名 Martes)是食肉目鼬科动物中的一属。大部分貂属动物都居住在树上,以松鼠为食,它们的食物还包括小鸟和蛋。貂在中国主要产于东北地区,有多个品种。
  • Pioglitazone吡格列酮(Pioglitazone)是一种专门用于治疗2型糖尿病的口服药物,属于噻唑烷二酮类(活化受体调节剂)药物的一种。
  • 大屠杀纳粹集中营转移营比利时:布伦东克堡垒 · 梅赫伦转移营法国:居尔集中营 · 德朗西集中营意大利:波尔查诺转移营荷兰:阿默斯福特集中营 · 韦斯特博克转移营挪威:法斯塔德集中营部
  • 不可知论不可知论(英语:Agnosticism),或称不可知主义,是一种哲学观点,认为形而上学的一些问题,例如是否有来世、鬼神、天主是否存在等,是不为人知或者根本无法知道的想法或理论。不可知论者
  • 褪黑激素褪黑素(英语:melatonin;i/ˌmɛləˈtoʊnɪn/),或称褪黑激素或美拉托宁,化学名为N-乙酰基-5-甲氧基色胺,是一种在动物、植物、真菌和细菌中皆有发现的物质。在动物体内,褪黑素是一
  • 急性淋巴细胞性白血病急性淋巴性白血病(英语:Acute lymphoblastic leukemia,ALL),是因为体内淋巴细胞不正常增生造成的血液疾病。淋巴是人体免疫系统的重要环节,由骨髓与淋巴结所制造。而急性淋巴性白
  • 方块侗字陶文 ‧ 甲骨文 ‧ 金文 ‧ 古文 ‧ 石鼓文籀文 ‧ 鸟虫书 ‧ 篆书(大篆 ‧  小篆)隶书 ‧ 楷书 ‧ 行书 ‧ 草书漆书 ‧  书法 ‧ 飞白书笔画 ‧