在Agda中运行带选择的经典证明
- 2011年5月10日
- 马丁·埃斯卡多
-
计算,建构主义数学,来宾岗位,逻辑,编程,辅导的
为我的部分联合教程做准备校样中的程序在MFPS 27型本月底乌尔里希·伯杰,莫妮卡·塞森伯格、和保罗·奥利瓦,我在阿格达我们一直在一起做的一些事情。
使用
为了给出经典可数选择的一个证明条件,我们在Agda中证明了经典的无限鸽子洞原理:每个无限布尔序列都有一个常量无限子序列,其中存在量化是经典的(双否定)。
作为推论,我们得到了有限鸽子洞原理,利用弗里德曼的技巧使存在量词直观。
这个我们可以跑,它跑得足够快。重点是在Agda中说明我们如何从使用可数选择的经典证明中获得证人。当然,有限鸽子洞原理有一个简单的构造性证明,因此这实际上只是为了说明。
Agda的主要文件是
这些是转换为html的Agda文件,因此您可以通过单击单词导航到它们的定义。A类zip文件所有Agda文件都可用。没有更多可用信息在这里.
实现Berardi-Bezem-Coquand、Berger-Oliva和Escardo-Olifa函数的三个小模块禁用了终止检查程序,但其他模块都没有。Agda中这些功能的类型是J移位原理它概括了双重否定移位。