首页> 外文学位 >Mechanizing Abstract Interpretation
【24h】

Mechanizing Abstract Interpretation

机译:机械化的抽象解释

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

摘要

It is important when developing software to verify the absence of undesirable behavior such as crashes, bugs and security vulnerabilities. Some settings require high assurance in verification results, e.g., for embedded software in automobiles or airplanes. To achieve high assurance in these verification results, formal methods are used to automatically construct or check proofs of their correctness. However, achieving high assurance for program analysis results is challenging, and current methods are ill suited for both complex critical domains and mainstream use.;To verify the correctness of software we consider program analyzers ---automated tools which detect software defects---and to achieve high assurance in verification results we consider mechanized verification---a rigorous process for establishing the correctness of program analyzers via computer-checked proofs.;The key challenges to designing verified program analyzers are: (1) achieving an analyzer design for a given programming language and correctness property; (2) achieving an implementation for the design; and (3) achieving a mechanized verification that the implementation is correct w.r.t. the design. The state of the art in (1) and (2) is to use abstract interpretation: a guiding mathematical framework for systematically constructing analyzers directly from programming language semantics. However, achieving (3) in the presence of abstract interpretation has remained an open problem since the late 1990's. Furthermore, even the state-of-the art which achieves (3) in the absence of abstract interpretation suffers from the inability to be reused in the presence of new analyzer designs or programming language features.;First, we solve the open problem which has prevented the combination of abstract interpretation (and in particular, calculational abstract interpretation) with mechanized verification, which advances the state of the art in designing, implementing, and verifying analyzers for critical software. We do this through a new mathematical framework Constructive Galois Connections which supports synthesizing specifications for program analyzers, calculating implementations from these induced specifications, and is amenable to mechanized verification.;Finally, we introduce reusable components for implementing analyzers for a wide range of designs and semantics. We do this though two new frameworks Galois Transformers and Definitional Abstract Interpreters. These frameworks tightly couple analyzer design decisions, implementation fragments, and verification properties into compositional components which are (target) programming-language independent and amenable to mechanized verification. Variations in the analysis design are then recovered by simply re-assembling the combination of components. Using this framework, sophisticated program analyzers can be assembled by non-experts, and the result are guaranteed to be verified by construction.
机译:开发软件时,验证是否存在不良行为(如崩溃,错误和安全漏洞)非常重要。某些设置需要高度确保验证结果,例如,汽车或飞机上的嵌入式软件。为了在这些验证结果中获得较高的保证,可以使用形式化方法自动构建或检查其正确性的证明。但是,要获得对程序分析结果的高度保证具有挑战性,并且当前的方法不适用于复杂的关键领域和主流应用。为了验证软件的正确性,我们考虑使用程序分析器-检测软件缺陷的自动化工具-为了实现对检验结果的高度保证,我们考虑采用机械化检验-一种通过计算机检查的证明来确定程序分析仪正确性的严格过程。;设计经过验证的程序分析仪的主要挑战是:(1)实现用于分析仪设计的分析仪给定的编程语言和正确性属性; (2)实现设计的实现; (3)机械验证实施是否正确。该设计。 (1)和(2)中的最新技术是使用抽象解释:直接从编程语言语义系统地构建分析器的指导性数学框架。但是,自1990年代末以来,在存在抽象解释的情况下实现(3)仍然是一个未解决的问题。此外,即使在没有抽象解释的情况下达到(3)的最新技术,也存在无法在新的分析仪设计或编程语言功能存在的情况下重用的问题。首先,我们解决了具有防止了将抽象解释(尤其是计算抽象解释)与机械验证结合使用,从而提高了关键软件分析器的设计,实现和验证的最新水平。我们通过新的数学框架“构造性Galois连接”来实现此目的,该框架支持综合程序分析器的规范,根据这些归纳的规范计算实现,并且适合机械验证。最后,我们引入了可重用的组件,用于实现针对各种设计和应用的分析器。语义。我们通过两个新框架Galois Transformers和Definitional Abstract Interpreters来执行此操作。这些框架将分析仪的设计决策,实现片段和验证属性紧密地耦合到组成成分上,这些组成成分独立于(目标)编程语言,并且适合机械化验证。然后,通过简单地重新组装组件的组合,就可以恢复分析设计中的变化。使用此框架,非专家可以组装复杂的程序分析器,并保证结果可以通过结构验证。

著录项

  • 作者

    Darais, David.;

  • 作者单位

    University of Maryland, College Park.;

  • 授予单位 University of Maryland, College Park.;
  • 学科 Computer science.
  • 学位 Ph.D.
  • 年度 2017
  • 页码 304 p.
  • 总页数 304
  • 原文格式 PDF
  • 正文语种 eng
  • 中图分类
  • 关键词

相似文献

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

客服邮箱:kefu@zhangqiaokeyan.com

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

  • 服务号