You are on page 1of 44

逻辑联结词— Å

§ 定义1.3:设p和q是逻辑变量,p和q的异或运算记为pÅq,读
作p与q异或。
§ 逻辑联接词Å的含义:异或
§ 异或是不相容关系的“或”,比
真值表 如“张华出生在正月或腊月”。
p q pÅq 张华出生不可能即在正月又在腊
0 0 0 月,因此二者是不相容的。
0 1 1 § (1Å0)Å(1 Å1)
1 0 1 § =1 Å0计算机学院
1 1 0
§ =1
§ p Å q = 1 当且仅当 p ¹ q
规律:?

计算机学院 43
43
逻辑联结词— Å
§ 定义1.3:设p和q是逻辑变量,p和q的异或运算记为pÅq,读
作p与q异或。
§ 逻辑联接词Å的含义:异或
§ 异或是不相容关系的“或”,比
真值表 如“张华出生在正月或腊月”。
p q pÅq 张华出生不可能即在正月又在腊
0 0 0 月,因此二者是不相容的。
0 1 1 § (1Å0)Å(1 Å1)
1 0 1 § =1 Å0计算机学院
1 1 0
§ =1
§ p Å q = 1 当且仅当 p ¹ q
规律:p和q不同的,
pÅq= (pÙ¬q)Ú(¬pÙq)
就是使p Å q为真的
计算机学院 44
44
五个常用二元逻辑联结词
§ 定义1.3 二元联结词 Ù (合取), Ú (析取), Å (异
或), ® (蕴涵), « (等价)的真值表如下。

p q pÙq pÚq p®q p«q pÅq


0 0 0 0 1 1 0
0 1 0 1 1 0 1
1 0 0 1 0 0 1
1 1 1 1 1 1 0
一假则假 一真则真 假可推真计算机学院
同真同假则真 一真则真
全真则真 全假即假 真不可推假 一假一真即假 全假全真即假

计算机学院 45
45
命题逻辑联结词数目
§ 1元联结词4个
p F1 F2 F3 F4
0 0 0 1 1
1 0 1 0 1

计算机学院

计算机学院 46
46
命题逻辑联结词数目
§ 1元联结词4个
p F1 F2 F3 F4
0 0 0 1 1
1 0 1 0 1
§ 2元联结词16个
p q F1 F2 F3 F4 F5 F6 F7 F8 F9 F10 F11 F12 F13 F14 F15 F16
0 0 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1
0 1 0 0 1 1 0 0 1 1 0计算机学院
0 1 1 0 0 1 1
1 0 0 0 0 0 1 1 1 1 0 0 0 0 1 1 1 1
1 1 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1

!!
n元联结词:变元数为n,变元组合数2n ,联结词组合数 2
计算机学院 47
47
相等关系
逻辑关系: = (相等关系)
§ 定义:设p和q是逻辑变量,p和q的相等关系记为p = q,读
作p与q相等。
§ 含义:表示p和q是否相同

§ 真值表: p q p=q
0 0 1
0 1 0
计算机学院
1 0 0
1 1 1

计算机学院 48
48
推论关系
逻辑关系: ╞ (推论关系)
§ 定义:设p和q是逻辑变量,p和q的推论关系记为p ╞ q,读
作p推出q。其中p称为前提,q称为结论。
§ 含义:表示p成立时,q是否成立

§ 真值表: p q p╞q
0 0 1
0 1 1
计算机学院
1 0 0
1 1 1

计算机学院 49
49
逻辑域

§ 对象:{0,1}
§ 运算: ¬,Ù,Ú,®,«, Å p q p=q p╞q
0 0 1 1
§ 关系:=, ╞ 0 1 0 1
1 0 0 0
1 1 1 1

p ¬p p q pÙq pÚq 计算机学院


p®q p«q pÅq
0 1 0 0 0 0 1 1 0
1 0 0 1 0 1 1 0 1
1 0 0 1 0 0 1
1 1 1 1 1 1 0

计算机学院 50
50
逻辑域
逻辑域理解
§ 在逻辑域上,对真值{0, 1}严格定义了¬,Ù,Ú,®,«,Å等逻辑
运算以及=和╞逻辑关系,使得其表示意义严格明确,人们
对其理解不会有二义性。

§ 逻辑域是由真值集合、逻辑运算集合以及逻辑关系集合构
成的三元组。记为<{0,1},{Ù,Ú,¬,®,«,Å},{=,╞}>。
计算机学院

计算机学院 51
51
逻辑域
逻辑域在Python中实现
§ 真值集合
• {True,False}
§ 联结词
• Ù:p&q
• Ú:p|q
• ¬:(not p)
• Å:p^q 计算机学院
• ®:(not p) |q
• «:((not p) |q)&((not q) |p)

