欢迎大家赞助一杯啤酒🍺 我们准备了下酒菜:Formal mathematics/Isabelle/ML, Formal verification/Coq/ACL2, C++/F#/Lisp
Formal verification
来自开放百科 - 灰狐
(版本间的差异)
小 (→简介) |
小 (→项目) |
||
第25行: | 第25行: | ||
==项目== | ==项目== | ||
[[文件:deepspec-logo.png|right]] | [[文件:deepspec-logo.png|right]] | ||
+ | *[https://awesomeopensource.com/projects/proof-assistant Proof Assistant Open Source Projects on Github] | ||
*[https://deepspec.org DeepSpec] The Science of Deep Specification | *[https://deepspec.org DeepSpec] The Science of Deep Specification | ||
*[[Coq]] | *[[Coq]] |
2021年12月23日 (四) 15:06的版本
您可以在Wikipedia上了解到此条目的英文信息 Formal verification Thanks, Wikipedia. |
Proof assistant
目录 |
简介
这里指包含 Proof assistant 证明助理(证明助手) 在内的所有形式化相关主题,包含计算机辅助定理证明、Coq 证明助理、函数式编程、操作语义、用于论证软件的逻辑和技术、静态类型系统、基于性质的随机测试、以及对实践中编程代码的验证等。
在计算机科学和软件工程领域,形式化方法是使用适当的数学分析以提高设计的可靠性和强健性,适合于软件和硬件系统的描述、开发和验证。
形式验证(Formal verification)可以分为三大类:抽象解释(Abstract Interpretation)、形式模型检查(Formal Model Checking,也称作特性检查)和定理证明(Theory Prover)。
非形式化证明是算法,形式化证明是代码。
覆盖的核心概念有:
- 逻辑学中的基本工具,用于准确地提出并论证关于程序的假设,逻辑学被称之为计算机科学的微积分;
- 证明助理用于构造严谨的逻辑论据,分为两类:自动定理证明器和证明助理(如:Coq、Agda);
- 函数式编程思想,同时作为一种编程方法来简化程序的论证,以及架起程序和逻辑学之间的桥梁。
功能
指南
项目
- Proof Assistant Open Source Projects on Github
- DeepSpec The Science of Deep Specification
- Coq
- Agda
- Idris
- ACL2
- Prototype Verification System (PVS) 使用 Common Lisp 编写
- hs-to-coq
- Formal Verification of Ethereum Contracts Ethereum
- HOL Interactive Theorem Prover
文档
图书
- 《Software Foundations》 软件基础系列是对可靠软件的数学基础的广泛介绍。该系列的主要创新之处在于,每一个细节都是百分之百的形式化和机器检查:每一卷的整个文本,包括练习,实际上是Coq证明助手的 "证明脚本"。
- 《软件基础》系列广泛地介绍了可靠软件的数学基础,这是《Software Foundations》中文版。
图集
链接
分享您的观点