如果您在2021年6月参加AIM XXXIV,请访问https://wiki.portal.chalmers.se/agda/Main/AIMXXIV网站
第三十三届Agda实施者会议将于2020-10-12年至2020-10-23年期间举行。欢迎所有使用Agda的人参加。
由于当前的疫情,会议将在网上举行。会议将在两周内举行,而不是一周,但每一天的紧张程度可能会低于以前的会议。我们将尽量容纳来自不同时区的参与者。注册时,请注明您在一天中的什么时间有空。
重要日期
- 2020-10-05
- 注册的软截止日期
- 2020-10-05至2020-10-11
- 人们可以表达对代码冲刺的兴趣
- 2020-10-12至2020-10-23(仅工作日)
- 目标三十三
登记处
您通过向以下地址发送电子邮件来注册会议杰斯珀,或在下面输入您的姓名。注册不是强制性的。如果您想发表演讲或提出讨论或代码冲刺,请将其包含在您的注册电子邮件中。
链接和技术
所有会谈和讨论都可以通过缩放如果您想参加讨论或通过抽搐如果你愿意倾听。
与之前的在线Agda会议不同,所有代码冲刺和其他基于文本的通信都将通过Zulip进行可以在此处加入。别忘了加入aim-xxxii流,它将包含与会议相关的所有信息!要从应用程序加入Zulip,请参阅Zulip网站.
计划
注:联合技术公司用于日期和时间。
已经安排了一个小时的会谈和讨论。然而,请注意,简短的发言是可以的,如果大家对讨论感兴趣,讨论可能需要一个多小时。
2020-10-12年星期一
- 10-11:简介
- 11-12:讨论和代码冲刺的计划
- 15-16:Wen Kokke演讲:“Schmitty the Solver”
2020-10-13年星期二
- 10-11:杰斯珀·考克斯(Jesper Cockx)的演讲:“阿格达·科尔(Agda Core):我们从哪里来,我们去哪里?”(幻灯片)
- 11-11:30:总结会议
- 15:00:讨论:改进图书馆的互操作性
2020-10-14年星期三
- 15-16:雅克·卡雷特和贾森·胡的谈话:“Agda的新类别库”
16-16:3016:30-17:总结会
2020-10-15年星期四
- 10-11:乌尔夫·诺雷尔(Ulf Norell)演讲:“为乐趣和利润与宇宙一起编程”
1112-13:Agda Core上的代码冲刺- 13:关于结构同一性原则的讨论(缩放)
- 14-15:讨论(由Víctor López Juan领导):阿格达的双胞胎类型
2020-10-16年星期五
- 11-12:托尔斯滕·阿尔滕柯奇领导的谈话+讨论:“立方体agda中的造像”
- 15-16:总结会议
- 16-:社交活动:AIM XXXII Pub
2020-10-17年星期六
2020-10-19年星期一
- 10-11:Stefania Damato的演讲:“用Agda构建简单的相互归纳类型”
- 11-12:关于尺寸类型的讨论
- 15-16:詹姆斯·查普曼演讲:“Haskell更高的保证:使用Agda对Haskel程序进行建模和测试(经验报告)”
- 16-16:30:总结会议
- 17:30-21:社交活动:地下城和鸡(由杰斯珀·考克斯组织)
2020-10-20年星期二
- 10-11:尼古拉·克劳斯的演讲:“二级类型理论(2LTT)——它是什么,它能做什么,阿格达需要它吗?”
- 13-15:将Agda编译为可读的Haskell代码sprint
2020-10-21年星期三
- 11-12:继续讨论大小类型,希望以实现草图告终
- 今天没有会谈,但我们鼓励与会者参加SPLS公司。代码冲刺和讨论将继续正常进行。
2020-10-22年星期四
- 10-11:Johannes Schipp von Branitz的演讲:“CTT中显示的单叶自反图”
- 11-11:30:总结会议
- 15:30-17:(不是AIM的一部分,但可能很感兴趣。)Ambrus Kaposi:“商-归纳归纳类型和更高的朋友”HoTT电子研讨会
2020-10-23年星期五
- 11-12:Musa Al-Hassy的演讲:“自我模块系统:动态解开,从理论中机械地获得术语类型”
- 12-14:最后总结会议
注册参与者
如果你不是在“正常工作时间”工作,你可能想给出一个与你所在地实际时区不同的时区。
姓名 | 时区 |
约翰·利奥 | UTC-7型 |
大卫·巴纳斯 | UTC-7型 |
科纳尔·埃利奥特 | UTC-7型 |
凯尔·拉夫托基亚尼斯 | UTC-7型 |
里德·穆兰尼克斯 | UTC-7型 |
爱瑞克·邦德 | UTC-7型 |
雅克·卡雷特 | UTC-4型 |
普拉巴卡尔·拉格德 | UTC-4型 |
文科克 | UTC+1 |
斯瓦拉吉短划线 | UTC+1 |
四月Gonçalves | UTC+1 |
詹姆斯·伍德 | UTC+1 |
阿特琼斯·因卡罗夫斯 | UTC+1 |
乌玛·扎拉坎 | UTC+1 |
安东·塞泽尔 | UTC+1 |
维克拉曼·乔杜里 | 离合器+1 |
托尔斯滕·阿尔滕基奇 | UTC+1 |
尼古拉·克劳斯 | UTC+1 |
詹姆斯·查普曼 | UTC+1 |
杰斯珀考克斯 | UTC+2 |
豪尔赫·巴兹奎斯·萨博里多 | UTC+2 |
曼努埃尔·贝伦茨 | UTC+2 |
安德斯·莫特伯格 | UTC+2 |
阿詹·鲁沃特(Arjen Rouvoet) | UTC+2 |
安德烈亚·维佐西 | UTC+2 |
马金·扬·格里兹博夫斯基(Marcin Jan Grzybowski) | UTC+2 |
帕特里克·詹森 | UTC+2 |
尼尔斯·安德斯·丹尼尔森 | UTC+2 |
乌尔夫·诺雷尔 | UTC+2 |
马库斯·克里斯蒂安·莱曼 | UTC+2 |
马克斯·齐纳 | UTC+2 |
斯蒂芬妮娅·达马托 | UTC+2 |
阿克塞尔·容斯特罗姆 | UTC+2 |
马丁·莫尔泽 | UTC+2 |
安德烈亚斯·阿贝尔 | UTC+2 |
乌尔里克·巴赫霍尔茨 | UTC+2 |
沃特·斯威斯特拉 | UTC+2 |
约翰·希普·冯·布兰尼茨(Johannes Schipp von Branitz) | UTC+2 |
雅各布·冯·劳默 | UTC+2 |
米特克烘烤 | UTC+2 |
特斯拉冰镇 | UTC+8 |
陈良亭 | UTC+8 |
奥雷斯蒂斯·梅尔科尼安 | UTC+3 |
谈话和讨论建议
- 文科克:施密蒂解决方案
我最近出版了一个名为史蜜蒂提供Agda和SMT-LIB解算器之间的灵活绑定。在本次演讲中,我将回顾Schmitty的基本设计,并提出几个小扩展,这些扩展将使代码更加出色!
- 杰斯珀·考克斯:阿格达·科尔:我们从哪里来,我们去哪里?
人们对Agda反复提出的一个问题是“为什么它没有一个合适的核心语言?”在这次演讲中,我将讨论Agda内部双重检查器的当前状态,过去对Agda理论进行形式化的尝试(参见https://github.com/agda/agda-spec网址),以及我们如何在未来为Agda提供一种合适的核心语言。
- 雅克·卡雷特和贾森·胡:阿格达的新类别库
详细信息待定。
- 乌尔夫·诺雷尔(Ulf Norell):为乐趣和利润而使用宇宙编程
要用Agda编写策略或其他元程序,您需要操作反映的语法--Agda本身内部语法的Agda表示。它的定义由少数相互递归的数据类型组成,这些数据类型表示术语、模式、排序等,在这些数据类型上定义函数可能有点尴尬。在本次演讲中,我将向您展示一些使用反射语法的基础设施,以及如何使用宇宙可以让一切变得更好。
- Víctor López Juan:阿格达的双胞胎
关于如何向Agda类型检查器添加孪生类型的讨论(请参阅https://dl.acm.org/doi/abs/10.1145/3406089.3409030理论,以及https://github.com/agda/agda/pull/4605对于WIP代码)
- 托尔斯滕·阿滕柯奇:立方体银币
我想讨论用立方体agda进行造币的一些问题。
- Stefania Damato:在Agda中构造简单的互易类型
对我硕士论文所做工作的描述,包括构建一个框架,在这个框架中我们可以表达简单的和相互归纳的类型,以及将这些类型简化为W类型的起点。
- 尼古拉·克劳斯:两层类型理论(2LTT)——它是什么,它能做什么,阿格达需要它吗?
2LTT是依赖型理论的一个小扩展,它允许我们半内在地推理严格(即判断/定义)的平等。我想简要地谈谈这是如何工作的,人们可以用它做什么,为什么要这样做,以及(从我的观点来看)理论方面还缺少什么。我只需要15分钟左右的时间来进行演讲,但我希望我们可以随后讨论其他项目是否也能从2LTT中受益,以及人们的要求是什么。
- Johannes Schipp von Branitz:CTT中显示的单叶自反图
类型上的单叶自反图(URG)是自反二元关系
ID到Rel
是等价的。URG上显示的URG大致由一个类型族组成,其中每个光纤承载URG的结构,但字段取决于基本类型的URG。DURG在其基础类型族的总类型上诱导URG,从而产生总类型的身份类型特征。我用它们来证明严格2-群和交叉模的等价性,但我将把重点放在DURGs的元理论上。代码可以在以下位置找到#435.我的论文可以在这里找到. - 尼尔斯·安德斯·丹尼尔森:使不同的库互操作和/或合并它们
解释。
- James Chapman:Higher Assurance Haskell:使用Agda对Haskell程序进行建模和测试(经验报告)
在IOHK,我们为智能合约平台Plutus提供了基于System F omega mu的核心语言。我们在Agda中为这种语言提供了一个解释器和类型检查器的固有类型实现。我们将解释器编译为Haskell,并使用与生产实现相同的Haskells库,还借用了生产解析器和漂亮的打印机。Haskell可执行文件作为参考实现,我们可以根据现有的编写示例,并根据Wen Kokke的工作,在NEAT生成的System F omega mu术语上测试生产实现。我将描述该项目的一些细节和在该项目中使用Agda的经验,以及对未来应用的一些想法。
- 穆萨·阿勒·哈西(Musa Al-Hassy):动态解绑并从理论中机械地获取术语类型
我们展示了如何使用一点反射来实现动态拆分,以将记录字段提升到类型级别作为参数,并使用一元do表示法使最终设置对于实验来说实用。民间传说中众所周知,记录类型是上下文(即名称类型对的序列),我们继续说明术语类型(GADT)也是上下文。此外,由于记录和术语类型都是上下文,我们展示了如何通过宏从前者机械地导出后者;例如,我们机械地要求动态系统、幺半群、点集、集合的术语类型,并找到自然数、树骨架、可能类型和列表类型的结果。令人惊讶的是,整个开发项目不到300条Agda线。项目网页:https://alhassy.github.io/next-700模块系统/
代码冲刺建议
在此处列出代码sprint建议。
- 文科克:施密蒂解决方案
史蜜蒂提供Agda和SMT-LIB解算器之间的灵活绑定。Schmitty有很多可能的扩展,让她更加有用!现在,Schmitty支持核心理论,即命题逻辑,以及链接到Agda整数的整数算术,以及链接至Agda浮点的实数算术。然而,SMT-LIB标准提供了还有更多的可能性!
- 为其他符合SMT-LIB的解算器添加后端(简单);
- 将实数运算理论与Agda有理数联系起来(简单);
- 添加链接到Agda浮点的浮点数理论(简单);
- 添加与Agda字符串链接的字符串理论(简单);
- 添加与Agda列表相关的序列理论(中等);
- 添加与Agda名称相关的未解释函数和常量理论(中等);
- 添加链接到的正则表达式理论加莱/aGdaREP(中度);
- 添加与Agda数据类型关联的代数数据类型理论(中等);
- 添加与Haskell数组公理化相关的数组理论(中等);
- 添加对的支持综合理论(中度);
- 添加对的支持逻辑声明(中度);
- 使用为SAT添加证明重建坎索。卫星解算器(中度);
- 为添加证据重建Z3证明(参见。Isabelle/HOL中Z3的证明重建)(硬)。
有兴趣参与代码冲刺的人:温、豪尔赫、曼纽尔。。。 - 安德斯·莫特伯格:立方体Agda和Agda/立方体图书馆
希望其他agda/cublical贡献者也能参加,这样我们就可以解决许多问题并合并一些开放的PR。有兴趣参与代码冲刺的人:安德斯、马库斯、马克斯、马丁、马辛、乌尔里克。。。
- Jesper Cockx:更多地控制交互和反射的减少
目前,Agda typechecker只有两种主要的术语简化模式:要么将其简化为弱头范式,要么将其完全规范化。然而,在交互使用过程中,通常可以减少对特定函数的调用,或者以其他方式限制允许的简化集。此代码冲刺将在Agda类型检查器中实现此核心机制,并将其绑定到反射接口,以便可以在(编译时和编辑时)宏中使用。有兴趣参与代码冲刺的人:Jesper、John、Kyle、Artem,。。。
- Arjen Rouvoet(提议,而非专家):分发Agda
我想讨论一下我们分销Agda的渠道。看来我们非常依赖在cabal/stack上进行典型的安装,这些安装不是包管理器,至少在我个人的经验中,由于各种原因,它们一直处于中断状态。生成Agda的二进制分布是否可行?感兴趣的人:Andreas
- 詹姆斯·查普曼:编译成可读的哈斯克尔
我想研究为Agda创建一个新的编译器后端,目的是验证Haskell程序,该程序可以从Agda的受限子集生成可读的Haskell。预期的用例将是使用Agda验证Haskell项目中的关键组件,然后生成可读的Haskel,可以轻松地与Haskel项目集成。感兴趣的人:詹姆斯、安德烈亚斯、乌尔夫
- Manuel Bärenz:固定大小类型
大小的类型有一些错误,您可以证明它们是底部的,本质上使它们不一致或“--不安全”,例如。https://github.com/agda/agda/issues/2820。至少应该将其标记为不安全。但理想情况下,我们会修复实现。我(曼纽尔)不知道什么是正确的理论,但如果有经验的人可以提供一些指导,什么是正确方法,我/我们可以尝试修复它。第一步是在虚拟白板上会面并制定一个合理的理论。然后我们可以讨论实现。感兴趣的人:Manuel、Andreas、Nisse、Andrea
- 乌尔夫·诺雷尔:反思的夸西引用
使用反射语法可能会非常痛苦。本次冲刺的目标不是实现完全的准引用,而是研究我们可以利用现有的机器和聪明的库走多远,以及在扩展方面是否有任何可以让我们的生活更轻松的低挂起的果实。感兴趣的人:乌尔夫、曼努埃尔
- 尼尔斯·安德斯·丹尼尔森:改进擦除支持
感兴趣的人:日产
- 约翰·冯·布兰尼茨:显示的单叶自反图
感兴趣的人:Johannes,Ulrik
- Manuel Bärenz:在标准库中使用更多实例
如果像Show和Eq这样的实例在标准库中实现得更多,那就更好了。它们在“agda-prelude”中相当流行,所以也许是时候将前奏曲合并到标准库中,并相应地重构后者了。感兴趣的人:Manuel
- 投标人:职务
描述有兴趣参与代码冲刺的人:。。。
社会活动
- 阿格达酒吧:带上你自己喜欢的啤酒和/或美味的酒吧食物度过一个愉快的夜晚,并讨论你的想法!
- 虚拟远足:徒步或骑自行车前往当地的风景区,分享您的照片,并在Zoom上加入我们,度过一个轻松的上午/下午。
- 地下城与鸡:在这场比赛中,我(杰斯珀)将为任何想加入的人主办一场龙与地下城的不和游戏,无需以往的经验。这个游戏适合一级角色,可能会有两只非常愤怒的小鸡,名叫阿格达和考克。
总结报告
请参见目标三十三总结