计算机学院 52
52
命题符号化
§ 我们用字母 p, q, r, s, t 等小写英文字母表示简单命题,
复合命题就可以用它们和联结词的串表示出来,这个过
程叫做命题符号化。

§ 命题符号化的步骤如下:
1. 对于用自然语言描述的复合命题,找出其中的简单
命题,并用不同字母表示不同简单命题。
2. 分析该复合命题的结构,找出其中的联结词,并将
计算机学院
该复合命题表示为公式。
注意:有时需要使用括号。

计算机学院 53
53
命题符号化示例
§ 李明是计算机系的学生,他住在312室或313室。
p:李明是计算机系的学生
q:他住在312室
r:他住在313室
p Ù (qÅr)

§ 燕子飞回来是春天来了的必要条件。
计算机学院
p:燕子飞回来
q:春天来了
q ®p

计算机学院 54
54
命题符号化示例
§ 如果我下班早且不累,就去商店看看。
p:我下班早
q:我累了
r:我去商店看看
(p Ù (¬q ))®r
§ 如果明天下雨,就不开运动会而照常上课。
p:明天下雨 计算机学院
q:明天开运动会
r:明天照常上课
p®((¬q)Ù r )
计算机学院 55
55
内容
§1.1 命题和联结词
§1.2 公式和真值赋值
§1.3 等值演算
§1.4 对偶定理
§1.5 联结词的完全集
§1.6 范式
§1.7 逻辑推论 计算机学院

计算机学院 56
56
1.2公式和真值赋值
§ 合式公式
§ 真值表计算
§ 语义
§ 可满足性与有效性

计算机学院

计算机学院 57
57
合式公式 (well-formed formula)
§ 命题逻辑中
• 常元: 0和1。
• 变元:命题变元,其值取为真值{0, 1}。
–命题变元常用小写英文字母p,q,r,s,t等
表示

计算机学院
§ 定义:命题变元称为原子公式。

计算机学院 58
58
(命题逻辑)合式公式定义
§ (1) 常元0和1是合式公式;
§ (2) 命题变元是合式公式;
§ (3) 若Q, R是合式公式,则:
• (¬Q)、(Q Ù R) 、(Q Ú R) 、
• (Q®R) 、(Q « R) 、(Q Å R)是合式公式;
§ (4) 只有有限次应用规则(1)—(3)构成的公式计算机学院
是合式公式。

计算机学院 59
59
合式公式释义
§ 合式公式是命题逻辑的语法概念,它仅仅是符
合语法结构的公式,是没有任何意义的符号串。
• 1)0和1是符号,没有表示逻辑真值的意思
• 2) Ù、Ú、¬、®、«和Å是逻辑运算符号
,也没有表示逻辑运算的意思;
• 3)命题变元也是符号。
§ 合式公式的定义具有抽象性和严格性
计算机学院
• 对于一个合式公式的理解是相同的,不会产生
二义性。

计算机学院 60
60
合式公式
§ 设S是联结词的集合。由S生成的公式定义如下:
• 1)若c是S中的0元联结词,则c是由S生成的公式。
• 2)原子公式是由S生成的公式。
• 3)若n≥1,F是S中的n元联结词,A1,…,An是由S
生成的公式,则FA1…An是由S生成的公式。

§ 卢卡西维茨运算符表示法
• 前缀表示,FA1…,An; 计算机学院
• 中缀表示,A1FA2;
• 后缀表示,A1…,AnF

计算机学院 61
61
合式公式
§ 设S是联结词的集合是{¬,∧,∨,Å ,→, «}。

¬(pÙq) «(¬pÚ¬q ) ? (p → 0) ∧ (q →1) ?

§ p, q是合式公式 § 0,1合式公式
§ ¬p, ¬q, pÙq是合式公式 § p, q是合式公式
§ (p → 0), (q →1)是
§ ¬(pÙq), (¬pÚ¬q )是合式公式 合式公式
计算机学院
§ ¬(pÙq) «(¬pÚ¬q )是合式 § (p → 0) ∧ (q →1)是
公式 合式公式

计算机学院 62
62
逻辑合式公式
合式公式判断
§ (Q® 0)Ú(Q ®1)

§ ¬QÙ(P®Q)®¬P

§ (P®Q)Ù(Q®R)=(P®R)

§ (Q®R) ®(QÙP®RÙP) 计算机学院

计算机学院 63
63
命题逻辑语言
§ 定义:所有的命题合式公式集合构成了
命题逻辑语言,记为L 。

§ 一般来说,命题逻辑语言L 是无穷集合
,也就是说合式公式有无穷多个。
计算机学院

计算机学院 64
64
公式复杂度
§ 公式A的复杂度表示为FC(A)
• 1)常元复杂度为0。
• 2)命题变元复杂度为0,如果p是命题变元,则
FC (p)=0。
• 3)如果公式A=¬B,则FC (A) = FC(B) + 1。
• 4)如果公式A=B1 Ù B2或A=B1 Ú B2或
A=B1®B2或 A=B1« B2或
计算机学院
A=B1 Å B2,
则FC (A)=max{FC(B1), FC(B2)} + 1。

