离散数学是计算机专业很重要的基础课程,是后续数据结构,算法的基础。在学习数据结构的时候,接触到图论算法的时候,遇到了困难。于是决定回来学习离散数学。离散数学(课本)包括了数理逻辑、集合论、计数技术、关系、树、图和布尔代数等。每个章节都是数学与算法的基础,都接触过,但都没有太过深入。唯一一节算是深入了一点的应该就是布尔代数了,这在学习数字电路时是详细学习过的。所以我计划花费大概半个月时间看完《离散数学及其应用》(本科教学版,Kenneth H.Rosen著,原书第七版)。同时囫囵记上几篇笔记。
这是离散数学系列的第一篇,讨论命题逻辑与推理证明,其是数学中推理与证明的理论基础。理解数理逻辑(mathematical logic),领会并构造数学论证是学习目的。早在高中时便对数理逻辑有了简单的讨论,这里相较来说更为深入一点。包含命题逻辑、谓词与量词逻辑、推理和证明。对于比较简单的定义推理是省略的,详细资料请参考相关书籍。
命题逻辑
何为命题
定义:命题是一个能判断真假的陈述句。
既然能判断真假,就意味着一个命题或者为真,或者为假,不能既真又假。
例如:“地球是圆的”,“太阳系有八大行星”,“时间是静止的”,都是命题,其中前两个命题为真,后一个为假。
我们一般使用命题变元来表示命题,如 p p , , r r , , t t …
如果命题为真命题,则称其真值为真,记作 (即True)。反之,假记作 F F (即False)。
逻辑运算符
写法、读法及真值如下表:
逻辑运算符 | 符号 | 意义 | 读法 | 真值 | 语法 合取 p∧q p ∧ q p p 和 的合取 p p 且 p p 、 同为真时为真,有一个为假则为假 \land 析取 p∨q p ∨ q p p 和 的析取 q q 或 p p 、 同为假时为假,有一个为真则为真 \lor 否定 ¬p ¬ p p p 的否定 | 非 ¬q ¬ q 与 q q 真值相反 | \lnot | |||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
异或 |
p p 和
的异或 p p 异或
p p 、
真值相同为假,相异为真 \oplus 条件命题
命题语言是一种人工语言,并不以自然语言的用法为基础。 p→q p → q 表达的是 p p 能推出 q q 的含义,即是:
是 q q 的充分条件。这是一个命题,真假待判断。 由条件命题( |