返回
Featured image of post 离散数学整理

离散数学整理

离散数学有关定义定理整理

命题逻辑

联结词

  1. 否定联结词
PP ¬P\neg P
0 1
1 0
  1. 合取联结词
PP QQ PVP\wedge V
0 0 0
0 1 0
1 0 0
1 1 1
  1. 析取联结词
PP QQ PVP\vee V
0 0 0
0 1 1
1 0 1
1 1 1
  1. 条件联结词
PP QQ PVP\to V
0 0 1
0 1 1
1 0 0
1 1 1
  1. 双条件联结词
PP QQ PVP\leftrightarrow V
0 0 1
0 1 0
1 0 0
1 1 1

联结词的运算优先级

从高到低依次为,否定、合取、析取、条件、双条件

命题公式

一些定义

定义1,命题变元与常元

用于代表取值为真(T1)(T、1)或假(F0)(F、0)之一的变量,称为命题变元,通常用大写字母或带下标或上标的大写字母表示,如PQRP1P2P、Q、R、P_1、P_2等。将TTFF称为命题常元。

通常把由命题常元、命题变元、联结词以及括弧组成的式子称为表达式,但是只有按照特定组合规则所形成的表达式才有实际意义。

定义2,命题公式

命题合式公式(简称命题公式):

(1)(基础)单个命题常元或命题变元是命题合式公式

(2)(归纳)如果A和B是命题公式,则¬A\neg A(AB)(A\wedge B)(AB)(A\vee B)(AB)(A\to B)(AB)(A\leftrightarrow B)是命题合式公式。

(3)(极小性)只有有限次地应用条款(1)和(2)生成的表达式オ是命题合式公式

定义3,子公式

BB是命题公式AA的一个连续段且BB也是命题公式,则称BBAA的个子公式。

命题公式的赋值

对于有nn个变元的公式,有2n2^n种不同赋值。

永真式(重言式)

一个命题公式在任何赋值下,其真值都为TT,则称这个公式为永真式(重言式)

永假式(矛盾式)

一个命题公式在任何赋值下,其真值都为FF,则称这个公式为永假式(矛盾式)

偶然式

既不是永真式也不是永假式,则为偶然式

可满足式

一个命题公式至少有一个赋值,使其真值为TT,则称这个公式为可满足式。也即永真式和偶然式都是可满足式。不是可满足式的称为矛盾式。

逻辑等价与蕴含

等价

定义

给定两个命题公式AAB4B4,设P1,P2,,PnP_1,P_2,\cdots,P_n为所有出现在A和B中的命题变元,但PiP_i不一定在AABB中同时出现,若对于P1,P2,,PnP_1,P_2,\cdots,P_n的任一赋值,AABB的真值都相同,则称AABB逻辑等价,记做ABA\Leftrightarrow B,读做“AA等价于BB”。

下面列出常见的命题等价公式

几个定理

定理1(代入规则)

AABB是命题公式,其中AA是重言式,PPAA中的命题变元,如果将AA中每一处出现的P均用B代入,则所得命题公式AA仍然是一个重言式

定理2

AABB是命题公式,则AABB逻辑等价,当且仅当ABA\leftrightarrow B是一个重言式。

定理3(替换规则)

AAXXYY是命题公式,XXAA的子公式,且有XYX\Leftrightarrow Y。如果将AA中的XXYY来替换(不必每一处都替换),则所得到的公式BBAA等价,即BAB\Leftrightarrow A

定理4(传递规则)

AABBCC是命题公式,若ABA\Leftrightarrow BBCB\Leftrightarrow C,则有ACA\Leftrightarrow C

蕴含

AABB是命题公式,如果ABA\to B是一个重言式,则称AA蕴含BB,记做ABA\Rightarrow B

一些常见的蕴含公式

证明蕴含式ABA\Rightarrow B的一些方法:

  1. 肯定前件法。假设AATT,如果能够推出BBTT,则有ABA\Rightarrow B
  2. 否定后件法。假设BBFF,如果能够推出AAFF,则有ABA\Rightarrow B

几个定理

定理1

AABB是任意两个命题公式,ABA\Leftrightarrow B当且仅当ABA\Rightarrow BBAB\Rightarrow A.

几个性质

性质1

AABB是命题公式,如果ABA\Rightarrow BAA是重言式,则BB也是重言式

性质2

蕴含关系是传递的,即ABA\Rightarrow BBCB\Rightarrow C,则ACA\Rightarrow C.

性质3

如果ABA\Rightarrow BACA\Rightarrow C,则ABCA\Rightarrow B\wedge C

性质4

如果ACA\Rightarrow CBCB\Rightarrow C,则ABCA\vee B\Rightarrow C

对偶式

定义

设有命题公式AA,其中仅含有联结词¬,,\neg,\vee,\wedge,如果将AA中的\vee替换为\wedge\wedge替换为\vee,常元T,FT,F也互相替换,所得到的公式记为AA^*,则称AA^*AA的对偶式。

显然有,AA也是AA^*的对偶式,并且(A)=A(A^*)^*=A

几个定理

定理1

AAAA^*是对偶公式,其中仅含有联结词¬,,\neg,\vee,\wedgeP1,P2,,PnP_1,P_2,\cdots,P_n是出现在AAAA^*中的所有命题变元,于是有

¬A(P1,P2,,Pn)A(¬P1,¬P2,,¬Pn)\neg A(P_1,P_2,\cdots,P_n)\Leftrightarrow A^*(\neg P_1,\neg P_2,\cdots,\neg P_n)

A(¬P1,¬P2,,¬Pn)¬A(P1,P2,,Pn)A(\neg P_1,\neg P_2,\cdots,\neg P_n)\Leftrightarrow\neg A^*(P_1,P_2,\cdots,P_n)

定理2

A,BA,B是命题公式,则有

  1. 如果ABA\Leftrightarrow B,则ABA^*\Leftrightarrow B^*
  2. 如果ABA\Rightarrow B,则BAB^*\Rightarrow A^*

范式

析取范式和合取范式

析取式

仅由若干命题变元和若干命题变元之否定通过联结词\vee构成的命题公式。

合取式

仅由若干命题变元和若干命题变元之否定通过联结词\wedge构成的命题公式。

析取范式

一个命题公式被称为析取范式,当且仅当它具有如下形式

A1A2AnA_1\vee A_2\vee\cdots\vee A_n

其中A1,A2,,AnA_1,A_2,\cdots,A_n是合取式。

合取范式

一个命题公式被称为合取范式,当且仅当它具有如下形式

A1A2AnA_1\wedge A_2\wedge\cdots\wedge A_n

其中A1,A2,,AnA_1,A_2,\cdots,A_n是析取式。

主析取范式

极小项

一个含nn个命题变元的合取式,如果其中每个变元和其否定不同时存在,但两者之一必须出现且仅出现一次,则称该合取式为极小项。

nn个命题变元P1,P2,,PnP_1,P_2,\cdots,P_n可构成2n2^n个不同的极小项,其形式为:

