形式化方法

模型检验、定理证明、霍尔逻辑 — 用数学证明程序正确性

4 个节点 高级 4

知识结构

学习路径

1
命题逻辑与谓词逻辑

命题逻辑研究命题之间的逻辑关系(与、或、非、蕴含)。谓词逻辑引入量词(∀ 所有、∃ 存在)和谓词,表达能力更强,是程序验证的理论基础

#formal#logic#verification 1 个子节点
高级
2
模型检验(Model Checking)

模型检验自动验证系统是否满足给定规范——把系统建模为状态机,用时序逻辑(LTL/CTL)描述规范,穷举搜索所有状态检查是否违反规范

#formal#model-checking#verification 1 个子节点 1 个前置
高级
3
定理证明(Coq, Lean)

定理证明器把数学证明写成代码——计算机检查每一步逻辑推导是否严格正确。Curry-Howard 同构揭示"证明即程序,命题即类型"

#formal#theorem-proving#coq 1 个子节点 1 个前置
高级
4
程序验证(Hoare Logic, 分离逻辑)

Hoare Logic 用前置条件、程序、后置条件的三元组 {P} C {Q} 来推理程序的正确性。分离逻辑扩展了 Hoare Logic,能处理指针和堆操作

#formal#verification#hoare 1 个前置
高级