不是,命令程序的依赖类型。我们描述了Coq证明助手的公理化扩展,它支持编写、推理和提取具有副作用的高阶、独立类型的程序。Coq已经包含了一个强大的函数式语言,它支持依赖类型,但这种语言仅限于纯粹的、整体的函数。我们称之为Ynot的扩展的主要贡献是增加了对计算的支持,这些计算可能会产生诸如不终止、访问可变存储和抛出/捕捉异常等效果。Ynot的公理构成了一个小型的可信计算基础,这在我们之前关于Hoare类型理论(HTT)的工作中得到了形式上的证明。我们展示了如何将这些公理与Coq强大的类型和抽象机制相结合,以构建更高层次的推理机制,而这些机制又可以用来构建真实的、经过验证的软件组件。为了证实这一说法,我们在这里描述了一系列实现命令式有限映射的具有代表性的模块,包括对高阶(有效)迭代器的支持。实现范围从简单(如关联列表)到复杂(如哈希表),但共享一个公共接口,该接口抽象了实现细节,并确保模块正确实现有限映射抽象。


参考文献中的数学35条,1标准件)

显示第1到第20个结果,共35个。
按年份排序(引用)
  1. 查盖罗,亚瑟;Pottier,François:用时间信用验证分离逻辑中union-find实现的正确性和摊余复杂性(2019)
  2. 拉米奇,彼得:对命令式霍尔的改进(2019)
  3. Sakaguchi,Kazuhiko:可变数组的程序提取(2018)
  4. 斯威斯特拉,伍特;从命题到程序。在Coq中嵌入精化演算(2016)
  5. Jacobs,Bart:一元计算中的Dijkstra和Hoare monads(2015)
  6. Paulin Mohring,Christine:归纳结构微积分导论(2015)
  7. 彭宁克斯,威廉;雅各布斯,巴特;Piessens,Frank:程序输入/输出行为的声音、模块化和组合验证(2015)
  8. Ziliani,贝塔;德雷尔,德里克;克里希纳斯瓦米,尼拉坎坦R。;纳涅夫斯基,亚历山达;Vafeiadis,Viktor:Mtac:Coq中类型化策略编程的单子(2015)
  9. 巴瑟,吉尔;福奈特,塞德里克;格雷戈耶,本杰明;斯特拉布,皮埃尔·伊夫;斯瓦米,尼基尔;Zanella-Béguelin,圣地亚哥:加密实现的概率关系验证(2014)
  10. 卡西诺,克里斯;斯约伯格,维尔赫尔姆;Weirich,Stephanie:用独立类型语言组合证明和程序(2014)
  11. Jacobs,Bart:一元计算中的Dijkstra monads(2014)
  12. 阿姆斯特朗,阿拉斯代尔;斯特拉斯,乔治;韦伯,Tjark:基于klene代数的程序分析与验证(Isabelle/HOL)(2013)
  13. Nick Benton:《作为集成开发环境的证明助手》(The proof assistant as a integrated development environment)(2013)ioport公司
  14. Brady,Edwin:具有代数效应和依赖类型的编程和推理(2013)
  15. 查尔顿,纳撒尼尔;Reus,Bernhard:《通过存储进行递归推理的规范模式》(2013)
  16. 李,赵鹏;张裕;《陈云A形逻辑》(2013年版)
  17. 斯瓦米,尼基尔;陈娟;福奈特,塞德里克;斯特拉布,皮埃尔·伊夫;巴格文,卡蒂克扬;Yang,Jean:具有值依赖类型的安全分布式编程(2013)
  18. 克罗拉德,T。;Polonowski,E.:从formulæ-as型控制概念推导非局部跳跃的Floyd-Hoare逻辑(2012)
  19. 塔姆斯堡,雅各布;伯克达尔,拉尔斯;Yang,Hongseok:2:1的价格:提升分离逻辑断言(2012)
  20. 吉本斯,杰里米;Hinze,Ralf:Just do it:简单的一元等式推理(2011)