首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >Isabelle/HOL中的验证器核心

Isabelle/HOL中的验证器核心
EN

Stack Overflow用户
提问于 2013-02-05 09:24:15
回答 2查看 698关注 0票数 8

问题

伊莎贝尔/霍尔验证器的核心算法是什么?

我在寻找一个关于计划元级评估器的东西。

澄清

我只对验证器感兴趣,而不是自动定理证明的策略。

上下文

我想从零开始实现一个简单的验证器(纯粹出于教育原因,而不是用于生产)。

我想了解伊莎贝尔/霍尔的核心验证算法。我不关心用于自动定理证明的策略/代码。

我怀疑核心验证器算法非常简单(而且优雅)。但是,我找不到它。

谢谢!

EN

回答 2

Stack Overflow用户

发布于 2013-02-28 21:05:17

伊莎贝尔是"LCF系列“证明检查器的一员,这意味着你有一个特殊的模块--推理内核--所有的推理都通过它来产生抽象数据类型thm的值。这有点像操作系统内核处理系统调用。相对于内核实现的正确性,您可以以这种方式生成的一切都是“构造正确的”。由于验证器的编程语言环境(Standard )具有很强的静态类型正确性特性,推理内核的构造正确性将传递给其他的验证辅助实现,这可能是相当大的。

因此,原则上,您有一个相对较小的“可信内核”部分和一个非常大的“应用程序用户空间”。特别是,大多数Isabelle/HOL实际上是一个大量的图书馆理论和附加工具(主要是在SML中)在伊莎贝尔的用户土地。

在Isabelle中,内核基础结构非常复杂,但与系统的其他部分相比仍然非常小。内核实际上是分层为“微内核”(模块)和“纳米内核”(模块)。Thm生成米尔纳的LCF-方法意义上的thm值,Context为您生成的任何结果处理theory证书,以及本地推理的证明上下文(特别是在Isar证明语言中)。

如果你想了解更多关于LCF风格的证明,我建议你也看看荷-光,它可能是LCF家族中最小的现实系统,在某种意义上是现实的,因为人们已经用它做了大量的应用。HOL-Light有一个很大的优势,它的实现可以很容易理解,但这种极简主义也有一些轻蔑的优点:它不能完全保护用户在它的ML环境(即OCaml而不是SML )中做无意义的事情。由于各种技术原因,OCaml在默认情况下并不像标准ML那样“安全”。

票数 11
EN

Stack Overflow用户

发布于 2013-02-28 16:54:11

如果你解开伊莎贝尔的消息来源,比如。

linux.tar.gz

您将在

src/Pure/thm.ML

而且,有这样一个项目,你已经想要解决:

http://www.proof-technologies.com/holzero/

稍后添加:另一个更严重的项目是

https://team.inria.fr/parsifal/proofcert/

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/14703998

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档