首页> 外文学位 >Computation improves interactive symbolic execution.
【24h】

Computation improves interactive symbolic execution.

机译:计算可改善交互式符号执行。

获取原文
获取原文并翻译 | 示例

摘要

As it becomes more prevalent throughout our lives, correct software is more important than it has ever been before. Verifiable C is an expressive Hoare logic (higher-order impredicative concurrent separation logic) for proving functional correctness of C programs. The program logic is foundational---it is proved sound in Coq w.r.t. the operational semantics of CompCert Clight. Users apply the program logic to C programs using semiautomated tactics in Coq, but these tactics are very slow.;This thesis shows how to make an efficient (yet still foundational) symbolic executor based on this separation logic by using computational reflection in several different ways. Our execution engine is able to interact gracefully with the user by reflecting application-specific proof goals back to the user for interactive proof---necessary in functional correctness proofs where there is almost always domain-specific reasoning to be done. We use our ``mostly sound'' type system, computationally efficient finite-map data structures, and the MirrorCore framework for computationally reflected logics. Measurements show a 40x performance improvement.
机译:随着它在我们生活中变得越来越普遍,正确​​的软件比以往任何时候都更加重要。可验证的C是用于证明C程序的功能正确性的表达性Hoare逻辑(高阶命令性并行分离逻辑)。程序逻辑是基础-在Coq w.r.t. CompCert Clight的操作语义。用户使用Coq中的半自动策略将程序逻辑应用于C程序,但是这些策略非常慢。;本文展示了如何通过几种不同的方式使用计算反射来基于这种分离逻辑来创建高效的(但仍是基础的)符号执行器。我们的执行引擎能够通过将特定于应用程序的证明目标反射回用户以进行交互式证明,从而与用户进行优雅的交互,这是功能正确性证明所必需的,因为几乎总是需要进行特定于域的推理。我们使用``主要是声音''类型的系统,高效计算的有限映射数据结构和MirrorCore框架来计算反映逻辑。测量显示性能提高了40倍。

著录项

  • 作者

    Dodds, Josiah.;

  • 作者单位

    Princeton University.;

  • 授予单位 Princeton University.;
  • 学科 Computer science.
  • 学位 Ph.D.
  • 年度 2015
  • 页码 96 p.
  • 总页数 96
  • 原文格式 PDF
  • 正文语种 eng
  • 中图分类
  • 关键词

相似文献

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

客服邮箱:kefu@zhangqiaokeyan.com

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

  • 服务号