当前位置:  开发笔记 > 编程语言 > 正文

实际上是否可以从构造微积分中删除"Pi"?

如何解决《实际上是否可以从构造微积分中删除"Pi"?》经验,为你挑选了1个好方法。

文章更简单,更容易!声称即使没有"Pi"存在也可以对依赖类型系统进行编码 - 也就是说,你可以重复使用"Lam"构造函数.但是,如果在某些情况下对"Pi"和"Lam"的处理方式不同,那又怎么可能呢?

此外,可以删除"明星"吗?我认为你可以用"λx.x"(id)替换它的所有出现.



1> user3237465..:

这就像(a, b)在Haskell中一样重载:它既可以是类型也可以是值.你可以使用相同的绑定器?,?并且typechecker将从上下文中决定你的意思.如果你认为一个粘合剂与另一个粘合剂,那么前者是?,而后者是?- 这就是为什么你不能明确地替换*? x . x- 因为那时前者的粘合剂可能?而后者是*(*作为粘合剂没有任何意义)我).还有一个更大的问题? = ?* = ? x . x:通过传递* = ? x . x,这是假定的常用方法False-这种类型必须在一个健全的系统中无人居住,所以你不会有任何类型的.

Coq俱乐部最近有一个帖子"forall和fun之间的相似之处"(gmane.org给了我"没有这样的信息",这只是我吗?),这里有一些摘录:

多米尼克·穆里根:

另外还有一个小型参考书目指向类似的工作:

http://www.macs.hw.ac.uk/~fairouz/forest/papers/journals-publications/jfp05.pdf

具有讽刺意味的是,根据该论文,Coquand首先根据De Bruijn在AutoMath中建立的惯例,使用单一的统一粘合剂来呈现构造微积分.

Thorsten Altenkirch:

函数及其类型是非常不同的概念,即使它们具有一些表面的句法相似性.

特别是对于新手而言,这种识别非常混乱并且完全具有误导性.我认为人们应该理解类型理论概念,而不是它们的样子.

安德烈亚斯阿贝尔:

我的学生Matthias Benkard也参与了这样一个系统,参见"无类型检查"

http://www.cse.chalmers.se/~abela/benkardThesis.pdf

请注意,在第一个链接中描述的系统具有Π减少(即,您可以像lambdas一样应用pi类型) - 如果您统一??内部(而不是语法上),您的系统也会拥有它.并且在第二个链接处描述的系统统一了类型和值

一个直接后果是类型与居民之间没有任何区别:每个价值观都是包含自身及其所有部分的类型; 相反,每种类型都是由其居民组成的综合价值.

所以真的只有一个活页夹(除了let和可能fix).

推荐阅读
jerry613
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有