P1~P2~Pn~\tilde{P_1}\wedge \tilde{P_2}\wedge\cdots\wedge \tilde{P_n}

其中Pi~\tilde{P_i}或者是PiP_i,或者是¬Pi\neg P_i

可以用nn位二进制编码表示极小项,例如

m010=¬P1P2¬P3m_{010}=\neg P_1\wedge P_2\wedge\neg P_3

有如下三个性质:

  1. 每一个极小项当其编码与赋值相同时,其真值为TT,在其余2n12^n-1种赋值下其真值均为FF.
  2. 任意两个不同的极小项的合取式永假。
  3. 所有极小项的析取式永真。

主析取范式

P1,P2,,PnP_1,P_2,\cdots,P_n是命题公式AA中包含的所有命题变元,若由P1,P2,,PnP_1,P_2,\cdots,P_n的若干极小项析取所构成的析取范式与AA等价,则称该析取范式是AA的主析取范式。

有如下定理

定理1

在一个命题公式AA的真值表中,使AA的真值为TT的所有赋值所对应的极小项构成的析取范式即为AA的主析取范式。

主合取范式

极大项

一个含nn个命题变元的析取式,如果其中每个变元和其否定不同时存在,但两者之一必须出现且仅出现一次,则称改合取式为极大项。

nn个命题变元P1,P2,,PnP_1,P_2,\cdots,P_n可构成2n2^n个不同的极小项,其形式为:

P1~P2~Pn~\tilde{P_1}\vee \tilde{P_2}\vee\cdots\vee \tilde{P_n}

其中Pi~\tilde{P_i}或者是PiP_i,或者是¬Pi\neg P_i

可以用nn位二进制编码表示极大项,例如

M101=¬P1P2¬P3M_{101}=\neg P_1\vee P_2\vee\neg P_3

(编码注意与极小项意义相反)

有如下三个性质:

  1. 每一个极大项当其真值赋值与编码相同时,其真值为FF,在其余2n12^n-1种赋值下其真值均为TT.
  2. 任意两个不同的极大项的析取式永真。
  3. 所有极大项的合取式永假。

主合取范式

P1,P2,,PnP_1,P_2,\cdots,P_n是命题公式AA中包含的所有命题变元,若由P1,P2,,PnP_1,P_2,\cdots,P_n的若干极大项合取所构成的合取范式与AA等价,则称该合取范式是AA的主合取范式。

有如下定理

定理1

在一个命题公式AA的真值表中,使AA的真值为FF的所有赋值所对应的极大项构成的合取范式即为AA的主合取范式。

定理

AA的主析取范式的各个极小项的下标转为十进制,组成的集合为S1{i1,i2,,ik}S_1\{i_1,i_2,\cdots,i_k\};主合取范式的各个极大项的下标转为十进制,组成的集合为S2={j1,j2,,jt}S_2=\{j_1,j_2,\cdots,j_t\},则有

S1S2=ϕS_1\cap S_2=\phi

S1S2={0,1,2,,2n1}S_1\cup S_2=\{0,1,2,\cdots,2^n-1\}

范式的计算

除了可以用真值表来算,还可以通过德摩根定律等将“\to”等不是析取、合取、否定的联结词转化,直到只剩析取、合取、否定。再通过添加、删除括号转化为主合取范式或主析取范式。

命题逻辑的推理理论

推理规则

  1. P规则:在推导过程中,前提可以在任何步骤引入。
  2. T规则:在推导过程中,如果由已经推出的一个或多个公式蕴含SS,则公式SS可以引入到推导过程中。

证明方法

  1. 无义证明法。如果能证明PP恒为假,则有PQP\to Q恒为真,即PQP\Rightarrow Q
  2. 平凡证明法。如果能证明QQ恒为真,则有PQP\to Q恒为真,即PQP\Rightarrow Q
  3. 直接证明法。从一组前提出发,利用公认的推理规则,逻辑演绎得到有效结论。
  4. 归谬法(即反证法)。

定理

H1,H2,,Hm,CH_1,H_2,\cdots,H_m,C是公式,如果存在公式RR,使得H1,H2,,Hm,¬CR¬RH_1,H_2,\cdots,H_m,\neg C\Rightarrow R\wedge\neg R,则有H1,H2,,HmCH_1,H_2,\cdots,H_m\Rightarrow C

  1. CP规则法。

H1,H2,,Hn,R,CH_1,H_2,\cdots,H_n,R,C是命题公式,根据输出律E22E_{22}推知

(H1H2Hn)(RC)(H1H2HnR)C(H_1\wedge H_2\wedge\cdots\wedge H_n)\to(R\to C)\Leftrightarrow(H_1\wedge H_2\wedge\cdots\wedge H_n\wedge R)\to C

因此,如果能够证明H1,H2,,Hn,RCH_1,H_2,\cdots,H_n,R\Rightarrow C,则有H1,H2,,HnRCH_1,H_2,\cdots,H_n\Rightarrow R\to C

谓词逻辑

谓词和量词

谓词

刻画单个个体的特性或者多个个体间关系的模式称为谓词。

量词

  1. 全称量词\forall
  2. 存在量词\exist

几个规则

应当使用x(H(x)D(x))\forall x(H(x)\to D(x)),而不能表示为x(H(x)D(x))\forall x(H(x)\wedge D(x))

应当使用x(H(x)D(x))\exist x(H(x)\wedge D(x)),而不能表示为x(H(x)D(x))\exist x(H(x)\to D(x))

谓词公式

定义

谓词逻辑的合式公式(简称谓词公式)可由以下步骤生成

  1. 原子公式(不出现联结词和量词的单个谓词)是谓词公式。
  2. 如果AABB是谓词公式,则¬A,(AB),(AB),(AB),(AB)\neg A,(A\wedge B),(A\vee B),(A\to B),(A\leftrightarrow B)是谓词公式
  3. 如果AA是谓词公式,并且AA中有未被量化的个体变元xx,则xA(x)\forall xA(x)xA(x)\exist xA(x)是谓词公式。
  4. 只有有限次应用步骤1、2、3所得到的的公式才是谓词公式。

子公式

BB是谓词公式AA的一个连续段且BB也是谓词公式,则称BBAA的一个子公式。

辖域

紧跟x\forall xx\exist x之后的最小的子公式称为该量词的辖域。

约束变元

x\forall xx\exist x辖域内xx的一切出现称之为约束出现,这个xx叫做约束变元。

自由变元

个体变元的非约束出现称为自由出现,自由出现的个体变元称为自由变元。

约束变元的换名规则

  1. 对某个约束变元换名时,需对量词的作用变元以及该量词辖域内所有受该量词约束的约束变元一起换名。
  2. 换名后的变元符号应是量词辖域内未出现的符号,最好是整个公式中未出现的符号。

谓词验算的永真公式

谓词公式的赋值

定义1

