关于Agda的讲座

彼得·塞林格
达尔豪斯大学

这是我于年在达尔豪西大学开设的关于阿格达的课程2021年冬季。与我拥有的大多数其他此类材料不同看到了吧,这门课的重点是在数学中使用Agda,而不是程序验证。我故意不使用标准库,关注而不是开发所有从头开始的概念。Frank Fu是这门课程,他开发了许多材料,包括安装说明、作业和项目。

这是一门基础课。我没有涉及的一个重要主题是使用类刚体,即配备有等价物的集合关系。可以说,人们需要这样做才能在阿格达,因为迟早会有人需要取商如果使用本地Agda平等。许多其他主题也未涵盖,比如证明无关性、重复性等等。

如果下面的讲座链接后出现“+”符号,您可以点击查看Agda主题列表讲座,以及相关Agda文档的链接。

Agda是以其名字命名的,只是如Coq。上面的图片是我的一只鸡,香草。也许有一天我会以她。香草和她的一些伙伴鸡也是在下面关于“记录”的讲座中提到。

安装说明

1.简介

类中的Agda文件:

2.集合与类型,lambda演算

课堂讲稿:

3.打字规则,Curry-Howard同构

课堂讲稿:

4.电感类型

课堂讲稿:

5.Agda基础知识

类中的Agda文件:

6.归纳谓词

类中的Agda文件:

7.逻辑连接词,第1部分

类中的Agda文件:

8.插曲:直觉主义逻辑的斯通-塔斯基解释

课堂讲稿:

9.逻辑连接词,第2部分

类中的Agda文件:

10.更多Agda功能

类中的Agda文件:

11.策略和决策

类中的Agda文件:

12.记录和超载

类中的Agda文件:

13.宇宙

类中的Agda文件:

14.应用:幺半群的生成器和关系

课堂讲稿:

类中的Agda文件:

练习

这门课有很多问题集,由傅兰克设计还有我。其中一些被称为“家庭作业”,学生们被允许合作,其他人被要求“项目”,学生必须单独完成,如考试。

如果你正在学习Agda,你可能会发现这些家庭作业和项目很有趣。每个文件都包含一个或多个文件你要填补的“漏洞”。在其中一些漏洞中,你还必须想出你自己的定义和/或引理。我不会的发布解决方案,我要求您不要公开发布解决方案。但你当然可以用Agda来检查你是否正确地解决了问题。