离散数学(上)
第一部分 数理逻辑
第一章 命题逻辑的基本概念
命题与联结词
命题
命题: 非真即假的陈述句
真值: 命题的判断结果, 取值为真或假
简单命题(原子命题): 不能再拆分的命题
复合命题: 简单命题通过联结词联结而成的命题
联结词
否定联结词 (\(\neg\)) : 当且仅当\(p\)为假时,\(\neg p\)为真
合取联结词 (\(\land\)) : 意为"p并且q", 当且仅当p与q同时为真时, \(p\land q\)为真
析取联结词 (\(\lor\)) : 意为"或", 当p与q至少有一个为真时, \(p\lor q\)为真, 当且仅当p与q同时为假时, \(p\lor q\)为假
蕴含联结词 (\(\rightarrow\)) :
意为"如果p, 则q", 箭头左边称为前件, 箭头右边称为后件
当p为真时, \(p\rightarrow q\)与q同真假, 当p为假时, 不论q的真假, \(p\rightarrow q\)都为真, 这里与自然语言里的"如果...则..."并不一致
等价联结词 (\(\leftrightarrow\)) : 当且仅当p与q同真假时, \(p\leftrightarrow q\)为真

联结词的优先级:否合析蕴等
命题公式及其赋值
命题公式
命题常项(命题常元): 即简单命题, 其真值是确定的
命题变项(命题变元): 真值可以变化的陈述句, 命题变项不是命题
合式公式: 将命题常项和命题变项用圆括号和联结词联结起来的符号串
- 单个命题变项和命题常项是合式公式, 成为原子命题公式
- 若A是合式公式, 则(\(\neg\)A)是合式公式
- 若A、B是合式公式, 则(\(A\land B\))、(\(A\lor B\))、(\(A\rightarrow B\))、(\(A\leftrightarrow B\))为合式公式
- 有限次地运用上面两条法则组成的符号串也是合式公式(合式公式通过联结词组合也是合式公式)
元语言符号: 通过A、B等符号表示合式公式的语言
对象语言符号: 通过p、q等具体命题项表示的公式
公式的层次定义
- 若公式A是单个命题变项或常项,则A为0层公式
- 当A= \(\neg\)B, B是n层公式时, A为n+1层公式
- 当A=B (\(\land\) / \(\lor\) / \(\rightarrow\) / \(\leftrightarrow\)) C, B、C分别为i、j层公式, 且n=max(i, j)时, A为n+1层公式
命题的赋值
公式的赋值: 给命题公式中的全部命题变项各指定一个真值。若指定的一组值使A为真, 则称这个赋值为A的成真赋值, 反之为A的成假赋值
赋值的表示: 例如对\(p_1, p_2, ..., p_n\)赋值为\(α_1, α_2, ..., α_n(α_i为0或1)\), 可以表示为\(α_1α_2α_3...α_n\), 即\(000101110...\)这样的形式
真值表: 将公式A在所有赋值下的取值情况列成表
命题公式的分类
- 重言式(永真式):在各种赋值之下都为真
- 矛盾式(永假式):在各种赋值之下都为假
- 可满足式:若A不是矛盾式,则A为可满足式,也就是说A至少有一个成真赋值
第二章 命题逻辑等值演算
等值式
定义
若\(A\leftrightarrow B\)为重言式,则A与B是等值的,记作\(A\Leftrightarrow B\)
判断等值的方法
- 通过真值表
- 等值演算
等值式模式
-
双重否定律:
\(A\Leftrightarrow \neg\neg A\) -
幂等律:
\(A\Leftrightarrow A\land A\), \(A\Leftrightarrow A\lor A\) -
交换律:
\(A \land B\Leftrightarrow B\land A\), \(A \lor B \Leftrightarrow B\lor A\) -
结合律:
\((A \lor B)\lor C \Leftrightarrow A\lor (B\lor C)\), \((A \land B)\land C \Leftrightarrow A\land (B\land C)\) -
分配律:
\(A\land (B\lor C)\Leftrightarrow (A\land B)\lor(A\land C)\)
\(A\lor (B\land C)\Leftrightarrow (A\lor B)\land(A\lor C)\) -
德摩根律:
\(\neg (A\lor B)\Leftrightarrow \neg A\land \neg B\), \(\neg (A\land B)\Leftrightarrow \neg A\lor \neg B\) -
吸收律:
\(A\lor (A\land B)\Leftrightarrow A\), \(A\land (A\lor B)\Leftrightarrow A\) -
零律:
\(A\lor 1\Leftrightarrow 1\), \(A\land 0\Leftrightarrow 0\) -
同一律:
\(A\land 1\Leftrightarrow A\), \(A\lor 0\Leftrightarrow A\) -
排中律:
\(A\lor \neg A\Leftrightarrow 1\) -
矛盾律:
\(A\land \neg A\Leftrightarrow 0\) -
蕴含等值式:可以用于去除蕴含符号
\(A\rightarrow B\Leftrightarrow \neg A\lor B\) -
等价等值式:可以用于去除等价符号
\(A\leftrightarrow B\Leftrightarrow(A\rightarrow B)\land(B\rightarrow A)\) -
假言易位:
\(A\rightarrow B \Leftrightarrow \neg B\rightarrow \neg A\) -
等价否定等值式:
\(A\leftrightarrow B\Leftrightarrow \neg A\leftrightarrow \neg B\) -
归谬论:
\((A\rightarrow B)\land (A\rightarrow \neg B)\Leftrightarrow \neg A\)
等值演算
由已知的等值式推导出另一些等值式的过程
析取范式与合取范式
简单析取式与简单合取式
文字:命题变项及其否定的统称
简单析取式:由有限个文字析取构成的公式
简单合取式:由有限个文字合取构成的公式
定理:一个简单析取式是重言式,当且仅当它同时含某个命题及它的否定;一个简单合取式是矛盾式,当且仅当它同时含某个命题及它的否定
析取范式与合取范式
析取范式:由有限个简单合取式的析取构成的命题公式
合取范式:由有限个简单析取式的合取构成的命题公式
定理:一个析取范式是矛盾式,当且仅当它的每个简单合取式都是矛盾式;一个合取范式是重言式,当且仅当它的每个简单析取式都是重言式
范式存在定理:任一命题公式都存在与之等值的析取范式与合取范式
求对应范式的步骤:
- 消去联结词
- 使用双重否定律消去双重否定符
- 使用分配律
极大项和极小项
极小项:含有n个命题变项的简单合取式中,若每个命题变项和它的否定式恰好出现一个且仅出现一次,则这个简单合取式为极小项。一般把各个命题变项或它们的否定按下标大小或字典顺序排列
极大项:含有n个命题变项的简单析取式中,若每个命题变项和它的否定式恰好出现一个且仅出现一次
n个命题可产生\(2^n\)个不同的极小项或极大项,每个极小项只有一个成真赋值,每个极大项只有一个成假赋值
主析取、合取范式
主析取范式:所有简单合取式都是极小项的析取范式
主合取范式:所有简单析取式都是极大项的合取范式
主析取、合取范式的理解:主合取范式记录所有成假赋值,主析取范式记录所有成真赋值
- 定理:任何命题公式都存在唯一与之等值的主析取范式和主合取范式
做题用的技巧:
- 如果某个简单析取/合取式不含文字r,则可以析取\((r\land \neg r)\),或合取\((r\lor \neg r)\)
- \(\neg (m_i \lor m_j \lor m_k \lor...)=M_i \land M_j \land M_k \land...\)
- 假设命题公式中有n个命题变项,则\(\neg (m_i \lor m_j \lor m_k)=m_a \lor m_b \lor m_c \lor ...\)其中\(a, b, c, ...\)为\(0到2^n-1\)中除了i, j, k之外的值
- 重言式的主析取范式含全部\(2^n\)个极小项, 其主合取范式为1; 矛盾式的主合取范式含全部\(2^n\)个极大项, 其主析取范式为0; 含有\(0到2^n-1个\)极小项或极大项的命题公式为可满足式
联结词的完备集
真值函数
真值函数:对p, q, r, ...的每一种取值(\(2^n\)种), 都返回一组对应的真值情况的函数, 称为真值函数
n元真值函数共有\(2^{2^n}\)个
每个真值函数都与唯一一个主析取范式或主合取范式等值,也就是说每个命题都对应一个真值函数

