为了考试周不破防, 准备系统地预习复习一遍离散数学, 参考了高等教育出版社离散数学(第2版), 这篇博文用于记录各种知识点以及后续的大作业代码实现及思路

数理逻辑

命题逻辑

命题

定义

具有真假意义表达判断陈述句命题

分类

按真值

  • 真命题
  • 假命题

按能否再分:

  • 原子命题(简单命题)
  • 复合命题

标识符

大写字母/带下标的大写字母/[]包围的数字 都是合法的命题标识符

A,B,Ai,[12]A, B, A_i, [12]

表示确定命题的标识符为命题常元, 表示命题位置,并不代表具体某个命题的标识符称为命题变元

联结词

命题之间可以由联结词联结组成新的命题, 常见联结词如下

否定联结词

¬\neg $\neg$

PP ¬P\neg P
00 11
11 00

最简单的联结词之一, 取反, 常见语言表述为 “不, 没有…”

合取联结词

\land $\land$

PP QQ PQP\land Q
00 00 00
00 11 00
11 00 00
11 11 11

析取联结词

\lor $\lor$

PP QQ PQP\lor Q
00 00 00
00 11 11
11 00 11
11 11 11

需要注意与自然语言中的区分, 数理逻辑中的或为可兼或, 即P,QP,Q可以同时发生, 但是自然语言中还有排斥或, 不可同时发生, 此时就不能使用P\or Q表示这一命题, 需要根据真值表构造新的命题, 在以后的章节中会提到

蕴含联结词

如果…则… \to $\to$ $\rightarrow$

PP QQ PQP\rightarrow Q
00 00 11
00 11 11
11 00 00
11 11 11

等价联结词

当且仅当 \leftrightarrow $\leftrightarrow$

PP QQ PQP\leftrightarrow Q
00 00 11
00 11 00
11 00 00
11 11 11

以上联结词具有以下优先级(从高到低)

(),¬,,,,(), \lnot , \land , \lor , \rightarrow , \leftrightarrow

命题公式之间的关系

逻辑等价

双重否定率

A    ¬¬AA\iff \lnot \lnot A

幂等率

A    AAA    AAA\iff A \lor A \\ A\iff A \land A

交换律

AB    BAAB    BAA\lor B\iff B \lor A \\ A\land B\iff B \land A

结合律

(AB)C    A(BC)(AB)C    A(BC)(A\lor B)\lor C\iff A\lor (B\lor C) \\ (A\land B)\land C\iff A\land (B\land C)

分配律

A(BC)    (AB)(AC)A(BC)    (AB)(AC)A\lor (B\land C)\iff (A\lor B)\land(A\lor C) \\ A\land (B\lor C)\iff (A\land B)\lor(A\land C)

德摩根律

¬(AB)    ¬A¬B¬(AB)    ¬A¬B\lnot (A\lor B)\iff\lnot A\land \lnot B \\ \lnot (A\land B)\iff\lnot A\lor \lnot B

吸收律

A(AB)    AA(AB)    AA\lor (A\land B)\iff A \\ A\land (A\lor B)\iff A

零律

A1    1A0    0A \lor 1 \iff 1 \\ A \land 0 \iff 0

同一律

A1    AA0    AA \land 1 \iff A \\ A \lor 0 \iff A

排中律

A¬A    1A \lor \lnot A \iff 1

矛盾律

A¬A    0A \land \lnot A \iff 0

蕴含律

AB    ¬ABA \rightarrow B \iff \lnot A \lor B

等价律

AB    (AB)(BA)A \leftrightarrow B \iff (A\rightarrow B)\land(B \rightarrow A)

假言易位律

AB    ¬B¬AA\to B \iff \lnot B \to \lnot A

等价否定律

AB    ¬A¬BA \leftrightarrow B \iff \lnot A \leftrightarrow \lnot B

归谬率

(AB)(A¬B)    ¬A(A\to B)\land(A \to \lnot B)\iff \lnot A

逻辑蕴含

ABA\to B重言式, 则有A    BA\implies B, 称为A逻辑蕴含B

推理定律如下

附加律

A    ABA \implies A\lor B

化简律

AB    AA \land B \implies A

假言推理