对于一个谓词公式,若给它指定一个个体域EE,再给所有谓词符均指派出确定的关系(具体的特性或关系),给所有命题变元指派出确定命题(或者指定TTFF),并为所有自由变元(注意不包含约束变元)分别指派EE上确定的个体,则称为对谓词公式的一个赋值(指派或结识)。谓词公式经过赋值之后就变成了具有确定真值的命题。

定义2

AA是谓词公式,如果对于特定论域EE上的任何赋值,AA的真值都为真,则称谓词公式AAEE上永真;如果对于特定论域EE上的任何赋值,AA的真值都为假,则称谓词公式AAEE上永假;若特定论域EE上存在一种赋值,使得AA的真值都为真,则称谓词公式AAEE上可满足。

定义3

AA是谓词公式,如果对于任何赋值,AA的真值都为真,则称谓词公式AA是永真式;如果对于任何赋值,AA的真值都为假,则称谓词公式AA是永假式;若存在一种赋值,使得AA的真值为真,则称谓词公式AA是可满足式。

谓词演算的基本永真式

  1. 命题逻辑的等价式和蕴含式可在谓词逻辑中推广使用
  2. 量词的否定律

¬xP(x)x¬P(x)\neg\forall xP(x)\Leftrightarrow \exist x\neg P(x)

¬xP(x)x¬P(x)\neg\exist xP(x)\Leftrightarrow \forall x\neg P(x)

  1. 量词辖域的扩张与收缩律

  1. 量词的分配律

  1. 多重量词律

  1. 其他

xP(x)P(y)\forall xP(x)\Rightarrow P(y)yy是论域中的任一确定个体。

P(y)xP(x)P(y)\Rightarrow\exist xP(x)yy是论域中的某个确定个体。

xP(x)xP(x)\forall xP(x)\Rightarrow\exist xP(x)

谓词逻辑的推理理论

  1. 存在指定原则(ES)

xP(x)P(a)\frac{\exist xP(x)}{\therefore P(a)}

aa是个体常元,注意所指定的个体常元要使得谓词为真。

  1. 全称指定原则(US)

xP(x)P(y)\frac{\forall xP(x)}{\therefore P(y)}

yy是自由变元,也可以指定到个体常元aa

xP(x)P(a)\frac{\forall xP(x)}{\therefore P(a)}

注意如果同时指定xP(x)\exist xP(x)xQ(x)\forall xQ(x),应当先指定P(a)P(a),再指定Q(a)Q(a),才能保证两者都为真。

  1. 存在推广原则(EG)

P(a)xP(x)\frac{P(a)}{\therefore\exist xP(x) }

  1. 全称推广原则(UG)

ΓP(x)ΓxP(x)\frac{\Gamma\Rightarrow P(x)}{\therefore\Gamma\Rightarrow\forall xP(x)}

Γ\Gamma是已知公理和前提的合取,Γ\Gamma中没有自由变元xx的出现。

集合

集合的表示方法

  1. 列举法
  2. 描述法:用自然语言或谓词描述集合中元素的共同特征。
  3. 归纳定义法(见后)

集合间的关系

外延性公理

两个集合A,BA,B相等,记为A=BA=B,当且仅当它们有相同的元素,即

A=Bx(xAxB)A=B\Leftrightarrow \forall x(x\in A\leftrightarrow x\in B)

两个集合不相等,通常记为ABA\neq B

子集

ABA、B是任意的两个集合,若集合AA的每个元素都是集合BB的元素,则称AABB的子集或称BB包含AA,记为ABA\subseteq BBAB\supseteq A,用逻辑公式表示为

ABx(xAxB)A\subseteq B\Leftrightarrow\forall x(x\in A\to x\in B)

如果AA不是BB的子集,通常记为ABA\nsubseteq B

真子集

如果集合AA的每一个元素都属于BB,但集合BB中至少有一个元素不属于AA,则称AABB的真子集,记为ABA\subset B,用逻辑公式表示为

ABx(xAxB)y(yByA)(AB)(AB)A\subset B\Leftrightarrow\forall x(x\in A\to x\in B)\wedge \exist y(y\in B\wedge y\notin A)\Leftrightarrow(A\subseteq B)\wedge(A\neq B)

全集

在一定范围内所有事物组成的集合称为该范围内的全集记为UU,用逻辑公式表示为

U={xP(x)¬P(x)}U = \{x|P(x)\vee\neg P(x)\}

其中,P(x)P(x)是任意的谓词

空集

不含任何元素的集合称为空集,记为ϕ\phi,用逻辑公式表示为

ϕ={xP(x)¬P(x)}\phi = \{x|P(x)\wedge\neg P(x)\}

其中,P(x)P(x)是任意的谓词,并且显然有ϕ=0|\phi|=0

几个定理

定理1

空集是任一集合的子集,并且是任何非空集合的真子集。

定理2

A,B,CA,B,C是集合,若ABA\subseteq BBCB\subseteq C,则ACA\subseteq C

定理3

集合A,BA,B相等的充要条件是A,BA,B互为子集。

定理3.1

对于任何集合AA,有AAA\subseteq A

定理4

空集是唯一的。

集合的运算

集合的交,交集

AB={xxAxB}A\cap B = \{x|x\in A\wedge x\in B\}

集合的并,并集

AB={xxAxB}A\cup B = \{x|x\in A\vee x\in B\}

集合的差,相对补集

AB={xxAxB}A-B=\{x|x\in A\wedge x\notin B\}

集合的补,绝对补集

Aˉ=UA={xxUxA}\bar{A}=U-A=\{x|x\in U\wedge x\notin A\}

集合的对称差

AB=(AB)(BA)={x(xAxB)(xBxA)}A\oplus B=(A-B)\cup(B-A)=\{x|(x\in A\wedge x\notin B)\vee(x\in B\wedge x\notin A)\}

集合的环积

AB=AB=(AB)(AˉBˉ)={x(xAxB)(xAxB)}A\otimes B=\overline{A\oplus B}=(A\cap B)\cup(\bar{A}\cap\bar{B})=\{x|(x\in A\wedge x\in B)\vee(x\notin A\wedge x\notin B)\}

满足如下运算律

幂集

给定集合AA,由AA所有子集为元素构成的集合,称为AA的幂集,记作ρ(A)\rho(A)。若A=n|A|=n,则有ρ(A)=2n|\rho(A)=2^n|

容斥原理

定理1

A1,A2A_1,A_2是有限集合,其元素个数分别为A1,A2|A_1|,|A_2|,则A1A2=A1+A2A1A2|A_1\cup A_2|=|A_1|+|A_2|-|A_1\cap A_2|

容斥原理

将上式推广,得

A1A2An=i=1nAi1i<jnAiAj+1i<j<knAiAjAk+(1)n+1A1A2An|A_1\cup A_2\cup\cdots\cup A_n|=\sum_{i=1}^n|A_i|-\sum_{1\leq i < j\leq n}|A_i\cap A_j|+\\ \sum_{1\leq i < j < k\leq n}|A_i\cap A_j\cap A_k|-\cdots+(-1)^{n+1}|A_1\cap A_2\cap\cdots\cap A_n|

