跳到主要内容

1.2. 命题逻辑的应用

逻辑在数学、计算机科学和其他许多学科有着许多重要的应用。数学、自然科学以及自然语言中的语句通常不太准确,甚至有歧义。为了是表达更精确,可以将他们翻译成逻辑语言。

语句翻译

由于各种人类预言(特别是汉语)常有二义性。把语句翻译成复合命题可以消除起义。一旦完成了从语句到逻辑表达式的翻译,我们就可以分析这些逻辑表达式以确定它们的真值,对他们进行操作。

例题: 把下面的语句翻译成逻辑表达式?

“你可以在校园访问因特网,仅当你主修计算机科学或者你不是新生。”

a,c,fa,c,f分别代表“你可以在学校访问因特网”,“你主修计算机科学”和“你是新生”。上述语句可以译为

a(c¬f)a \to (c \lor \lnot{f})

当你不是新生并且没有主修计算机科学的时候,语句的真值为假。

语句的翻译中首先要确定的是什么是结论,什么是条件。

系统规范说明

在描述硬件系统和软件系统时,将自然语言语句翻译成逻辑表达式是很重要的一部分。系统和软件工程师根据自然语言描述的需求,生成精确而无二义的规范说明,这些规范说明可以作为系统开发的基础。

系统规范说明应该是一致的,也就是说,系统规范说明不应该包含可能导致矛盾的相互冲突的需求。

例题: 确定下列系统规范说明是否一致。

  • (a) 诊断消息存储在缓冲区中或者被重传
  • (b) 诊断消息没有存储在缓冲区中
  • (c) 如果诊断消息存储在缓冲区中,那么它被重传

pp为“诊断消息在缓冲区中”,令qq表示“诊断消息被重传”
(a)可以表示为pqp\lor{q},(b)可以表示为¬p\lnot{p},(c)可以表示为pqp \to{q}

布尔搜索

由于搜索采用命题逻辑的技术,所以称为布尔搜索

逻辑谜题

可以用逻辑推理解决的谜题称为逻辑谜题。求解逻辑谜题是实践逻辑规则的一种最好的方法。


习题部分

模糊逻辑
模糊逻辑用于人工智能。在模糊逻辑中,命题的真值是010\backsim1的一个数。真值为0的命题为假,真值为1的命题为真。010\backsim1的真值表示真实性的不同程度。

例如,语句“Fred是幸福的”的真值可以是0.8,因为Fred大部分的时间是幸福的。

  • 模糊逻辑中命题否定的真值是1减去该命题的真值
  • 模糊逻辑中的两个命题的合取的真值是两个命题真值的最小值
  • 模糊逻辑中的两个命题的析取的真值是两个命题真值的最大值