首页> 外文学位 >Solving quantified first order formulas in Satisfiability Modulo Theories.
【24h】

Solving quantified first order formulas in Satisfiability Modulo Theories.

机译:在可满足性模理论中求解量化的一阶公式。

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

摘要

Design errors in computer systems, i.e. bugs, can cause inconvenience, loss of data and time, and in some cases catastrophic damages. One approach for improving design correctness is formal methods: techniques aiming at mathematically establishing that a piece of hardware or software satisfies certain properties. For some industrial cases in which formal methods are utilized, a huge number of extremely large mathematical formulas are generated and checked for satisfiability. For these applications, high-performance solvers, which automatically check the formulas, play a crucial role.;For example, propositional logic (SAT) solvers are very popular. However, it is rather expensive to encode certain problems in propositional logic and the encoding is tricky and hard to understand. Recently, Satisfiability Modulo Theories (SMT) solvers have been developed to handle formulas in a more expressive first order logic. In contrast to general theorem provers that check satisfiability under all models, SMT solvers check satisfiability with regard to some background theories, such as theories of arithmetic, arrays and bit-vectors. SMT solvers are efficient and automatic like SAT solvers, while accepting much more general formulas.;For some applications, SMT formulas with quantifiers are useful. Traditional SMT solvers only consider quantifier-free formulas. In general, deciding SMT formulas containing quantifiers is undecidable. In other words, there are no complete and sound algorithms for solving a quantified SMT formulas.;This dissertation proposes several novel techniques for solving quantified SMT formulas. For general quantifier reasoning in SMT, the practical approach adopted by most state-of-the-art SMT solvers is heuristics-based instantiation. We propose a number of new heuristics. Most important is the notion of "instantiation level" that solves several challenges of general quantifier reasoning at the same time. These new heuristics have been implemented in solver CVC3, and experimental results show that a significant number of additional benchmarks can be solved than could be solved by CVC3 before.;When only considering formulas restricted to be within certain fragments of first order logic, it is possible to have complete algorithms based on instantiation. We propose a series of new fragments, and prove that formulas in these new fragments can be solved by complete algorithm based on instantiation.;Finally, this dissertation addresses the correctness of solvers. A practical method to improve correctness is to ask an SMT solver to produce a proof for a case it solves, and then proceed to check the proof. The problem is that such a proof checker will be rather complicated because it has to deal with a lot of proof rules. Thus the correctness of the proof checker becomes questionable. We propose a proof translator that translates a proof from SMT solver CVC3 into a trusted solver HOL Light. Experimental results show that this approach is feasible. When translating proofs, two faulty proof rules in CVC3 and two mis-labeled benchmarks in SMT-LIB were discovered.
机译:计算机系统中的设计错误(例如错误)可能会造成不便,数据和时间损失,并且在某些情况下会造成灾难性的损害。改善设计正确性的一种方法是形式化方法:旨在以数学方式确定一件硬件或软件满足某些特性的技术。对于某些使用形式化方法的工业案例,会生成大量非常大的数学公式并检查其可满足性。对于这些应用程序,自动检查公式的高性能求解器起着至关重要的作用;例如,命题逻辑(SAT)求解器非常受欢迎。然而,用命题逻辑对某些问题进行编码是相当昂贵的,并且编码是棘手且难以理解的。最近,已开发了可满足性模理论(SMT)求解器,以一种更具表现力的一阶逻辑来处理公式。与检查所有模型下的可满足性的一般性定理证明相反,SMT求解器针对某些背景理论(例如算术,数组和位向量论)检查可满足性。 SMT求解器像SAT求解器一样高效且自动,同时接受更通用的公式。;对于某些应用,带有量词的SMT公式非常有用。传统的SMT求解器仅考虑无量纲公式。通常,决定包含量词的SMT公式是不确定的。换句话说,目前还没有完整,合理的算法来求解量化的SMT公式。本文提出了几种新颖的方法来求解量化的SMT公式。对于SMT中的一般量词推理,大多数最先进的SMT求解器采用的实际方法是基于启发式的实例化。我们提出了许多新的启发式方法。最重要的是“实例化级别”的概念,它可以同时解决通用量词推理的几个挑战。这些新的启发式方法已在求解器CVC3中实现,实验结果表明,与以前的CVC3所能解决的相比,可以解决大量其他基准。当仅考虑限制在一阶逻辑的某些片段内的公式时,可能有基于实例的完整算法。我们提出了一系列新的片段,并证明了这些新片段中的公式可以通过基于实例的完整算法来求解。最后,本文解决了求解器的正确性。一种提高正确性的实用方法是要求SMT求解器为其求解的情况提供证明,然后继续检查该证明。问题在于这样的证明检查器将相当复杂,因为它必须处理许多证明规则。因此,证明检查器的正确性令人怀疑。我们建议一种证明翻译器,它将SMT求解器CVC3的证明转换为受信任的求解器HOL Light。实验结果表明该方法是可行的。翻译证明时,在CVC3中发现了两个错误的证明规则,在SMT-LIB中发现了两个贴错标签的基准。

著录项

  • 作者

    Ge, Yeting.;

  • 作者单位

    New York University.;

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

相似文献

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

客服邮箱:kefu@zhangqiaokeyan.com

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

  • 服务号