1.2 命题逻辑的应用
语句翻译
各种人类语言常有二义性,把语句翻译成复合命题则可以消除歧义.翻译时也许需要根据语句的含义做一些合理的假设。
例1
怎样把下面的语句翻译成逻辑表达式?
“你可以在校园访问因特网,仅当你主修计算机科学或者你不是新生。”
解: 令\(a,c\)和\(f\)分别表示“你可以在校园访问因特网”、“你主修计算机科 学”和“你是个新生”,上述语句可以译为
\[
a\to (c\vee\neg f)
\]
系统规范说明
在描述硬件系统和软件系统时,将自然语言语句翻译成逻辑表达式是很重要的一部分。系 统和软件工程师根据自然语言描述的需求,生成精确而无二义性的规范说明,这些规范说明可作为系统开发的基础。
系统规范说明应该是 一致的 ,也就是说,系统规范说明不应该包含可能导致矛盾的相互冲突的需求。当规范说明不一致时,就无法开发出一个满足所有规范说明的系统。
例2
确定下列系统规范说明是否一致的。
- “诊断消息存储在缓冲区中或者被重传。”
- “诊断消息没有存储在缓冲区中。”
- “如果诊断消息存储在缓冲区中,那么它被重传。”
解
令\(p\)为“诊断消息存储在缓冲区中”,\(q\)为“诊断消息被重传”,则, 以上语句可以表示为\(p\vee q, \neg p, p\to q\) 使\(p\)为假,则\(\neg p\)为真,此时,\(\neg p, p\to q\)均为真. 因此,该系统规范说明是一致的.
布尔搜索
逻辑联结词广泛用于大量信息搜索中,由于搜索采用命题逻辑的技术,所以称为布尔搜索。
逻辑电路
逻辑电路(或数字电路)接受输入信号\(p_1,p_2,\cdots,p_n\),每个信号1位[或0(关)或1(开)], 产生输出信号\(s_1,s_2,\cdots,s_n\),每个1位。
下图展示了三种基本逻辑门,分别是非门(NOT),或门(OR)以及与门(AND).
