程序验证(一):命题逻辑

本文介绍了程序验证中的命题逻辑,包括概念如命题公式、合式公式和语义规则。讨论了可满足性与永真性的概念,并阐述了如何通过真值表和演绎推理证明。还提及了范式转换,特别是Negation Normal Form (NNF)、Disjunctive Normal Form (DNF)和Conjunctive Normal Form (CNF)的重要性。
摘要由CSDN通过智能技术生成

程序验证(一):命题逻辑

概念

命题逻辑

例如 P ∨ ¬ Q → R P\vee \neg Q \to R P¬QR

  • 一个原子(atom)是一个或为真或为假的判断。
  • 一个文字(literal)是一个原子或它的非。
  • 命题公式(propositional formulas)由文字和逻辑连接符组成。

合式公式

合式公式(well-formed formulas) 由以下语法得到:

  • ⟨ a t o m ⟩ \langle atom\rangle atom ::= ⊤ ( t r u e ) ∣ ⊥ ( f a l s e ) ∣ P , Q , . . . ( 命 题 变 量 ) \top (true) | \bot (false)|P,Q, ... (命题变量) (true)(false)P,Q,...()
  • ⟨ l i t e r a l ⟩ \langle literal\rangle literal::= ⟨ a t o m ⟩ \langle atom\rangle atom| ¬ \neg ¬ ⟨ a t o m ⟩ \langle atom\rangle atom(非)
  • ⟨ f o r m u l a ⟩ \langle formula\rangle formula::= ⟨ l i t e r a l ⟩ \langle literal\rangle literal
    | ¬ \neg ¬ ⟨ f o r m u l a ⟩ \langle formula\rangle formula (negation)
    | ⟨ f o r m u l a ⟩ \langle formula\rangle formula ∧ \wedge ⟨ f o r m u l a ⟩ \langle formula\rangle formula (conjunction)
    | ⟨ f o r m u l a ⟩ \langle formula\rangle formula ∨ \vee ⟨ f o r m u l a ⟩ \langle formula\rangle formula (disjunction)
    | ⟨ f o r m u l a ⟩ \langle formula\rangle formula → \to ⟨ f o r m u l a ⟩ \langle formula\rangle formula (implication)
    | ⟨ f o r m u l a ⟩ \langle formula\rangle formula ↔ \leftrightarrow ⟨ f o r m u l a ⟩ \langle formula\rangle formula (equivalence)

举例:

公式 是否为合式公式
⊤ \top
P ∧ ( Q ∨ R → P ) P\wedge (Q \vee R\to P) P(QRP)
P P P
P ⇒ Q P\Rightarrow Q PQ

语义

目的:给命题逻辑赋予涵义
把布尔值赋值给(公式,解释)对

F o r m u l

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值