计算机学院 65
65
公式序:联结词的优先级
§ 从高到低的顺序排列为:¬、Ù、Ú、 Å 、
®、«
§ 同一个联结词连续多次出现且无括号,则
按从左至右的顺序运算
§ 在满足运算次序不变的情况下,运用联结
词的优先级规则可以减少合式公式括号。
计算机学院

计算机学院 66
66
联结词的优先级-例子
(((((pÙq)Úr)Úq)®p) Åq)«r

计算机学院

计算机学院 67
67
联结词的优先级
(((((pÙq)Úr)Úq)®p) Åq)«r
= ((((pÙqÚr)Úq)®p) Åq)«r
= (((pÙqÚrÚq)®p) Åq)«r
= ((pÙqÚrÚq®p) Å q) «r
计算机学院
= (pÙqÚrÚq®p) Å q«r

计算机学院 68
68
真值表计算
§ 命题逻辑语言L 的合式公式仅仅是一
个符号串。
§ 对于一个合式公式,我们关注点之一
是它在什么情况下为真?在什么情况
下为假?即一个合式公式的逻辑真值
是什么?
计算机学院
§ 一个合式公式与逻辑真值之间的对应
关系。

计算机学院 69
69
真值表计算
§ 求公式¬( QÙR) « ( ¬QÚ¬R)的真值

请大家先试试

计算机学院

计算机学院 70
70
真值表计算
§ 求公式¬( QÙR) « ( ¬QÚ¬R)的真值
真值表求法:
• 将公式¬( QÙR) « ( ¬QÚ¬R)按照公式产生结构逐次分解成QÙR, ¬( QÙR),
¬Q, ¬R, ¬QÚ¬R等子公式
• 分别求子公式的值
• 最后求得原公式的值
Q R QÙR ¬( QÙR) ¬Q ¬R ¬QÚ¬R ¬( QÙR) « ( ¬QÚ¬R)
0 0 0 1 1 1 1 1
0 1 0 1 1 0 1 1
1 0 0 1 0 1 1计算机学院 1
1 1 1 0 0 0 0 1

§ 优缺点分析:真值表求法容易直观,但是当命题变元较多时,真值表行
数指数增长,或者当公式比较复杂时,真值表列数随着复杂度增长,会
出现难以计算的缺点

计算机学院 71
71
python
§ {True,False}
§ Ù:p&q
§ Ú:p|q
§ ¬:(not p)
§ Å:p^q
§ ®:(not p) |q
§ «:((not p) |q)&((not q) |p) 计算机学院

计算机学院 72
72
python程序求真值表
§ 求公式¬( QÙR) « ( ¬QÚ¬R)值。
§ 设计python程序实现真值表求值

def truthvalue( ): def main():


print("p q f0 f1 f2 f3 f4 f5") truthvalue( )
truth={True,False} return
tv=True main()
for q in truth: p q f0 f1 f2 f3 f4 f5
for r in truth: 0 0 0 1 1 1 1 1
f0=q&r 0 1 0 1 1 0 1 1
f1=(not f0) 1 计算机学院
0 0 1 0 1 1 1
f2=(not q) 1 1 1 0 0 0 0 1
f3=(not r)
f4=f2|f3
f5=((not f1)|f4)&((not f4) | f1)
print01((q,r,f0,f1,f2,f3,f4,f5))
return
计算机学院 73
73
(命题逻辑)合式公式语义
§ 论域:研究对象的集合。
§ 解释
• 将论域的对象对应变元。
§ 结构
• 论域和解释称为结构。
§ 语义
• 符号对应的对象。 计算机学院
• 公式所指称对象。
• 合式公式的语义是其对应的逻辑真值。

计算机学院 74
74
常元和运算符语义
§ 合式公式的常元0和1的语义分别对应逻
辑真值0和1;
§ 合式公式中的Ù、Ú、¬、®、«或Å等
逻辑运算符的语义分别是逻辑真值集合
上的Ù、Ú、¬、®、«或Å运算等。
§ 合式公式的语义是逻辑真值。
计算机学院

计算机学院 75
75
真值赋值函数
§ 从合式公式到逻辑集合{0,1}的函数称为
真值赋值函数。
§ V:A ®{0,1}
§ 设v是真值赋值函数,用pv表示v赋给命
题变元p的真值, v Î {0, 1}。

计算机学院