(AB)A    B(A\to B)\land A \implies B

拒取式

(AB)¬B    ¬A(A \to B)\land \lnot B \implies \lnot A

析取三段论

(AB)¬B    A(A \lor B)\land \lnot B \implies A

假言三段论

(AB)(BC)    AC(A\to B)\land (B\to C) \implies A \to C

等价三段论

(AB)(BC)    AC(A \leftrightarrow B)\land (B \leftrightarrow C)\implies A \leftrightarrow C

构造性二难

(AB)(CD)(AC)    BD(A\to B)\land(C\to D)\land(A \lor C)\implies B\lor D

破坏性二难

(AB)(CD)(¬B¬D)    ¬A¬C(A\to B)\land(C\to D)\land(\lnot B\lor \lnot D) \implies \lnot A \lor \lnot C

对偶

定义

对于只包含¬,\lnot, \land\lor的命题公式AA,互换 \land\lor,0011, 得到的新命题公式AA^*称为AA的对偶式

性质

  • AA为命题公式,PnP_n为命题公式中的命题变元,AA^*AA的对偶式,则

¬A(P1,P2,,Pn)    A(¬P1,¬P2,,¬Pn)A(¬P1,¬P2,,¬Pn)    ¬A(P1,P2,,Pn)\lnot A(P_1,P_2,\cdots,P_n) \iff A^*(\lnot P_1,\lnot P_2,\cdots,\lnot P_n) \\ A(\lnot P_1,\lnot P_2,\cdots,\lnot P_n) \iff \lnot A^*(P_1,P_2,\cdots,P_n)

  • A    BA \iff B, 则A    BA^* \iff B^*

范式

概念

文字 命题变元和命题变元的否定

P,¬PP,\lnot P

简单析取式 仅由有限个文字构成的析取式

PP\lor¬Q\lnot Q

简单合取式 仅由有限个文字构成的合取式

PP\land¬Q\lnot Q

一个文字既是简单合取式也是简单析取式

析取范式 仅由有限个简单合取式构成的析取式

合取范式 仅由有限个简单析取式构成的合取式

范式 析取范式和合取范式统称为范式

简单析取式和简单合取式都既是析取范式也是合取范式


极小项 含有nn个命题变元, 每个命题变元和他的否定式有且只有一个, 且按照(字典)顺序排列的简单合取式

nn个命题变元有2n2^n个极小项, 两两互不逻辑等价, 所有最小项析取式永真

每个极小项有且仅有一个成真赋值, 记作mi, im_i, \ i为十进制下的成真赋值

任两个不同极小项的合取式永假

极大项 含有nn个命题变元, 每个命题变元和他的否定式有且只有一个, 且按照(字典)顺序排列的简单析取式

nn个命题变元有2n2^n个极大项, 两两互不逻辑等价, 所有最大项的合取式永假

每个极大项有且仅有一个成假赋值, 记作mi, im_i, \ i为十进制下的成真赋值

任两个不同极大项的析取式永真

主析取范式 有限个极小项构成的析取式

主合取范式 有限个极大项构成的合取式

主范式 主析取范式和主合取范式统称为主范式

任何命题公式都存在唯一与之逻辑等价的主析取范式和主合取范式

求范式步骤

范式存在定理 任一命题公式都存在与之逻辑等价的析取范式和合取范式

  1. 消去\rightarrow ,\leftrightarrow

    AB    ¬ABAB    ABBAA\to B\iff \lnot A\lor B \\ A \leftrightarrow B \iff A\to B \land B\to A

  2. 消去¬\lnot¬\lnot

    ¬¬A    A\lnot\lnot A\iff A

  3. 消去¬()\lnot () //内移¬\lnot

    ¬(AB)    ¬A¬B¬(AB)    ¬A¬B\lnot(A\land B)\iff \lnot A\lor \lnot B \\ \lnot(A\lor B)\iff \lnot A\land \lnot B

  4. 分配\land,\lor

    A\lor(B \land C)\iff (A\lor B)\land(A \lor C) \\ A\land (B \or C) \iff (A\land B)\lor(A\land C)

求主范式 在求出范式的基础上, 添加缺少的项组成最小/最大项即可

命题演算推证

定义推理根据, 推理规则证明方法组成

