首页> 外文会议>International conference on mathematics of program construction >Certification of Breadth-First Algorithms by Extraction
【24h】

Certification of Breadth-First Algorithms by Extraction

机译:通过提取对广度优先算法的认证

获取原文

摘要

By using pointers, breadth-first algorithms are very easy to implement efficiently in imperative languages. Implementing them with the same bounds on execution time in purely functional style can be challenging, as explained in Okasaki's paper at ICFP 2000 that even restricts the problem to binary trees but considers numbering instead of just traversal. Okasaki's solution is modular and factors out the problem of implementing queues (FIFOs) with worst-case constant time operations. We certify those FIFO-based breadth-first algorithms on binary trees by extracting them from fully specified Coq terms, given an axiomatic description of FIFOs. In addition, we axiomatically characterize the strict and total order on branches that captures the nature of breadth-first traversal and propose alternative characterizations of breadth-first traversal of forests. We also propose efficient certified implementations of FIFOs by extraction, either with pairs of lists (with amortized constant time operations) or triples of lazy lists (with worst-case constant time operations), thus getting from extraction certified breadth-first algorithms with the optimal bounds on execution time.
机译:通过使用指针,广度优先算法很容易在命令式语言中高效实现。以Oksaki在ICFP 2000上的论文中所解释的那样,以纯功能样式在执行时间上以相同的界限来实现它们可能具有挑战性,该论文甚至将问题限制为二进制树,但考虑了编号而不只是遍历。 Okasaki的解决方案是模块化的,并且排除了使用最坏情况的恒定时间操作来实现队列(FIFO)的问题。通过给定FIFO的公理描述,我们从完全指定的Coq项中提取它们,从而在二叉树上证明了这些基于FIFO的广度优先算法。此外,我们公理地描述了捕获广度优先遍历性质的树枝上的严格和总体顺序,并提出了森林广度优先遍历的替代特征。我们还提出了通过提取的有效的FIFO认证实施,可以是成对的列表(具有摊销的恒定时间操作)或三倍的惰性列表(具有最坏情况的恒定时间操作),从而从具有最佳选择的提取认证的广度优先算法中获取执行时间的界限。

著录项

相似文献

  • 外文文献
  • 中文文献
  • 专利
获取原文

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号