归纳证明

集合的归纳定义

  1. 基础条款:指出某些事物属于SS,其功能是给集合SS指定初始元素使其不为空。
  2. 归纳条款:指出由集合SS中的已有元素构造新元素的办法。
  3. 极小性条款:断言一个事物除非能有限次应用基础条款和归纳条款构成,否则它不在集合SS中。

归纳法证明

  1. 基础步骤。对于基础条款中的指定的每个初始元素tt,证明命题P(t)P(t)为真。
  2. 归纳步骤。证明如果事物x,y,x,y,\cdotsPP性质,那么用归纳条款指定的方法组合它们所得的新元素也具有性质PP

数学归纳法

第一原理

  1. (归纳基础)证明P(0)P(0)为真(可以用任何办法)
  2. (归纳假设)任取n(n0)n(n\ge0),假设P(n)P(n)为真。
  3. (归纳推理)由P(n)P(n)为真,推出P(n+1)P(n+1)也为真。

第二原理

  1. (归纳基础)证明P(0)P(0)为真(可以用任何办法)
  2. (归纳假设)假设对任意的n<kn < k,均有P(k)P(k)为真。
  3. (归纳推理)证明P(n)P(n)也为真。

集合的笛卡尔积

序偶

两个元素aabb组成的具有固定次序的序列称为序偶或二元组,记为<a,b>< a,b>。对于序偶<a,b>< a,b>aa称为第11元素,bb称为第22元素。

序偶的相等

两个序偶<a,b>< a,b><c,d>< c,d>相等,记为<a,b>=<c,d>< a,b>=< c,d>,当且仅当a=ca=cb=db=d

笛卡尔积(叉积)

A×B={<a,b>aA,bB}A\times B=\{< a,b>|a\in A,b\in B\}

对于多个集合,有

A1×A2××An={<a1,a2,,an>aiAi,1in}A_1\times A_2\times\cdots\times A_n=\{< a_1,a_2, \cdots,a_n>|a_i\in A_i,1\leq i\leq n\}

其中A×A××AA\times A\times\cdots\times Ann个)可以记作AnA^n

规定<a1,a2,,an>=<<a1,a2,,an1>,an>< a_1,a_2, \cdots,a_n>=<< a_1,a_2, \cdots,a_{n-1}>,a_n>,而不等于<a1,<a2,,an>>< a_1,< a_2, \cdots,a_n>>等等其他序偶。

关于笛卡尔积有如下定理

定理1

  1. A×(BC)=(A×B)(A×C)A\times(B\cup C)=(A\times B)\cup(A\times C)
  2. A×(BC)=(A×B)(A×C)A\times(B\cap C)=(A\times B)\cap(A\times C)
  3. (AB)×C=(A×C)(B×C)(A\cup B)\times C=(A\times C)\cup(B\times C)
  4. (AB)×C=(A×C)(B×C)(A\cap B)\times C=(A\times C)\cap(B\times C)

定理2

如果Ai(i=1,2,,n)A_i(i=1,2,\cdots,n)都是有限集合,那么

A1×A2××An=A1A2An|A_1\times A_2\times\cdots\times A_n|=|A_1|\cdot|A_2|\cdot\cdots\cdot|A_n|

二元关系

关系的定义

两个集合AABB的笛卡儿积A×BA\times B的任一子集RR,称为集合AABB上的二元关系。二元关系RR是由序偶构成的集合,若<x,y>R< x,y>\in R,则称xxyyRR关系,也记为xRyxRy;否则,<x,y>R< x,y>\notin R,称xxyy没有RR关系,也记为xRyx\cancel{R}y

RR是集合AABB的二元关系。集合AA称为RR的前域,集合BB称为RR的陪域。集合{x(y)(<x,y>R)}\{x|(\exist y)(< x,y>\in R)\}称为RR的定义域,记为domRdomR。集合{y(x)(<x,y>)R)}\{y|(\exist x)(< x,y>)\in R)\}称为RR的值域,记为ranRranR。显然, domRAdomR\subseteq AranRBranR\subseteq B

关系的表示

  1. 关系矩阵