联结词的完备集
联结词完备集:设S是一个联结词集合,若任意n元真值函数都可以仅由S中的联结词表示,则称S为联结词完备集
与非:“p与q”的否定,即\(\neg (p \land q)\Leftrightarrow p \uparrow q\)
或非:“p或q”的否定,即\(\neg (p \lor q)\Leftrightarrow p \downarrow q\)
- 定理:\(\{ \uparrow \}\)、\(\{ \downarrow \}\)都是联结词完备集
将某个公式转化只含给定联结词集中连接词的形式:核心是找到将其他连接词转换到完备集中连接词的方法,如\(A\land B\Leftrightarrow \neg(A\rightarrow \neg B)\)
对偶原理
将一个命题公式中的\(\lor\)、\(\land\)相互替换,0、1相互替换,则新公式与原公式互为对偶式
可满足性与消解法
定义:
-
若一个简单析取式中不含任何文字, 记作空简单析取式\(\lambda\), 含有空简单析取式的合取范式是不可满足的
-
设S和P是两个合取范式, 则记\(S\approx P\)为"S是可满足的当且仅当P是可满足的"
-
设l为一个文字,则
\( l^c= \begin{cases} \neg p,& 若l=p\\ p, & 若l=\neg p \end{cases} \)
称之为l的补
消解规则:若\(C_1\), \(C_2\)为两个简单析取式,它们分别含有l和l的补,则可以从\(C_1\)中删去l,从\(C_2\)中删去l的补,再将所得的结果析取成一个新简单析取式,记作\(Res(C_1, C_2)\),称作\(C_1, C_2\)的以\(l\)和\(l^c\)为消解文字的消解式或消解结果
且若\(C_1, C_2\)可对多对文字消解,其消解结果是等值的
消解序列: 设S是一个合取范式, 则S中的简单析取式, 和这些简单析取式经过有限次析取所得的消解结果所构成的简单析取式序列\(C_1, C_2, C_3, ..., C_n\), 称为S导出\(C_n\)的消解序列, 若\(C_i=\lambda\), 则称此序列为S的一个否证
通过消解判断合取范式的可满足性
定理:\(C_1\land C_2 \approx Res(C_1, C_2)\)
\(\Rightarrow\)对一个合取范式S, 从S的简单析取式开始, 重复使用消解规则得到S的消解序列, 则"S是可满足的"\(\Leftrightarrow\)"消解序列中的所有简单析取式都是可满足的", 若S有否证, 则S是不可满足的
定理(消解的完全性): 若S是不可满足的,则S有否证
也就是说, 通过列出S的所有简单析取式, 再不断消解, 看S是否会有否证的方法, 可以判断S是否为可满足式
这个方法可以被机器执行, 实现自动化
第三章 命题逻辑的推理理论
推理的形式结构
定义:
推理: 从前提推出结论的思维过程
前提: 一组已知的命题公式集合, 记作\(\Gamma\)
结论: 从前提出发, 应用推理规则推出的命题公式, 记作\(\Gamma \vdash B\)
正确的推理: 当所有前提都为真时, 结论为真(当前提有至少一个不为真时, 推理一定正确), 则推理是正确的, 记作\(\Gamma \vDash B\), 否则记为\(\Gamma \nvDash B\)
只要不出现前提全为真, 结论为假的情况, 推理就是正确的
定理:
\(\{A_1, A_2, A_3, ..., A_k\}\vdash B \Rightarrow A_1\land A_2\land ...A_k \rightarrow B\)
判断推理是否正确的三种方法:
- 真值表法
- 等值演算法
- 主析取范式法
推理定律:
-
附加律: \(A\Rightarrow (A\lor B)\)
-
化简律: \((A\land B)\Rightarrow A\)
-
假言推理: \((A\rightarrow B)\land A \Rightarrow B\)
-
拒取式: \((A\rightarrow B)\land \neg B \Rightarrow \neg A\)
-
析取三段论: \((A\lor B)\land \neg B\Rightarrow A\)
-
假言三段论: \((A\rightarrow B)\land(B\rightarrow C)\Rightarrow(A\rightarrow C)\)
-
等价三段论: \((A\leftrightarrow B)\land(A\leftrightarrow C)\Rightarrow (A\leftrightarrow C)\)
-
构造性二难: \((A\rightarrow B)\land(C\rightarrow D)\land(A\lor C)\Rightarrow(B\lor D)\)
构造性二难(特殊形式): \((A\rightarrow B)\land(\neg A\rightarrow B)\Rightarrow B\) -
破坏性二难: \((A\rightarrow B)\land(C\rightarrow D)\land(\neg A\lor \neg C)\)
自然推理系统
推理规则:
- 前提引入:在证明的任何阶段都可以引入前提
- 结论引入:前边证过的结论后边可以用
- 置换规则:可以把公式中的部分替换成其等值式
- 合取引入规则:可以把两个结论或前提组成合取式
“”
两种构造证明的方法:
-
附加前提证明法
证明:\((A_1\land A_2\land A_3\land...\land A_k)\rightarrow(A\rightarrow B)\)
等价于证明:\((A_1\land A_2\land A_3\land...\land A_k\land A)\rightarrow B\)
即将结论的前件也放进前提里 -
归谬法
若将结论加入前提后,能推出矛盾,则证明推理正确
消解证明法
-
将前提和结论的否定都化成等值的合取范式,将这些合取范式中的所有简单析取式作为前提
-
在证明过程中只能使用前提引入和归结(即两个式子消解)
-
若最后能推出\(\lambda\),则证明推理正确
第四章 一阶逻辑
一阶逻辑命题符号化
个体词
个体词:可以独立存在的具体或抽象的客体
如小王、小李、中国、\(\sqrt{2}\)等
个体常项:具体的个体词,一般用a,b,c,...表示
个体变项:抽象的个体词,一般用x,y,z,....表示
个体域(论域):个体变项的取值范围,宇宙间的一切事物的集合称为全总个体域
谓词
谓词:用来表示个体性质或个体间关系的词,变项与常项一般都用F、G、H等大写字母表示
如“\(\sqrt{x}\)是无理数”\(\rightarrow F(\sqrt{2})\),“小王与小李同岁”\(\rightarrow F(a, b)\)
谓词常项:个体之间具体的关系或性质
谓词变项:个体之间抽象概括的关系或性质
n元谓词:含n个个体变项的谓词,只含个体常项的谓词称为0元谓词
量词
表达个体常项或个体变项之间数量关系的词
- 全称量词\(\forall\)
- 存在量词\(\exists\)
含量词的命题:如\(\forall x \exists y F(x,y)\)
一阶逻辑公式及其解释
一阶语言:用于描述一阶逻辑的形式语言
一阶语言\(\scr{L}\)
L是一个非逻辑符号集合,由L生成的一阶语言\(\scr L\)的字母表
非逻辑符号
- L中的个体常项符号:a, b, c, ...
- L中的函数符号:f, g, h, ...
- L中的谓词符号:F, G, H, ...
逻辑符号 - 个体变项符号:x, y, z, ...
- 量词符号:\(\forall, \exists\)
- 联结词符号:\(\neg \land \lor \rightarrow \leftrightarrow\)
- 括号与逗号
项
- 个体常项和个体变项都是项
- 若\(t_1, t_2, t_3, ...\)都是项,则函数\(\phi(t_1, t_2, t_3, ...)是项\)
- 所有项都来自1或2
公式
原子公式:若R是n元谓词符号,则对\(\scr L\)中n个项,\(R(t_1, t_2, t_3, ...)\)是原子公式
合式公式:
-
原子公式是合式公式
-
若\(A\)是合式公式,则\(\neg A\)是合式公式
-
若\(A, B\)是合式公式,则A、B的合取、析取、蕴含、等值式是合式公式
-
若\(A\)是合式公式,则\(\forall xA, \exists xA\)是合式公式
-
有限次地运用1-4得到的式子为合式公式
合式公式也称谓词公式,简称公式
指导变元
指导变元:在公式\(\exists xA, \forall xA\)中,x称为指导变元
辖域:上述两个式子中,A称为量词的辖域
约束出现:在\(\exists x, \forall x\)的辖域中,x的所有出现都称为约束出现
自由出现:非x的其他个体变项在A中的出现
未完
第七章 二元关系
有序对与笛卡尔积
有序对
由两个元素x和y按照一定顺序排列成的二元组,称为有序对或序偶,记作<x, y>,x称为第一元素,y称为第二元素
笛卡尔积
设A、B为两个集合,\(x\in A, y\in B\),<x, y>称为A与B的笛卡尔积,记作A×B
二元关系
一个只含有序对的集合(可以为空集)称为二元关系,记作R
- 若\(<x, y>\in R\),则记作\(xRy\)
- 若\(<x, y>\notin R\),记作\(x\cancel{R}y\)
A×B的任意子集称作A×B定义的二元关系

浙公网安备 33010602011771号