推理根据

推理根据是命题验算的命题定律和推理定律, 主要为逻辑等价式逻辑蕴含式

推理规则

  • P规则/前提引入规则 在推论的任何步骤中引入前提
  • T规则/结论引入规则 所得到的结论作为后续的前提
  • CP规则/附加前提规则

谓词逻辑

谓词和个体

论域 个体变元的取值范围

全总个体域 宇宙间一切个体组成的论域

谓词 刻画论域中个体性质的模式

简单命题函数 P(x1,x2,)P(x_1,x_2,\cdots)

特性谓词 一般用于在全总个体域中声明事物特性的谓词, 如: F(x):xF(x):x是人

量词

全称量词 \forall

特性谓词一般做蕴含的前件, x(F(x)G(x))\forall x(F(x)\to G(x))

存在量词 \exist

特性谓词一般做合取项, x(F(x)G(x))\exist x(F(x)\land G(x))

谓词公式

由命题变元, 联结词和括号按照一定的规则组成的字符串称为谓词公式

原子谓词公式 P(x1,x2,)P(x_1,x_2,\cdots)

自由与约束

指导变元/作用变元 xA\forall xA或$ \exist xA$中, xx称为量词的指导变元, AA称为量词的辖域

封闭的公式/闭式 不含自由出现个体变元的公式

逻辑等价

命题公式推广

¬¬xF(x)    F(x)xF(x)yG(y)    ¬xF(x)yG(y)¬(xF(x)yG(y))    ¬xF(x)¬yG(y)\lnot \lnot \forall xF(x)\iff \forall F(x) \\ \forall xF(x)\to \exist yG(y) \iff \lnot xF(x)\lor \exist yG(y) \\ \lnot(\forall xF(x)\lor \exist yG(y))\iff \lnot\forall xF(x) \land \lnot\exist yG(y)

否定逻辑等价式

¬P(x)    x(¬P(x))¬P(x)    x(¬P(x))\lnot \forall P(x) \iff \exist x(\lnot P(x)) \\ \lnot \exist P(x) \iff \forall x(\lnot P(x))

辖域扩张与收缩

¬(xF(x)G)    ¬xF(x)G\lnot(\forall xF(x)\lor G)\iff \lnot\forall xF(x)\lor G \\ \cdots

量词分配

x(A(x)B(x))    xA(x)xB(x)x(A(x)B(x))    xA(x)xB(x)\forall x(A(x)\land B(x))\iff \forall xA(x)\land\forall xB(x) \\ \exist x(A(x)\lor B(x))\iff \exist xA(x)\lor \exist xB(x)

前束范式

若一个公式的量词都在最前边且其辖域一直延伸到末尾, 则其为前束范式

没有量词的前束范式称为平凡的前束范式


集合论

二元关系

二元关系

仅含有序对的集合或此意义下的空集

定义

AA,BB为集合, A×BA\times B的任何子集称为从AABB二元关系, 记为RR\subseteqA×BA\times B

RR\subseteqA×AA\times ARRAA上的二元关系

若集合AA有n个元素, 则有2nm2^{n^m}mm元关系

特殊关系

空关系 \varnothing

全域关系 E=A×BE=A\times B

恒等关系 IA={<x,x>xA}I_A = \{<x,x>|x\in A\}

其他常用关系

小于等于关系 LA={<x,y>x,yAxy}L_A = \{<x,y>|x,y\in A \land x\leq y\}

整除关系 DA={<x,y>x,yAxy}D_A = \{<x,y>|x,y\in A \land x是 y的因子\}

包含关系 R={<x,y>x,yAxy}R_{\subseteq}=\{<x,y>|x,y\in A\land x\subseteq y\}

表示

列举法

描述法

矩阵表示法 使用关系矩阵表示二元关系, 只适用于有限集

