TiML公司 swMATH ID: 27564 软件作者: Wang,P.、Wang,D.、Chlipala,A。 描述: TiML:一种使用不变量进行实际复杂性分析的函数语言。我们提出了TiML(Timed ML),这是一种类似ML的函数语言,具有类型中的时间复杂性注释。它使用索引类型来表示数据结构的大小和函数运行时间的上限;以及细化种类以约束这些索引,表示数据结构不变量和前置/后置条件。索引类型足够灵活,TiML避免了内置的大小概念,程序员可以选择以任何有助于分析的方式索引用户定义的数据类型。TiML的显著特点是支持高度自动化的时限验证,适用于具有非平凡不变量的数据结构。程序员提供类型注释,类型检查器生成由SMT解算器释放的验证条件。支持类型和索引推理以降低注释负担,此外,基于启发式模式匹配的递归解算器可以从类型检查期间生成的递归中推断出较大的O复杂性(例如,使用主定理来处理分治式递归)。我们通过实现一套广泛的案例研究模块来评估TiML的可用性,证明了TiML虽然缺乏完全自动化和理论完整性,但它的通用性足以验证算法和数据结构(如经典列表操作、合并排序、,Dijkstra的最短路径算法、红黑树、Braun树、函数队列和具有m n logn等边界的动态表。正如我们在案例研究中的实证结果所表明的那样,学习曲线和注释负担是合理的。我们在Coq中形式化了TiML的类型健全性证明。 主页: https://dl.acm.org/citation.cfm?doid=3152284.3133903 相关软件: TcT公司;z3(零3);分离逻辑;基础知识;AProVE公司;王牌;优化数学卫星;摊销复杂性;莫德;KITTeL公司;Ctrl键;Yices公司;Why3号机组;Ciao公司;WhyML公司;CiaoPP公司;HOL公司;自动2_Imperative_HOL;中间值;朗道符号 引用于: 8文件 全部的 前5名18位作者引用 三 乔治·莫瑟 2 马克西米利安·哈斯贝克。 2 洛伦兹·勒特盖布 2 弗洛里安·祖勒格 1 约翰·Cyphert 1 诺曼·丹纳 1 洛丽斯·达安东尼 1 马可·加博阿迪 1 迪帕克·加格 1 马丁·霍夫曼 1 胡、秦和平 1 彼得·兰米奇 1 丹尼尔·李卡塔(Daniel R.Licata)。 1 大卫·奥布瓦勒 1 瞿伟浩 1 代表,Thomas W。 1 莎拉·温克勒 1 詹伯华 2篇连载文章中引用 2 函数编程杂志 1 MSCS公司。计算机科学中的数学结构 在2个字段中引用 8 计算机科学(68至XX) 1 数理逻辑与基础(03-XX) 按年份列出的引文