计算机学院 76
76
合式公式语义
§ 设S是联结词的集合是{¬,Ù,Ú,Å ,®,«}。
§ 由S生成的合式公式Q在真值赋值v下的真值指派v(Q) :
§ ⑴ v(0)=0, v(1)=1。
§ ⑵ 若Q是命题变元p,则v(Q)= pv。
§ ⑶ 若Q1,Q2是合式公式
• 若Q= ¬ Q1, 则v(Q)= ¬ v(Q1)
• 若Q=Q1 Ù Q2, 则v(Q)=v(Q1)Ù v(Q2)
• 若Q=Q1∨Q2, 则v(Q)=v(Q1)∨v(Q 计算机学院
2)
• 若Q=Q1® Q2,则v(Q)=v(Q1)® v(Q2)
• 若Q=Q1 « Q2,则v(Q)=v(Q1)« v(Q2)
• 若Q=Q1Å Q2, 则v(Q)=v(Q1)Å v(Q2)

计算机学院 77
77
真值赋值
§ 由S生成的公式Q在真值赋值v下的真值
v(Q)定义如下:
§ ⑴若Q是S中的0元联结词c,则v(Q)=c。
§ ⑵若Q是命题变元p,则v(Q)= pv。
§ ⑶若Q是FQ1…,Qn,其中n≥1, F是S中
计算机学院
的n元联结词, Qi是公式,则
v(Q)=v(FQ1…Qn)=Fv(Q1)…v(Qn)。

计算机学院 78
78
语义方法的计算
§ p®(q®r) § p®(q®r)
§ 真值赋值函数: § 真值赋值函数:
§ v(p)=1, v(q)=1, v(r)=0 § v(p)=0, v(q)=1, v(r)=0
§ v(p®(q®r)) § 大家试一试
§ =v(p) ®v(q®r)
§ =v(p) ®(v(q)®v(r))
计算机学院
§ =1®(1®0)
§ =1®0
§ =0

计算机学院 79
79
语义方法的计算
§ p®(q®r) § p®(q®r)
§ 真值赋值函数: § 真值赋值函数:
§ v(p)=1, v(q)=1, v(r)=0 § v(p)=0, v(q)=1, v(r)=0
§ v(p®(q®r)) § v(p®(q®r))
§ =v(p) ®v(q®r) § =v(p) ®v(q®r)
§ =v(p) ®(v(q)®v(r)) § =v(p) ®(v(q)®v(r))
计算机学院
§ =1®(1®0) § =0 (1®0)
®
§ =1®0 § =0®0
§ =0 § =1

计算机学院 80
80
例题
§ ¬(pÙq)®¬pÚ¬q
§ v(p)=0或v(q)=0
§ v(¬(pÙq)®¬pÚ¬q)
§ = ¬(v(p)Ùv(q))®¬v(p)Ú¬v(q)
§ = ¬(v(p)Ùv(q))®1
计算机学院
§1

请大家结合真值表观察计算过程的特点
计算机学院 81
81
简化计算
§ ¬(pÙq)®¬pÚ¬q
§ v(p)=0或v(q)=0
§ v(¬(pÙq)®¬pÚ¬q)
§ = ¬(v(p)Ùv(q))®¬v(p)Ú¬v(q)
§ = ¬(v(p)Ùv(q))®1
计算机学院
§1

计算机学院 82
82
简化计算(续)
§ v(p)=1并且v(q)=1
§ v(¬(pÙq)®¬pÚ¬q)

计算机学院

计算机学院 83
83
简化计算(续)
§ v(p)=1并且v(q)=1
§ v(¬(pÙq)®¬pÚ¬q)
§ = ¬(v(p)Ùv(q))®¬v(p)Ú¬v(q)
§ = ¬1® ¬v(p)Ú¬v(q)
§1
计算机学院

计算机学院 84
84
等价真值赋值
§ 定理1.1设Q是公式,v1和v2是真值赋值,对于
Q中出现的每个命题变元p, p v
= p
1 v
;则
2

v1(Q)=v2(Q)。
§ 证明 对Q的长度(复杂度)进行归纳。
§ 若Q的长度是0,则Q是命题变元或0元联结词。
• ⑴若Q是0元联结词c,则v1(Q)=c=v2(Q)。
• ⑵若Q是命题变元p , 计算机学院

则v1(Q) =1
p v
=
2
p v
=v2(Q)。

计算机学院 85
85
等价真值赋值(续)
§ 设m大于0,对于每个复杂度小于m的由S生
成的公式B,v1(B)=v2(B)。
§ (3)若Q是FQ1…Qn,其中n≥1,F是S中的n元
联结词,则Q1,…,Qn的复杂度都小于m,由
归纳假设知道,v1(Qi)=v2(Qi) i=1,…,n
• v1(FQ1…Qn )
• =F v1(Q1 )…v1(Qn)
• =F v2(Q1 )…v2(Qn) 计算机学院
• =v2(FQ1…Qn )
• 因此,v1(FQ1…Qn))= v2(FQ1…Qn )
§ 证毕
计算机学院 86
86

You might also like