--大证明@牛顿研究所--2017年6月30日--英国剑桥----安德烈亚斯·阿贝尔,阿格达教程----第2部分:通过共同模式共同处理的形式语言{-#选项--允许未解决的元#-}{-#选项--后缀项目#-}模块Copatterns,其中打开导入数据。国家基础打开导入数据。布尔。底座打开导入关系。二元的。命题等式打开导入大小模块流,其中--流记录流(A:Set):Set where共性的现场负责人:A尾部:流A开放流--施工单位cons:{A:Set}(A:A)(作为:流A)流Acons={!!}--流式压缩zipWith:{ABC:Set}(f:AB类C) (s:流A)(t:流B)流CzipWith={!!}--斐波那契--{-#终止#-}fib:流fib={!!}--终端取决于zipWith的连续性。--与结构相似的rhs进行比较--tail(tail fib)=邪恶fib(tail fib)--了解Agda为什么拒绝证明合同终止--在非类型终止检查器中。module SizedStreams其中--流记录流(i:大小)(A:设置):设置位置共性的现场负责人:A尾部:∀{j:大小<i}流j A开放流--施工单位缺点:{i:Size}{A:Set}(A:A)(as:流iA)流(i) A类cons={!!}--流式压缩拉链:{i A B C}(f:AB类C) (s:流i A)(t:流i B)流i CzipWith={!!}--斐波那契fib:∀{i}流ifib={!!}模块SizedLanguages,其中--可决定的语言record Lang(i:大小)(A:设置):设置位置共性的字段ν:布尔δ:{j:尺寸<i}(a:a)郎杰A打开Lang--空语言∅:∀{i A}Langi A语言∅ = {!!}--空词ε:∀{i A}Langi A语言ε = {!!}--活接头中缀4á__∧_:∀{i A}(lk:语言A)Langi A语言_∪_ = {!!}--串联中缀6_∙__∙_:∀{i A}(lk:语言A)Langi A语言_∙_ = {!!}--星星中缀15_*_*:∀{i A}(l:语言A)Langi A语言_* = {!!}--δ(l*)x=δ(εмl∙l*)x--=δεxνδ(l∙l*)x--=∅мδl x∙l*м(如果νl,则δ(l*)x其他∅)--=δl x∙l*í(如果νl,则δ(l*)x其他∅)