丹尼尔·克罗宁奥弗·斯特里赫曼

(点击放大)

A类决策程序是一种算法,在给定决策问题的情况下,以正确的是/否回答结束。在这里,作者重点关注理论表达能力足以模拟实际问题,但仍然可以决定。具体而言,本书集中于以下方面的决策程序:自动验证中常用的一阶理论和推理、理论证明、编译器优化和操作研究。书中描述的技术来自图论等领域和逻辑,在工业中经常使用。

作者介绍了SAT的基本术语,可满足性模理论(SMT)和DPLL(T)框架。然后,在单独的章节中研究以下理论的决策程序:

  • 等式与未解释的函数
  • 线性算术
  • 位向量
  • 阵列
  • 指针逻辑
  • 量化公式。

这本书的第一版被用作课程教材全球范围内。它于2008年出版,当时被称为SMT的领域在它的早期,没有标准术语和规范算法现在有;第二版反映了这些变化。它提出了DPLL(T)框架。它还用现代SAT扩展了SAT章节启发式,并包括关于增量可满足性的新章节,以及相关的约束满足问题(CSP)。关于量词增加了一节关于一般量化的内容使用E-matching和关于有效命题推理的一节(EPR)。这本书还包括一个关于SMT在《工业软件工程与计算生物学》,合著者尼古拉·比约纳(Nikolaj Björner)、莱昂纳多·德·莫拉(Leonardo de Moura)和希勒尔·库格勒(Hillel Kugler)。

每章都有详细的参考书目和练习。讲师幻灯片和aC类++图书馆决策过程的快速原型可从这个网站。

这本书在施普林格亚马逊.Springer还提供了在线版本.

克拉克·巴雷特写了一篇该书第一版述评1月。罗斯玛丽·莫纳汉已写入回顾这本书的第二版在FACJ中。

(第一版勘误表,第二版勘误表)