MR=(rij)m×nrij={1,aiRbj0,aiR~bjM_R=(r_{ij})_{m\times n} \\ r_{ij} = \begin{cases} 1 &,a_iRb_j \\ 0 &,a_i \tilde{R} b_j \end{cases}

关系图表示法

性质

自反性

x(xA<x,x>R)\forall x(x\in A\to <x,x>\in R)

关系图上每个结点都有环

关系矩阵主对角线上元素均为1

反自反性

x(xA<x,x>R)\forall x(x\in A\to <x,x>\notin R)

空关系是AA上的反自反关系

关系图上每个结点均无环

关系矩阵主对角线上的元素均为0

对称性

\forall x\forall y(x,y\in A\and \in R\to\in R)

关系矩阵是对称矩阵

关系图上两结点间若有边则一定有方向相反的两个边

反对称性

\forall x\forall y(x,y\in A\and \in R\to\in R)

关系矩阵如果rij=1r_{ij}=1iji\neq jrji=0r_{ji}=0

关系图上两结点间若有边则一定是单向边

传递性

xyz(x,y,zA<x,y>R<y,z>R<x,z>R)\forall x\forall y\forall z(x,y,z\in A\land <x,y>\in R\land<y,z>\in R\to<x,z>\in R)

M2M^2中1的位置关系矩阵MM中也为1

关系图上的边有传递性

运算

RR为二元关系

定义域 有序对第一元素构成的集合

domR={xy(<x,y>R)}domR=\{x|\exist y(<x,y>\in R)\}

值域 有序对的第二元素构成的集合

ranR={yx(<x,y>R)}ranR=\{y|\exist x(<x,y>\in R)\}

fldR=domRranRfldR=domR\cup ranR

限制

RA={<x,y>xRyxA}R\upharpoonright A=\{<x,y>|xRy \land x\in A\}

R[A]=ran(RA)R[A]=ran(R\upharpoonright A)

逆运算

R1={<x,y><y,x>R}R^{-1}=\{<x,y>|<y,x>\in R\}

复合运算

RS={<x,y>z(xRzzSy)}R\circ S=\{<x,y>|\exist z\land(xRz\land zSy)\}

注意RSSRR\circ S\neq S\circ R

幂运算由复合运算产生

闭包

为现有关系RR尽可能少地添加有序对使其具有新的性质, RR'称为RR的闭包

自反闭包

r(R)=RR0Mr=M+Er(R)=R\cup R^0 \\ M_r = M + E

对称闭包

s(R)=RR1Ms=M+MTs(R)=R\cup R^{-1} \\ M_s=M+M^T

传递闭包

t(R)=RR2R3Mt=M+M2+M3+t(R)=R\cup R^{2}\cup R^{3}\cup \cdots \\ M_t = M + M^2 + M^3 + \cdots

此处+为逻辑加

使用关系图闭包较为简单, 不再赘述

等价关系

若非空集合AA上的关系RR自反,对称且传递的, 则RRAA上的等价关系, 若<x,y>R<x,y>\in R记作xyx\sim y

等价类

设非空集合AA上的关系RR为等价关系, xA\forall x\in A , 则[x]R[x]_Rxx关于RR的等价类

[x]={yyAxRy}[x]=\{y|y\in A\land xRy\}

商集

设非空集合AA上的关系RR为等价关系, 则有RR关于AA的商集A/RA/R

A/R={[x]RxA}A/R=\{[x]_R | x\in A\}

划分

  • 集合运算求划分
  • 关系矩阵求划分
  • 关系图求划分

相容关系

若非空集合AA上的关系RR自反,对称的, 则RRAA上的相容关系

所有等价关系都是相容关系

相容关系可用简化图与下三角矩阵表示

相容关系不能确定划分

相容类

x,yCx,y\in CxRyxRy, 则CCAA的一个相容类

CC不是任何相容类的真子集, 则CC是最大相容类

简化关系图上:

  • 最大完全多边形的顶点构成的集合
  • 孤立点构成的集合
  • 非完全多边形的边的端点构成的集合

是最大相容类

覆盖

AA的子集族π\pi满足$\varnothing $$\notin$$\pi$, xπx=A\cup _{x\in\pi} x=Aπ\piAA的一个覆盖

RR最大相容类构成的AA的覆盖是完全覆盖

偏序关系

若非空集合AA上的关系RR自反,反对称传递的, 则RRAA上的偏序关系, 记作\leq

集合AA\leq一起组成的有序对<A,><A,\leq>称为偏序集

全序关系

<A,><A,\leq>是偏序集, x,yA,xy\forall x,y\in A, x与y均可比, 则\leqAA上的全序关系(线序关系), <A,><A,\leq>是全序集

盖住关系

<A,><A,\leq>是偏序集, x,yA(∄zAxzy)\forall x,y\in A \land (\not\exist z\in A\land x\leq z\leq y), 则yy盖住xx

COVA={<x,y>x,yAyx}COV A=\{<x,y>|x,y\in A\land y盖住x\}

哈斯图

根据盖住关系绘制, \circ表示AA中元素, x,yA\forall x,y\in A

  1. x<yx<y, 则xxyy下方
  2. <x,y>COVA<x,y>\in COV A, 则用线连接

全序关系的哈斯图是一条线, 因此称为线序关系

特殊元素

BA,yBB\subseteq A, y\in B, 则yyBB

最小元 x(xByx)\forall x(x\in B\to y\leq x)

最大元 x(xBxy)\forall x(x\in B\to x\leq y)

极小元 ¬x(xBx<y)\lnot \exist x(x\in B\land x<y)

极大元 ¬x(xBy<x)\lnot\exist x(x\in B\land y<x)

BA,yAB\subseteq A, y\in A, 则yyBB

上界 x(xByx)\forall x(x\in B\to y\leq x)

下界 x(xBxy)\forall x(x\in B\to x\leq y)

上确界 {y  yB}\{y\ |\ y为B的上界\}

下确界 {y  yB}\{y\ |\ y为B的下界\}


代数结构

代数系统

二元运算

设非空集合SS, 则SnS^nSS的一个函数ffSS上的nn元代数运算

n=2n=2时称为二元运算, 记作a1a2=ba_1*a_2=b

封闭性 运算结果一定在SS

唯一性 参与运算的元素和其顺序都相同, 则结果一定相同

二元运算性质

交换律

ab=baa*b=b*a

结合律

a(bc)=(ab)ca*(b*c)=(a*b)*c

分配律 *++满足

a(b+c)=(ac)+(bc)(b+c)a=(ba)+(ca)a*(b+c)=(a*c)+(b*c) \\ (b+c)*a=(b*a)+(c*a)

幂等律

aa=aa*a=a

吸收律 *++满足

a(a+b)=aa+(ab)=aa*(a+b)=a \\ a+(a*b)=a

单位元

左单位元 elx=xe_l*x=x

右单位元 xer=xx*e_r=x

el=ere_l=e_r, 则eeSS上的单位元(幺元)

左逆元 ylx=ey_l\circ x=e

右逆元 xyr=ex\circ y_r=e

yl=yry_l=y_r, 则y为x的逆元, xx可逆的

零元

左零元 θlx=θl\theta_l*x=\theta_l

右零元 xθr=θrx*\theta_r=\theta_r

代数系统

定义 集合AAAA上的kk个运算所组成的系统<A,1,2,,k><A, \cdot_1,\cdot_2,\cdots,\cdot_k>, 简称代数

代数常数/特异元素 如零元, 单位元, 也可出现在代数系统中<A,1,2,,k,e><A, \cdot_1,\cdot_2,\cdots,\cdot_k,e>,

子代数系统

对代数系统V=<A,1,2,,k>V=<A, \cdot_1,\cdot_2,\cdots,\cdot_k>,若A0AA_0 \subseteq A, A0A0对运算\cdot封闭且AA中代数常数与A0A_0相等, 则<A0,1,2,,k><A_0, \cdot_1,\cdot_2,\cdots,\cdot_k>也是代数系统, 且称为VV子代数(系统)

积代数系统

V1=<A1,1>V_1=<A_1,\cdot_1>, V2=<A2,2>V_2=<A_2,\cdot_2>,定义A1×A2A_1\times A_2上的二元运算\cdot使得<x1,y1>,<x2,y2>A1×A2\forall <x_1,y_1>,<x_2,y_2>\in A_1\times A_2<x1,y1><x2,y2>=<x11x2,y12y2><x_1,y_1>\cdot <x_2,y_2>=<x_1\cdot_1x_2,y_1\cdot_2 y_2>,则<A1×A2,><A_1\times A_2,\cdot>V1,V2V_1,V_2积代数系统

同态

U=<X,>U=<X,\cdot>, V=<Y,>V=<Y,*>是两个同一类型的代数系统, f:XY\exist f:X\to Y对于x1,x2X\forall x_1,x_2\in X, 若

f(x1x2)=f(x1)f(x2)f(x_1\cdot x_2)=f(x_1)*f(x_2)

f:XYf:X\to YUUVV同态(映射)

f:UUf:U\to U则为自同态

ff满射, 则为满同态

ff单射, 则为单同态

同构

若上述ff双射, 则为同构

f:UUf:U\to U则为自同构

群论

单位元, 逆元和一个可结合运算共同构成的代数系统

半群与独异点

\cdotGG上的二元代数且满足结合律, 则<G,><G,\cdot>半群, 其子代数系统为子半群

独异点/含幺半群 GG中含有\cdot的幺元, 若其子代数也含有, 则其为子独异点

定义 对独异点<G,><G,\cdot>, 若aG\forall a\in G存在a1Ga^{-1}\in G使得aa1=a1a=ea\cdot a^{-1}=a^{-1}\cdot a=e, 则<G,><G,\cdot>为群

有限群 GG是有限集

阶数 G|G|

平凡群 只含有单位元

阶元

aGa\in G使得ak=ea^k=e的最小正整数kkaa的阶元, 记作a=k|a|=k, 称aakk阶元

若不存在这样的正整数kkaa为无限阶元

性质

  • a=r|a|=r, rr整除kk, 则ak=ea^k=e
  • a1=a|a^{-1}|=|a|

特殊群


图论

基本概念

无序积 A&BA\&B 记作(a,b)={{a,b}aAbB}(a,b)=\{\{a,b\}|a\in A\land b\in B\}

图定义为一个三元组(V,E,φ)(V,E,\varphi)

  • 顶点(vertex) 非空集合V(G)V(G)
  • 边(edge)
  • φ\varphi 边集合EEV&VV\& V上的函数

G=<V,E>G=<V,E>中顶点vv与所有边的关联次数之和, 记作deg(v)deg(v)

入度 有序图中进入这一顶点的边的关联次数, 记作deg(v)deg^-(v)

出度 有序图中离开这一顶点的边的关联次数, 记作deg+(v)deg^+(v)

最大度 Δ(G)\varDelta (G)

最小度 δ(G)\delta(G)

握手定理

每个图中顶点度数等于边数的二倍

vVdeg(v)=2E\sum_{v\in V} deg(v) = 2|E|

度数序列

d=(d1,d2,,dn)=(deg(v1),deg(v2),,deg(vn))d=(d_1,d_2,\cdots,d_n)=(deg(v_1),deg(v_2),\cdots,deg(v_n))

可图化

非负整数列dd可图化当且仅当i=1ndi\sum_{i=1}^{n} d_i为偶数

可简单图化

哈韦尔-哈基米算法S=(d1,,dn)S=(d_{1},\dots ,d_{n})为有限多个非负整数组成的非递增序列。SS可简单图化当且仅当有穷序列S=(d21,d31,,dd1+11,dd1+2,,dn)S'=(d_{2}-1,d_{3}-1,\dots ,d_{d_{1}+1}-1,d_{d_{1}+2},\dots ,d_{n})只含有非负整数且是可简单图化的。

补图

完全图 GG中每一个顶点都与其余所有顶点相连, 则KnK_nnn阶完全图

竞赛图 GG为有向图则为nn阶竞赛图

KnK_n的边数为n(n1)2=Cn2\dfrac{n(n-1)}{2}=C_n^2

给定图GG中所有顶点和能使GG成为完全图的所有添加边构成GG补图, 记作Gˉ\bar G

子图

生成子图 去边法

连通性

回路 始点和终点相同的路径

连通无回路的无向图称为树

树叶 度数为1的顶点

分支点 度数大于1的顶点

性质

给定图TT为树

  • 无回路的连通图
  • 无回路且e=v1e=v-1
  • 连通且e=v1e=v-1
  • 无回路但新增一条边则有且仅有一个回路
  • 连通但删去一条边不再连通
  • 每一对顶点之间有且仅有一条路

生成树

无向图GG生成子图TT若为一棵树, 则TTGG的生成树