rij={1,if<ai,bj>R0,if<ai,bj>Rr_{ij}= \left\{\begin{matrix} 1, if< a_i,b_j>\in R\\ 0, if< a_i,b_j>\notin R \end{matrix}\right.

  1. 关系图

关系的运算

所有集合的运算对于二元关系同样适用。

复合运算

RR为集合AABB的二元关系,SSBBCC的二元关系,令

RS={<a,c>aAcC(b)(bB<a,b>R<b,c>S)}R\circ S=\{< a,c>|a\in A\wedge c\in C\wedge(\exist b)(b\in B\wedge< a,b>\in R\wedge < b,c>\in S)\}

RSR\circ SRRSS的复合关系。

复合运算可以通过关系的矩阵的运算来实现

MRS=MRMS\bm{M}_{R\circ S}=\bm{M}_R\odot\bm{M}_S

其中\odot是布尔乘法运算,cij=k=1n(aikbkj)c_{ij}=\bigvee_{k=1}^{n}(a_{ik}\wedge b_{kj})

复合运算有如下定理

定理1

(RS)T=R(ST)(R\circ S)\circ T=R\circ(S\circ T)

关系的逆,逆关系

R1={<b,a><a,b>R}R^{-1}=\{< b,a>|< a,b>\in R\}

关系矩阵即为原矩阵的转置

关系图即将箭头反向

有如下定理

定理1

  1. (R1)1=R(R^{-1})^{-1}=R
  2. (R1R2)1=R11R21(R_1\cup R_2)^{-1}=R_1^{-1}\cup R_2^{-1}
  3. (R1R2)1=R11R21(R_1\cap R_2)^{-1}=R_1^{-1}\cap R_2^{-1}
  4. (R)1=R1(\overline{R})^{-1}=\overline{R^{-1}},其中R=(A×B)R\overline{R}=(A\times B)-RR1=(B×A)R1\overline{R^{-1}}=(B\times A)-R^{-1}
  5. (R1R2)1=R11R21(R_1-R_2)^{-1}=R_1^{-1}-R_2^{-1}

定理2

(RS)1=S1R1(R\circ S)^{-1}=S^{-1}\circ R^{-1}

集合上的二元关系及其特性

集合上的二元关系

集合AAAA的笛卡尔积A×AA\times A的子集称为AA上的二元关系。

相等关系

IA={<a,a>aA}I_A=\{< a,a>|a\in A\}

RR的幂次

RRAA上的二元关系,nZ+n\in Z^+,称RRRR\circ R\circ\cdots\circ R(n个)为RRnn次幂。记为RnR^n

约定R0=IAR^0=I_A

有如下定理

定理1

  1. RmRn=Rm+nR^m\circ R^n=R^{m+n}
  2. (Rm)n=Rmn(R^m)^n=R^{mn}

定理2

设存在i,jRi,j\in R,使得Ri=RjR^i=R^j,则有

  1. 对任意k0,Ri+k=Rj+kk\ge 0, R^{i+k}=R^{j+k}
  2. 对任意k,m0,Ri+md+k=Ri+kk,m\ge 0, R^{i+md+k}=R^{i+k},其中d=jid=j-i
  3. S={R0,R1,,Rj1}S=\{R_0,R^1,\cdots,R^{j-1}\},对于任意nNn\in N,均有RnSR^n\in S

二元关系的特性

  1. 自反性。对于AA中的每个元素aa,都有aRaaRa,则称RRAA上是自反的。
  2. 反自反性。对于AA中的每个元素aa,都有aRaa\cancel{R}a。空集上的空关系即是自反的也是反自反的。
  3. 对称性。对于任意a,bAa,b\in A,若有aRbaRb,则必有bRabRa
  4. 反对称性。对于任意a,bAa,b\in A,若有aRbaRbbRabRa,则必有a=ba=b。若关系图上只有零个或多个自回路,则既是对称的,又是反对称的。
  5. 传递性。对于任意a,b,cAa,b,c\in A,若aRb,bRcaRb,bRc则必有aRcaRc

关系的闭包运算

RR是集合AA上的二元关系,如果AA上另外一个二元关系RR'满足:

  1. RR'是自反的(对称的,传递的)
  2. RRR'\subseteq R
  3. 对于AA上任何自反的(对称的,传递的)关系RR'',若RRR''\subseteq R,有RRR''\subseteq R',则称RR'RR的自反(对称,传递)闭包,记为r(R)(s(R),t(R))r(R)(s(R),t(R))

有如下定理

定理1

  1. RR是自反的当且仅当r(R)=Rr(R)=R
  2. RR是对称的当且仅当s(R)=Rs(R)=R
  3. RR是传递的当且仅当t(R)=Rt(R)=R

定理2

  1. r(R)=RIAr(R)=R\cup I_A
  2. s(R)=RR1s(R)=R\cup R^{-1}
  3. t(R)=i=1Rit(R)=\bigcup_{i=1}^{\infty}R^i

定理3

假设A=n|A|=n,那么t(R)=i=1nRit(R)=\bigcup_{i=1}^{n}R^i

定理4

  1. 如果RR是自反的,那么s(R),t(R)s(R),t(R)也是自反的。
  2. 如果RR是对称的,那么r(R),t(R)r(R),t(R)也是对称的。
  3. 如果RR是传递的,那么r(R)r(R)也是传递的。

定理5

  1. sr(R)=rs(R)sr(R)=rs(R),(sr(R)=s(r(R))sr(R)=s(r(R))以下运算顺序相同)。
  2. tr(R)=rt(R)tr(R)=rt(R)
  3. ts(R)st(R)ts(R)\subseteq st(R)

等价关系

集合的划分

给定非空集合AA和集合簇π={A1,A2,,Am}\pi=\{A_1,A_2,\cdots,A_m\},如果

  1. AiAA_i\subseteq AAiϕA_i\neq\phi
  2. A=i=1mAiA=\bigcup_{i=1}^{m}A_i
  3. AiAj=ϕ,ijA_i\cap A_j=\phi, i\neq j

那么称π\piAA的一个划分,若π\pi满足1.2.则称π\piAA的一个覆盖。

等价关系和等价类

等价关系

RRAA上的二元关系,若RR是自反的、对称的、传递的,则称RR是等价关系。

等价类

RR是非空集合AA上的等价关系,对于任意aAa\in A,称集合[a]R={xxA,xRa}[a]_R=\{x|x\in A,xRa\}aa关于RR的等价类,aa称为等价类[a]R[a]_R的代表元素。如果等价类个数有限,则RR的不同等价类的个数叫做RR的秩,否则秩是无限的。

有如下定理

定理1

RR是非空集合AA上的等价关系,对于a,bAa,b\in AaRbaRb,当且仅当[a]R=[b]R[a]_R=[b]_R

商集

RR是集合AA上的等价关系,由RR确定的所有等价类组成的集合,称为集合AA上关于RR的商集,记为A/RA/R

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

有如下定理

定理1

  1. 任取xAx\in A[x]Rϕ[x]_R\neq\phi
  2. 任取x,yAx,y\in A,要么[x]R=[y]R[x]_R=[y]_R,要么[x]R[y]R=ϕ[x]_R\cap[y]_R=\phi
  3. xA[x]R=A\bigcup_{x\in A}[x]_R=A

定理2

π\pi是非空集合AA的一个划分,则AA上的二元关系R=BπB×BR=\bigcup_{B\in\pi} B\times BAA上的等价关系(称为由划分π\pi诱导的AA上的等价关系)。

定理3

R1R_1R2R_2是非空集合AA上的等价关系,则R1=R2A/R1=A/R2R_1=R_2\Leftrightarrow A/R_1=A/R_2

定理4

RR是非空集合AA上的任意一个等价关系,π\piAA的任意一个划分,那么RR诱导出π\pi当且仅当π\pi诱导出RR。即说明等价关系和集合的划分是一一对应的。

序关系

偏序集合的概念与表示

偏序

如果AA上的关系RR是自反的,反对称的和传递的,那么RRAA上的偏序,通常用符号\preceq表示,称序偶<A,>< A,\preceq>为偏序集合。通常用xyx\prec y表示xyx\preceq yxyx\neq y

可比与不可比

在偏序集合<A,>< A,\preceq>中,对于元素a,bAa,b\in A,如果aba\preceq b或者bab\preceq a,那么称aabb是可比的,否则不可比的。

盖住

在偏序集合<A,>< A,\preceq>中,对于x,yAx,y\in A,如果xyx\prec y且没有其他元素zAz\in A满足xzyx\prec z\prec y,则称yy盖住xx

哈斯图

<A,>< A,\preceq>是一个偏序集合,BAB\subseteq A。如果BB中的任意两个元素都是可比的,那么称BB<A>< A,\preceq>中的链,BB中元素的个数称为该链的长度。如果BB中的任意两个不同的元素都是不可比的,那么称BB<A>< A,\preceq>中的反链。

偏序集合中的特殊元素

极大元

<A,>< A, \preceq>是偏序集合,且BAB\subseteq A。如果bBb\in B,且BB中不存在元素xx,使得xbx\neq bbxb\preceq x,那么bb称为BB的极大元。

极小元

<A,>< A, \preceq>是偏序集合,且BAB\subseteq A。如果bBb\in B,且BB中不存在元素xx,使得xbx\neq bxbx\preceq b,那么bb称为BB的极小元。

最大元

<A,>< A, \preceq>是偏序集合,且BAB\subseteq A。如果bBb\in B,对于任意元素xBx\in B,均有xbx\preceq b,那么bb称为BB的最大元。

最小元

<A,>< A, \preceq>是偏序集合,且BAB\subseteq A。如果bBb\in B,对于任意元素xBx\in B,均有bxb\preceq x,那么bb称为BB的最小元。

有如下定理

定理1

<A,>< A, \preceq>是偏序集合,且BAB\subseteq A。如果BB有最大(最小元),那么它是唯一的。

上界

<A,>< A, \preceq>是偏序集合,且BAB\subseteq A。如果aAa\in A,对于任意元素bBb\in B,均有bab\preceq a,那么aa称为BB的上界。

下界

<A,>< A, \preceq>是偏序集合,且BAB\subseteq A。如果aAa\in A,对于任意元素bBb\in B,均有aba\preceq b,那么aa称为BB的下界。

最小上界(上确界)

<A,>< A, \preceq>是偏序集合,且BAB\subseteq AaaBB的上界,若对BB的任意上界aa'均有aaa\preceq a',则称aaBB的最小上界或上确界。

最大下界(下确界)

<A,>< A, \preceq>是偏序集合,且BAB\subseteq AaaBB的下界,若对BB的任意下界aa'均有aaa'\preceq a,则称aaBB的最大下界或下确界。

有如下定理

定理1

BB有最小上界(最大下界),那么它是唯一的。

定理2

<A,>< A, \preceq>是偏序集合,且BAB\subseteq A

  1. bbBB的最大元,则bbBB的极大元。
  2. bbBB的最大元,则bbBB的最小上界。
  3. bBb\in B,若bbBB的上界,当且仅当bbBB的最小上界。
  4. bbBB的最小元,则bbBB的极小元。
  5. bbBB的最小元,则bbBB的最大下界。
  6. bBb\in B,若bbBB的下界,当且仅当bbBB的最大下界。

定理3

<A,>< A,\preceq>是非空有限偏序集,则AA中必存在极大元和极小元。

定理4

<A,>< A,\preceq>是偏序集合,如果AA中最长链的长度为nn,则AA中元素能划分为nn个互不相交的反链。

线序和良序

<A,>< A, \preceq>是偏序集合,如果任取a,bAa,b\in A,都有aba\preceq b或者bab\preceq a,那么称\preceqAA上的线序或全序。称<A.>< A. \preceq>为线序集合,称AA为链。

如果AA上的一个二元关系RR是一个线序,且AA的每一非空子集都有最小元,那么称RRAA上的良序,称<A,R>< A,R>为良序集合。

有如下定理

定理

每一有限线序集合都是良序集合。

函数与无限集合

函数的定义

注意对于每个xAx\in A,都只和唯一一个yYy\in Yff关系。yyxx的函数值或像,xxyy的原像。

定义域必须是整个前域,值域可以不是整个陪域。一般X,YX,Y指的是前域和陪域。

函数相等

f:ABf:A\to B, g:CDg:C\to D,如果A=C,B=DA=C,B=D,且对于所有的xAx\in Af(x)=g(x)f(x)=g(x),则称f,gf,g相等,记作f=gf=g

多元函数

前域是nn个集合的笛卡尔积,称为nn元函数,像记作f(x1,x2,,xn)f(x_1,x_2,\cdots,x_n)

递归定义的函数

前域是归纳定义的集合时,可以采用递归定义方法来定义函数。规则是:用已经得到的元素函数值和给定的函数来计算新元素的函数值。

特殊函数

单射

任取x1,x2Xx_1,x_2\in X,如果x1x2x_1\neq x_2,那么f(x1)f(x2)f(x_1)\neq f(x_2),则称ff为单射函数,也称一对一函数。

满射

若任取yYy\in Y,存在xXx\in X,使得f(x)=yf(x)=y,则称为满射函数。

双射

既是单射又是满射,称为双射函数。也称一一对应函数。

有如下定理

定理1

X,YX,Y是有限集合,f:XYf:X\to Y

  1. ff是单射,则必有XY|X|\leq|Y|
  2. ff是满射,则必有XY|X|\ge|Y|
  3. ff是双射,则必有X=Y|X|=|Y|

定理2

XXYY是有限集合,ff是从集合XXYY的函数。若X=Y|X|=|Y|,则ff是单射,当且仅当ff是满射。

常数函数

存在cYc\in Y,对任意xXx\in Xf(x)=cf(x)=c

恒等函数

f(x)=xf(x)=x

置换(排列)

对于函数f:XXf:X\to X,若ff是双射的,则称ffXX上的置换或排列。XX上的恒等函数称为恒等置换或者幺置换。X=n|X|=n时称为nn次置换,X|X|无限时称为无限次置换。

通常写成

P=(x1x2xnf(x1)f(x2)f(xn))P= \begin{pmatrix} x_1 & x_2 & \cdots & x_n\\ f(x_1) & f(x_2) & \cdots & f(x_n) \end{pmatrix}

复合函数和逆函数

类似于关系的复合运算

但是注意书写顺序。gfg\diamond ffgf\circ g的顺序正好相反

定理1

f:XY,g:YZf:X\to Y,g:Y\to Z,那么gfg\diamond fXXZZ的函数。

定理2

h(gf)=(hg)fh\diamond(g\diamond f)=(h\diamond g)\diamond f

  1. f0=Ixf^0=I_x
  2. fn+1=ffnf^{n+1}=f\diamond f^n

定理3

f:XY,g:YZf:X\to Y,g:Y\to Z

  1. f,gf,g满射,则gfg\diamond f满射。
  2. f,gf,g单射,则gfg\diamond f单射。
  3. f,gf,g双射,则gfg\diamond f双射。
  4. gfg\diamond f满射,则gg满射
  5. gfg\diamond f单射,则ff单射
  6. gfg\diamond f双射,则gg满射,ff单射。

逆函数

ff是双射函数,则f1={<y,x><x,y>f}f^{-1}=\{< y,x>|< x,y>\in f\}。显然逆函数也是双射函数。

定理1

  1. (f1)1=f(f^{-1})^{-1}=f
  2. f1f=IXf^{-1}\diamond f=I_X
  3. ff1=IXf\diamond f^{-1}=I_X

定理2

(gf)1=f1g1(g\diamond f)^{-1}=f^{-1}\diamond g^{-1}

可数与不可数集合

集合的基数

基数

度量AA大小的数称为基数或势,记为A|A|

等势

AABB能建立起双射函数,则称A,BA,B等势,记为ABA\sim B,或A=B|A|=|B|

定理1

等势是任何集合簇上的等价关系。即是自反的、对称的、传递的。

有限集合、无限集合

含有有限个(包含0)元素的集合称为有限集合,不是有限集合的称为无限集合。

定理1

有限集合的任意子集是有限集合。无限集合的超集是无限集合。

定理2

无限集合存在与其等势的真子集。

可数集

与自然数集NN等势的集合称为可数无限集合,简称可数集。可数集的基数用0\alef_0表示。

有限集和可数集通称为至多可数集。

枚举

AA是一个集合,如果ff是从NN或从Nk={0,1,2,,k1}N_k=\{0,1,2,\cdots,k-1\}AA的一个满射函数,则称ffAA的一个枚举。如果ff是双射的,则称为无重复枚举,否则称为重复枚举。

定理1

一个无限集合AA是可数集,当且仅当存在AA的枚举。

定理2

可数无限集的任一无限子集是可数集。

定理3

任意两个可数集的并是可数集。

定理4

N×NN\times N是可数集。

定理5

可数个可数集的并是可数集。

不可数集

与自然数集不等势的无限集称为不可数集

定理1

实数集的子集(0,1)(0,1)是不可数集

基数的比较

Zemelo三歧性定理

以下三条恰有一条成立

  1. |A|<|B|
  2. |A|>|B|
  3. |A|=|B|

Cantor-Schroder-Bernstein定理

AB|A|\leq|B|AB|A|\ge|B|,则A=B|A|=|B|

定理3

AA是任意有限集合,则A<0<|A|<\alef_0<\alef

定理4

任意无限集合必定存在可数无限子集

定理5

0\alef_0是最小的无限集基数

Cantor定理

M<ρ(M)|M|<|\rho (M)|

图论

图的基本概念

按边是否有方向,图可以分为有向图、无向图和混合图。

GG是一个有向图,如果将GG中的每条边的方向去掉就能得到一个无向图GG',则称GG'GG的底图。

邻接点

关联于同一条边的两个结点被称为邻接点。

邻接边

关联于一个结点的两条边被称为邻接边。

孤立结点

不与任何结点邻接的结点称之为孤立节点

零图

仅由若干个孤立节点构成的图称为零图。

平凡图

仅由单个孤立节点组成的图称为平凡图。

平行边

e1=e2={u,v}e_1=e_2=\{u,v\},若e1,e2e_1,e_2是两条不同的边,则称e1,e2e_1,e_2为平行边。

自回路(环)

e={u,u}e=\{u,u\}

多重图

有平行边的图。

线图

不含平行边的图。

简单图

不含自回路的图。

结点的度数

与结点vv关联的边数称为结点vv的度数(无向图),记为deg(v)deg(v)

如果是有向图,则以结点vv为终点的边数称为入度deg(v)deg^-(v),为始点的边数称为出度deg+(v)deg^+(v)。显然有deg(v)=deg(v)+deg+(v)deg(v)=deg^-(v)+deg^+(v)

有如下定理

握手定理

任何图中,所有节点的度数之和等于边数的两倍。

定理2

任何图中,奇数度的节点必有偶数个。

定理3

任何有向图中,所有节点的入度等于所有节点的出度。

特殊图

无向完全图

无向简单图中,任何两个不同结点间都恰有一条边相连。nn个结点的无向完全图记为KnK^n

有向完全图

有向图G=<V,E>G=< V,E>满足E=V×VE=V\times V。记为DnD_n

二部图

非零图,节点集合VV可以划分成两个不相交的子集XXYY,使GG中的每一条边的一个端点在XX中而另一个端点在YY中,则称GG为二部图,记为G=<X,E,Y>G=< X,E,Y>

可以通过标号法确定一个图是不是二部图。

二部图必无自回路,但可以有平行边。

子图与补图

子图

G=<V,E>G=< V,E>G=<V,E>G'=< V',E'>,若有EEE'\subseteq EVVV'\subseteq V,则称GG'GG的子图。

生成子图

V=VV'=V时,GG'GG的生成子图。

导出子图

GG'GG的子图,VV'仅由EE'中边相关联的结点组成,则称GG'为由边集EE'导出的子图。

补图

给定一个图GG,由GG中所有的结点及所有能使GG成为完全图的添加边组成的图,称为GG相对于完全图的补图,简称为GG的补图,记为Gˉ\bar{G}

图的同构

G=<V,E>,G=<V,E>G=< V,E>,G'=< V',E'>,如果存在双射函数f:VV,g:EEf:V\to V',g:E\to E',对于任何eE,e=[vi,vj]e\in E,e=[v_i, v_j]当且仅当g(e)=[f(vi),f(vj)]g(e)=[f(v_i),f(v_j)]。则称G,GG,G'同构,记作GGG\cong G'

相互同构的图只是画法不同或者结点与边的命名不同而已。

两幅图同构的必要条件

  1. 结点数相同
  2. 边数相同
  3. 度数相同的结点数目相同

图的连通性

路和回路

通路

经过的结点不重复的路。

经过的边不重复的路。回路为闭迹,非回路为开迹。

除始点和终点外没有相同结点的闭迹称为圈。长度为kk的圈称为kk圈,又可根据kk分为奇圈和偶圈。

定理1

在一个具有nn个节点的图中,如果两个结点连通,则两个结点间必有一条长度小于nn的路(也存在小于nn的通路)。

定理2

在一个具有nn个节点的图中,如果存在闭迹,则必存在一条长度小于等于nn的圈。

定理3

GG是一个无向图,若GG中每个结点的度数大于等于22GG中必含有圈。

定理4

G=<V,E>G=< V,E>是无向图,E>0|E|>0GG是二部图当且仅当GG中不含有奇圈。

无向图的连通性

割点与割点集

删除某个结点和其相连边后,图变成不连通的,则称为割点。删除某个点集中的所有点和所连接边,图变成不连通的,并且删除该点集的任意真子集图仍然连通,则称这个点集为割点集。

k连通

GG产生一个不连通子图最少需要删去kk个结点。则称GGkk连通图。

定理1

无向图中,一个结点是割点,当且仅当存在两个结点间的每条路都要通过该节点。

割边与割边集

与割点相似。

k边连通

kk连通相似。

定理1

无向图中,一条边是割边,当且仅当它不包含在任一圈中。

有向图的连通性

强连通,单侧连通,弱连通

强连通则是两个结点双向可达。单侧连通则是单向可达。若联通则是看成无向图。

定理1

有向图是强连通的,当且仅当它存在一条回路,至少包含每个结点一次。

最短路

见算法竞赛模板。

图的矩阵表示

邻接矩阵

AATAA^T

GG中刚好有bijb_{ij}个结点,从viv_ivjv_j均有边引出到这些节点。

ATAA^TA

GG中刚好有bijb_{ij}个结点,以这些节点为始边,既有边到viv_i又有边到vjv_j

A×AA\times A

viv_ivjv_j的路,长度为2的有bijb_{ij}条。

同理可知A(m)A^{(m)}的含义。

可达矩阵

P(G)=A(0)A(1)A(n1)P(G)=A^{(0)}\vee A^{(1)}\vee\cdots\vee A^{(n-1)}

定理

  1. 无向图是连通图,当且仅当可达矩阵所有元素都为1.
  2. 有向图是强连通图,当且仅当可达矩阵所有元素都为1.
  3. 有向图是单侧连通图,当且仅当PPTP\vee P^T所有元素都为1.
  4. 有向图是弱连通图,当且仅当以AATA\vee A^T作为邻接矩阵求出来的可达矩阵PP'所有元素都为1.

求传递闭包的快速算法

RR是集合VV上的二元关系,nZ+n\in \bm{Z}^+,对于任意a,bV,<a,b>Rna,b\in V,< a,b>\in R^n,当且仅当RR的关系图G=<V,E>G=< V,E>中存在从aabb有长度为nn的有向路。

MR\bm{M}_RVV上二元关系RR的关系矩阵,则

Mt(R)=MRMR(2)MR(n)\bm{M}_{t(R)}=\bm{M}_R\vee\bm{M}_R^{(2)}\vee\cdots\vee\bm{M}_R^{(n)}

欧拉图与汉密尔顿图

欧拉图

欧拉路(欧拉迹)

包含图中所有边的开迹。

欧拉回路

包含图中所有边的闭迹。

欧拉图

包含欧拉回路的图称为欧拉图。

定理1

无向图是欧拉图当且仅当图是连通的并且每个结点的度均为偶数。

无向图中存在一条欧拉路,当且仅当图是联通的,并且图中恰有两个奇数度的点。并且这两个点是起点和终点。

定理2

有向图是欧拉图,当且仅当它是联通的,并且每个结点的出度等于入度。

有向图有欧拉路,当且仅当它是联通的,并且除了两个结点以外都出度等于入度,这两个结点必须一个出度比入度大一,另一个入度比出度大一。

汉密尔顿图

包含图中每个结点一次且仅一次的通路称为汉密尔顿路。包含图中每个结点一次且仅一次的圈叫汉密尔顿回路。含汉密尔顿回路的图叫做汉密尔顿图。

定理1(必要条件)

GG是汉密尔顿图,则对于结点集VV的每一个非空子集SS都有

ω(GS)S\omega(G-S)\leq|S|

其中ω(GS)\omega(G-S)表示GG删除SS中所有结点后得到的连通分支的个数。

定理2(必要条件)

G=<X,E,Y>G=< X,E,Y>是无向连通二部图,其中X=m,Y=n|X|=m,|Y|=n,若mnm\neq n,则必不是汉密尔顿图。

mn>1|m-n|>1,则必不存在汉密尔顿路。

定理3(充分条件)

G=<V,E>G=< V,E>是含有n(n3)n(n\ge3)个节点的简单无向图,如果GG中的任何两个不同结点的度数之和都大于等于n1n-1,则GG中存在汉密尔顿路。

如果都大于等于nn,则存在汉密尔顿回路。

平面图

平面嵌入

将一个平面图GG重新排列得到边不相交的图GG'GG'称为一个平面嵌入。

面的次数

rr的边界回路长度称为面的次数,记作deg(r)deg(r)

定理1

连通平面图,所有面的次数之和等于边数的两倍

定理2

连通平面图,有nn个节点,mm条边,rr个面,则有nm+r=2n-m+r=2成立。

n3n\ge3,则m3n6m\leq3n-6

若每个面至少由kk边围成,则有mk(n2)k2m\leq\frac{k(n-2)}{k-2}

同胚

给定两个图G1G_1G2G_2,如果它们本身是同构的,或者通过反复插入度为2的结点(在某边上嵌入结点)或反复删除度为2的结点(仅去除结点,其关联边拼接)后,能够使G1G_1G2G_2同构,则称G1G_1G2G_222度结点内同构,亦称同胚。

库拉托夫斯基定理

一个图是平面图,当且仅当它不包含与K3,3K_{3,3}K5K_5同胚的子图。

图的着色

图的结点着色

正常着色

无向图,给每个结点指定一种颜色,若满足邻接的两个结点颜色不同,则称为正常着色。

可k-着色

可以用kk种不同的颜色给无向图正常着色。

k色图

对无向图正常着色所需要的最少的颜色数,称为顶着色数,简称色数,记为X(G)\mathcal{X}(G)。色数为kk的图称为kk色图

Welch Powell着色法

  1. 将图GG中的结点按度数递减的次序进行排列。
  2. 用一种与已着色结点所着颜色不同的新的颜色CC对排列最前的尚未着色的节点着色,并按排列次序对与前面已着上颜色CC的结点均不相邻的每一结点着同样的颜色CC
  3. 重复2知道着色结束。

定理1

任何图均满足X(G)Δ(G)+1\mathcal{X}(G)\leq \Delta(G)+1Δ(G)=max{d(u)uV}\Delta(G)=max\{d(u)|u\in V\}

定理2

X(G)=2\mathcal{X}(G)=2,当且仅当GG是二部图。

平面图的着色

对偶图

G=<V,E>G=< V,E>是平面图,GG'GG的一个平面嵌入,F(G)F(G')GG'的面集合。构造图GG^*,若GG^*的结点集合V(G)=F(G)V(G^*)=F(G'),且任取两个结点f1,f2V(G)f_1,f_2\in V(G^*)f1f_1f2f_2之间存在边ee当且仅当f1f_1f2f_2GG'中有一条公共边,则称GG^*GG的对偶图。

