1 / 12

迎新报告

迎新报告. 报告人: 陈然. 自我介绍. 研究方向:程序验证 导师:张文辉 年级: 12 级硕士、 14 级博士. 最近一年的主要工作. 自 13 年 10 月起,我在法国教授 Jean-Jacques Levy 的指导下,做基于 Why3 平台的形式化验证。我们完成了 Sedgewick 书中一些基本算法的正确性验证,包括几种排序算法、树算法、以及基于深度优先搜索的各种图算法。 我们希望能简洁而逻辑清晰的验证图算法,并总结出一个可用的形式化验证库。. 基于why3平台的形式化验证. DFS 算法性质的证明

lois-gaines
Download Presentation

迎新报告

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. 迎新报告 报告人:陈然

  2. 自我介绍 • 研究方向:程序验证 • 导师:张文辉 • 年级:12级硕士、14级博士

  3. 最近一年的主要工作 • 自13年10月起,我在法国教授Jean-JacquesLevy的指导下,做基于Why3平台的形式化验证。我们完成了Sedgewick书中一些基本算法的正确性验证,包括几种排序算法、树算法、以及基于深度优先搜索的各种图算法。 • 我们希望能简洁而逻辑清晰的验证图算法,并总结出一个可用的形式化验证库。

  4. 基于why3平台的形式化验证 • DFS算法性质的证明 • DFS算法可以获得有关图结构的有价值的信息。对DFS作一些变化记录一些额外信息,可以用于检测图的无环性、搜索图的强连通分支、计算图的割点进而得到图的重连通分量。 • DFS算法的性质: • 从初始点开始搜索,所有初始点开始的白色路径可达的点都会被扫描到 • 所有被扫描到的点都可由初始点产生一条白色路径而达到

  5. 基于why3平台的形式化验证

  6. 基于why3平台的形式化验证

  7. 基于why3平台的形式化验证

  8. 基于why3平台的形式化验证 • 使用的工具与所学的技术 • why3 http://why3.lri.fr/ • 自动化外部证明工具 (霍尔逻辑公式的写法影响证明工具的效果) • Alt-Ergo (效果最好) • CVC3 (对于递归数据类型非常有效) • CVC4 • E-prover • Z3 • 交互式证明系统 • Coq • MLW语言 • 小型的类Pascal语言 • 基于霍尔逻辑的不变量和断言

  9. 基于why3平台的形式化验证 • 参考文献 • Introduction to Algorithms, second edition. Tomas H. Cormen. • Depth-First Search and Linear Graph Algorithms. Robert Tarjan. • Algorithms in C, Parts 5, Graph Algorithms. Robert Sedgewick. • The Why3 platform, Version 0.81, March 2013. François Bobot. • Binary Heaps Formally Verified in Why3. Asma Tafat — Claude Marché. • Verifying Two Lines of C with Why3 : an Exercise in Program Verification? Jean-Christophe Filliatre. • Why3 — Where Programs Meet Provers. Jean-Christophe Filliâtre and Andrei Paskevich. • Prototyping Static Analysis Certification using Why3. Pierre-Emmanuel Cornilleau. • Certified Programming with Dependent Types. Adam Chlipala. • The Coq Proof Assistant Reference Manual. Version 8.4pl2. • From Type Theory to Programming Languages. J.-F. Monin. • Coq in a Hurry. Yves Bertot. • A Small Scale Reflection Extension for the Coq system. Georges Gonthier —Assia Mahboubi.

  10. 未来研究工作展望 • 循环不变量自动生成算法的研究 • 用模型检测的方法检测Sedgewick书中所有算法的正确性

  11. 感想 • 研一学好基础课程 • 研二进入实验室后尽快找好自己的研究方向

  12. 谢谢

More Related