定理

G=<V,E>G=< V,E>是一个连通简单平面图,且V3,E=m|V|\ge 3,|E|=m,则GG中必存在结点uVu\in V,满足deg(u)5deg(u)\leq 5

希伍德五色定理

任何一个连通简单平面图都是5可着色的。

四色定理

平面图的色数不超过4。

无向树的定义

平凡树

只有一个孤立节点的树。

定理1

对于一个含有nn个结点mm条边的无向树,以下定义等价

  1. 无圈且连通
  2. 无圈且m=n1m=n-1
  3. 连通且m=n1m=n-1
  4. 无圈,但任意新增一条边,恰得到一个圈
  5. 连通,且每条边都是割边
  6. 每一对结点有且只有一条通路

定理2

任何一颗非平凡树中至少有两片树叶

生成树

定理1

任何一个无向连通图至少有一颗生成树

定理2

连通图中的一个圈与其任何一棵生成树的补至少有一条公共边。

定理3

一个边割集和任何一棵生成树至少有一条公共边。

最小生成树及其算法

见竞赛模板。

根树及其应用

根树

一棵有向树,恰有一个节点入度为0,其余节点入度都为1。

m元树

每个结点的出度均小于等于mm的根树。

每个节点的出度均等于00mm的根树称为正则mm元树。

定理1

正则mm元树TT,其树叶数为tt,分支结点数为ii,则有(m1)i=t1(m-1)i=t-1

带权树

如果一颗二元树TT共有nn片树叶,分别带权ω1,ω2,,ωn\omega_1,\omega_2,\cdots,\omega_n。定义这棵二元树TT的权值为,

W(T)=i=1nωiL(ωi)W(T)=\sum_{i=1}^{n}\omega_iL(\omega_i)

其中L(ωi)L(\omega_i)为带权ωi\omega_i的树叶的深度(根深度为0)。在所有带这些权的二元树中,具有最小权的二元树称为最优二元树。

定理1

最优二元树是一颗正则二元树。

定理2

最优二元树中,层数最大的分支节点的两个儿子所带权分别为最小的两个权。

最优二元树的构造方法

前缀码

给定一个以0,10,1组成序列为元素的集合,若没有一个序列是另一个序列的前缀,则该集合称为前缀码。

利用有序正则二元树解决前缀码问题