0
点赞
收藏
分享

微信扫一扫

离散数学笔记整理(个人向)

small_Sun 2022-03-14 阅读 124

1. 集合

1.1. 概念

  • 等势:A、B两集合间存在一一对应的关系,则称A与B等势,记为 A ~ B。
  • 可数集合:与自然数集合N等势的集合。集合基数为阿列夫零。包括:正奇数集合,质数集合,有理数集合Q。
  • 不可数集合:与开区间(0, 1)等势的集合。集合基数为阿列夫。

1.2. 特殊集合

自然数集N,有理数集Q,实数集R,空集∅,全集E,A的幂集P(A) = {x | x ⊆ A}

1.3. 集合运算

  • 异或(对称差):去掉两个集合交集的元素,再并起来

2. 命题逻辑

2.1. 联结词

在这里插入图片描述

  1. 蕴涵联结词:P → Q

    • 如果P,则Q
    • 因为P,所以Q
    • 只要P,就Q
    • P仅当Q
    • 只有Q,才P
    • 除非Q,才P
    • 除非Q,否则¬P
  2. 优先级:否定、合取∧、析取∨、蕴涵、等价

2.2. 命题公式

分类:重言式(永真)、矛盾式(永假)、可满足式(有真)

2.3. 等价关系

  • 等值式:若A ↔ B是重言式,则记为等值式A ⇔ B,也即A与B等价。
  • 吸收律:G ∧ (G ∨ H) = G;G ∨ (G ∧ H) = G
  • 蕴涵式:G → H = ¬G ∨ H
  • 等价式:G ↔ H = (G → H) ∧ (H → G)

2.4. 范式

  • 文字:命题变元或命题变元的否定
  • 子句:文字析取构成
  • 短语:文字合取构成
  • 析取范式:由短语析取构成
  • 合取范式:由子句合取构成
  • 主析取范式:极小项,文字默认为真,真值表找1
  • 主合取范式:极大项,文字默认为假,真值表找0

2.5. 推理

基本推理形式

  • 推理有效:前提都为真,则结论为真。
  • 判定定理:A₁,A₂,…,An → B为重言式,当且仅当A₁,A₂,…,An ⇒ B有效。
  • 证明有效:
    1. 真值表法
    2. 等值演算法
    3. 主析取范式法(包含所有极小项则为重言式)

自然演绎法

  • 概念:给若干前提,推出一个结论

  • 推理定律:

    1. 附加律:A ⇒ A ∨ B或B ⇒ A ∨ B
    2. 简化律:A ∧ B ⇒ A或A ∧ B ⇒ B
    3. 假言推理:A → B,A ⇒ B
    4. 拒取式:A → B,¬B ⇒ ¬A
    5. 析取三段论:A ∨ B,¬B ⇒ A
    6. 假言三段论:A → B,B → C ⇒ A → C
    7. 构造性二难:A → B,C → D,A ∨ C ⇒ B ∨ D
    8. 破坏性二难:A → B,C → D,¬B ∨ ¬D ⇒ ¬A ∨ ¬C
    9. 合取引入:A,B ⇒ A ∧ B
  • 推理规则(自然推理系统):

    1. 规则P(前提引入规则):推导过程中,可随时引入前提集合中任一个集合。
    2. 规则T(结论引入规则):推导过程中,可随时引入由一个或多个前提推导出来的中间结果。
    3. 规则CP(置换规则):如果能由前提集合Γ与公式P推出结论S,则能由Γ推出P → S。
    4. 上面八条推理定律形成的规则
  • 证明推理:

    1. 直接证明法
    2. 附加前提证明法:用规则CP
    3. 归谬证明法(反证法):将结论否定式作为前提,用直接证明法推出矛盾式。原理如下:
      ① 若证A₁,A₂,…,An ⇒ B
      ② 即证A₁,A₂,…,An → B为重言式
      ③ 又由蕴涵式:¬(A₁ ∧ A₂ ∧ … ∧ An) ∨ B为重言式
      ④ 由反证法:A₁ ∧ A₂ ∧ … ∧ An ∧ ¬B为矛盾式。

3. 谓词逻辑

3.1. 概念

  • 个体、谓词、量词

  • ∀x(P(x) → Q(x)):在个体域D中的任意x,如果其有性质P,则其就有性质Q。

    1. x是个体变元
    2. ∀x是全称量词(全称用→,存在用∧)
    3. P、Q是谓词,也被称为原子公式
  • 公式:全称合式公式,原子公式是合式公式,¬P,P∨Q,P∧Q,P→Q,P↔Q都为合式公式,带量词的合式公式也是合式公式。

  • 约束变元:个体变元x在使用变元x量词的辖域内,则称x为约束变元。

  • 自由变元:不在辖域内则成为自由变元。

  • 闭式:一个公式内无自由变元,则称该公式为闭式。

3.2. 谓词公式

分类:永真式(逻辑有效式)、矛盾式(永假式)、可满足式

3.3. 公式等价关系

  • 等价:若公式P ↔ Q是永真式,则P ⇔ Q是等值式,也即公式P与公式Q等价。
  • 共有:命题公式的等价关系在谓词公式中依然成立。
  • 特有:P、Q含有变元x,S不含变元x
    1. 改名规则:∀xP(x) = ∀yP(y);存在量词同理
    2. 量词转换律:¬∀xP(x) = ∃x¬P(x);¬∃xP(x) = ∀x¬P(x)
    3. 量词辖域扩展/收缩律:
      • ∀x(P(x) ∧ S) = ∀xP(x) ∧ S;析取同理,存在量词同理。
      • ∀x(P(x) → S) = ∃xP(x) → S;存在量词同理。
      • ∀x(S → P(x)) = S → ∀xP(x);存在量词同理。
    4. 量词分配律:
      • ∀x(P(x) ∧ Q(x)) = ∀xP(x) ∧ ∀xQ(x)
      • ∃x(P(x) ∨ Q(x)) = ∃xP(x) ∨ ∃xQ(x)
    5. 无法用量词分配的情况:
      • ∀xP(x) ∨ ∀xQ(x) = ∀x(∀y)(P(x) ∨ Q(y))
      • ∃xP(x) ∧ ∃xQ(x) = ∃x∃y(P(x) ∧ Q(y))

3.4. 范式

  • 前束范式:将¬内移到原子公式前,量词在公式最前端。利用谓词公式等价关系将一个公式转化成前束范式。

3.5. 推理

推理形式

  • 判定定理:类比于命题推理,A₁,A₂,…,An → B为永真式,当且仅当A₁,A₂,…,An ⇒ B有效。

推理定律

  1. 命题的推理定律仍适用于谓词推理
  2. 每个谓词逻辑的基本等值式,都可以推出两条推理定律,如由¬∀xP(x) = ∃x¬P(x):
    ¬∀xP(x) ⇒ ¬P(x);¬P(x) = ¬∀xP(x)
  3. 两条特殊的定律:
    • ∀xP(x) ∨ ∀xQ(x) ⇒ ∀x(P(x) ∨ Q(x))
    • ∃x(P(x) ∧ Q(x)) ⇒ ∃xP(x) ∧ ∃xQ(x) 合取的存在推出存在的合取

推理规则(自然推理系统)

  1. 命题中的所有推理规则
  2. UI(全称消去规则,用于消去全称量词):∀xP(x) ⇒ P©,c为任意个体常量;或∀xP(x) ⇒ P(y),不产生歧义即可。
  3. EI(存在消去规则):
    • ∃xP(x) ⇒ P©,c为使P©为真的特定个体常量
    • ∃xP(x, y) ⇒ P(f(y), y)
  4. UG(全称引入规则,用于引入全称量词):P(y) ⇒ ∀xP(x),不产生歧义即可
  5. EG(存在引入规则):P© ⇒ ∃xP(x),c为特定个体常量;或P(x) ⇒ ∃yP(y)
  • 推理过程:消去量词;命题推理;如果结论中有量词,则最后引入量词。
    如果消去量词同时用到了UI和EI,先用EI,再用UI(因为EI中的个体常量必须满足P© = 1,若先用UI,得到的个体常量不一定满足该条件)。
    若一个变量用EI规则消去量词,则其引入量词时只能用EG规则;而采用UI规则消去的,引入量词时UG和EG都可用。这是由规则的性质决定的。

4. 二元关系

4.1. 概念

  • 有序对:<x, y>称为有序对,或序偶。

  • 笛卡尔积:若有集合A,B,则集合A×B = {<x, y>|(x∈A)∧(y∈B)}是集合A与B的笛卡尔积。

  • 二元关系:要么是空集,要么是元素为有序对的集合,记为R。若<x, y>∈R,则记作xRy。A与B间关系的种类为 2 ∣ A ∣ ⋅ ∣ B ∣ 2^{|A|\cdot|B|} 2AB,A上的关系的种类为 2 ∣ A ∣ ² 2^{|A|²} 2A²
    R的定义域domR,值域ranR,域fldR = domR ∪ ranR;A称为前域,B为后域。

  • 几个重要关系:

    1. R = ∅,则R为空关系
    2. R = A×B,则R为A到B的全关系,记为 E A E_{A} EA
    3. R = I A I_{A} IA = {<x, x>|x∈A},则R为A上的恒等关系
  • 关系表示:枚举、图形、关系矩阵(是布尔矩阵)

4.2. 关系运算

  • 布尔矩阵运算:交∧、并∨、积⊙(矩阵乘法)

  • 关系运算:

    1. 并∪、交∩、差-、补。
    2. 复合R ◦ S:<x, y> ◦ <y, z> = <x, z>,是从A到C的关系;R和S关系矩阵作布尔积运算,得到结果即为R ◦ S的关系矩阵。
    3. R − 1 R^{-1} R1:<x, y>变为<y, x>;R的关系矩阵转置即为R的逆。
    4. 限制 R ↑ \uparrow A = {<x, y> | x ∈ A ∧ xRy}
    5. 像 R[A] = ran(R | A)
  • 运算性质:

    1. 复合运算结合律与同一律( I A I_{A} IA ◦ R = R ◦ I A I_{A} IA = R)
    2. 复合分配律:
      • R ◦ (S ∪ T) = R ◦ S ∪ R ◦ T,左复合同理
      • R ◦ (S ∩ T) ⊆ R ◦ S ∩ R ◦ T,左复合同理
    3. 逆运算:
      • ( R ◦ S ) − 1 (R ◦ S)^{-1} (RS)1 = S − 1 S^{-1} S1 R − 1 R^{-1} R1
      • ( R ∪ S ) − 1 (R ∪ S)^{-1} (RS)1 = R − 1 R^{-1} R1 S − 1 S^{-1} S1,交和差同理
      • domR = r a n R − 1 ranR^{-1} ranR1,反之同理
    4. 幂运算:
      • R⁰ = I A I_{A} IA
      • R m + n R^{m+n} Rm+n = R m R^{m} Rm R n R^{n} Rn
      • ( R m ) n (R^{m})^{n} (Rm)n = R m n R^{mn} Rmn
      • 收敛性
        在这里插入图片描述

4.3. 关系性质

  • 五个性质
    在这里插入图片描述

  • 性质的保守性

    1. R,S自反, R − 1 R^{-1} R1、R ∩ S、R ∪ S、R ◦ S也自反
    2. R,S反自反, R − 1 R^{-1} R1、R ∩ S、R ∪ S、R - S也反自反
    3. R,S对称, R − 1 R^{-1} R1、R ∩ S、R ∪ S、R - S也对称
    4. R,S反对称, R − 1 R^{-1} R1、R ∩ S、R - S也反对称
    5. R,S传递, R − 1 R^{-1} R1、R ∩ S也传递
  • 闭包

    1. 定义:为使关系R满足所需要的性质,向R中尽可能少的添加元素,得到关系R’,使R’满足该性质,R’即为闭包。自反闭包记为r®,对称闭包记为s®,传递闭包记为t®
    2. 用关系运算求闭包:
      • r® = R ∪ I A I_{A} IA
      • s® = R ∪ R − 1 R^{-1} R1
      • t®利用上述收敛性公式求

4.4. 特殊关系

等价关系

  • 等价关系:A上自反,对称,传递的关系。

  • 等价类:设R为A上的一个等价关系,x∈R,则满足{y | y ∈ A ∧ xRy}的集合称为x的等价类,记为 [ x ] R [x]_{R} [x]R,可简记为[x]。即x的等价类就是所有满足xRy的,y的集合。

  • 等价类的性质:

    1. [x]非空
    2. 若xRy,则[x] = [y];否则[x] ∩ [y] = ∅
    3. ∪{[x] | x ∈ A} = A
  • 商集:{ [ x ] R [x]_{R} [x]R | x ∈ A},称为A关于R的商集,记作A / R。即A所有等价类的集合。

  • 集合的划分:将集合的元素划分,商集就是对A的一个划分,也称由R导出的等价划分。
    一个集合有多种划分,不同等价关系导出不同的划分;且可由划分确定一个等价关系,假设有划分{S₁, S₂, …, S n S_{n} Sn},则对应的等价关系为{(S₁ × S₁) ∪ (S₂ × S)₂ ∪ … ∪ ( S n × S n S_{n} × S_{n} Sn×Sn)}。

偏序关系

  • 偏序关系:A上自反,反对称,传递的关系R,记为≼,并将<a, b> ∈ ≼记为a ≼ b,<A, ≼>称为偏序集。该关系一般用于排序,因此是反对称的,典型的关系就是实数集上的小于等于关系。

  • 可比:x ≼ y或y ≼ x则称x与y可比。

  • 覆盖:当x ≼ y,且不存在z,使得x ≼ z ≼ y,则称y覆盖x。

  • 哈斯图:本质就是采用一些规则化简关系图

    1. 取消每个点自环(因为自反性)
    2. 取消由传递性产生的边
    3. 重新排列每条边,使得箭头方向均朝上,然后去掉箭头(因为反对称性)
  • 特殊元素:设<A, ≼>是偏序集,B是A的一个子集

    1. 最大元与最小元:∃b ∈ B,对∀x ∈ B,都有x ≼ b(b ≼ x),则称b为最大元(最小元)。
    2. 极大元与极小元:∃b ∈ B,对∀x ∈ B,不存在b ≺ x(x ≺ b),则称b为极大元(极小元)。
    3. 上界与下界:∃a ∈ A,对∀x ∈ B,都有x ≼ a(a ≼ x),则称a为B的上界(下界)。a可以有多个。
    4. 上确界和下确界:上界(下界)的最小元(最大元),它们是唯一的。
  • 拟序关系:A上反自反,反对称,传递的关系,用≺表示

  • 全序关系:若偏序集<A, ≼>任意的x和y都可比,则称“≼”为全序关系,<A, ≼>为全序集,或线序集(因为哈斯图的元素排成一条线)

4.5. 函数

  • 定义:设f是集合A到B的关系,且对∀x ∈ A,都存在惟一的y ∈ B,使得<x, y> ∈ f,则称f是A到B的函数,记为 f: A → B。

  • 函数的两个前提:domf中任意元素都有像;domf中同一元素有且仅有一个像。

  • 关系与函数的区别:

    区别种数基数第一元素
    关系 2 ∥ A ∥ × ∥ B ∥ 2^{\|A\|×\|B\|} 2A×B0 ~ |A|×|B|可重复
    函数 ∥ B ∥ ∥ A ∥ \|B\|^{\|A\|} BA|A|不可重复
  • 特殊函数:

    1. 特征函数:设A为集合,对∀A’ ⊆ A,A’的特征函数 χ A ′ : A → { 0 , 1 } \chi_{A'}:A\to\{0,1\} χA:A{0,1}定义为
      χ A ′ ( a ) = { 1 , a ∈ A ′ 0 , a ∈ A − A ′ \chi_{A'}(a)= \begin{cases} 1,\qquad a\in A' \\ 0,\qquad a\in A-A' \end{cases} χA(a)={1,aA0,aAA
  • 函数类型:

    1. 单射:x与y一一对应;单射 ⇔ 对∀x₁,x₂ ∈ A,若x₁ ≠ x₂,则f(x₁) ≠ f(x₂)。
    2. 满射:ranf = B;满射 ⇔ 对∀y ∈ B,一定∃x ∈ A,使得f(x) = y。
    3. 双射:f单射且满射。
  • 函数运算

    1. 复合:设有函数 f: A → B,g: B → C,则 f ◦ g: A → C。
      • f ◦ g(x) 也记为g(f(x))
      • dom(f ◦ g) = domf;ran(f ◦ g) = ranf
      • 复合运算不满足交换律,但满足结合律
      • 复合的保守性:相同类型的函数复合后还是同一类型
    2. 逆: f − 1 f^{-1} f1: B → A
      • f − 1 f^{-1} f1存在 ⇔ f是双射函数。(其实就是高数上的严格单调函数必有反函数)
      • f ◦ f − 1 = I A f ◦ f^{-1} = I_{A} ff1=IA f − 1 ◦ f = I B f^{-1} ◦ f = I_{B} f1f=IB
    3. B上A:从A到B全体函数的集合,记为 B A B^{A} BA

5. 图(G = <V, E>)

5.1. 概念

  • 分类:有向图和无向图,多重图和线图(简单图是无环的线图),赋权图和无权图。
  • 各种图
    1. 零图:孤立结点组成的图。
    2. 平凡图:只有一个结点的零图。
    3. 子图:G₁ = <V₁, E₁>,V₁ ⊆ V,E₁ ⊆ E,则G₁为G的子图。
      • 生成子图:V₁ = V,E₁ ⊆ E
      • 导出子图:V₁ ⊆ V,E₁是以V₁中两个点为端点的边集
    4. 完全图:任意两点都有边相连,记为 K n K_{n} Kn(有向情况下为两条相反的边)。
    5. 补图:设简单图G = <V, E>,完全图G’ = <V, E₁>,则补图G₁ = <V, E₁ - E>。即从完全图的边集中删去简单图的边集。
    6. 同构图:若存在双射函数 f: V → V’,且对应边集相同,则称为同构图,记为G ≌ G’。
    7. 正则图:对∀v ∈ V,都有d(v) = k,则称G为 k-正则图。
    8. 竞赛图:为无向完全图的每条边分配方向所形成的图。
    9. 轮图:在n-1阶的圈内放置一个顶点,与各顶点相连,组成的就是n阶轮图,记为 W n W_{n} Wn
  • 度:顶点的度记为d(v),出度为 d + d^{+} d+(v),入度为 d − d^{-} d(v)。
    1. 最大度:Δ(G) = max{d(V) | v ∈ V}
    2. 最小度:δ(G) = min{d(V) | v ∈ V}
    3. 最大出度:Δ + ^{+} +(G);最大入度,最小出/入度同理。
    4. 度数序列:设V = {v₁, v₂, …, v n v_{n} vn},则(d(v₁), d(v₂), …, d( v n v_{n} vn))为度数序列。
    5. 握手定理:无向图的总度数为 2|E|;有向图总度数为 2|E|,且总入度和总出度相同,为|E|。

5.2. 性质

  • 通路与回路:长度为所含边的数量

    1. 简单通路/回路:通路中的所有边互不相同;否则为复杂通路/回路。

    2. 初级通路/回路:通路中的所有边互不相同,结点也互不相同(回路不考虑两个端点)。

    3. 判断两顶点间是否有通路:设G的邻接矩阵为A,则 A n A^{n} An 的元素 a i j a_{ij} aij 表示 v i v_{i} vi v j v_{j} vj 长度为 n 的通路数量。主对角线上的即为回路。

    4. 可达性:无向图的可达关系是等价关系,有向图的不具备对称性,所以不是等价关系

      根据上述定理,若是想知道 v i v_{i} vi v j v_{j} vj 的可达性,则可通过可达矩阵 P = A ∨ A² ∨ … ∨ A n A^{n} An(其中A的幂运算是布尔积运算)判断,若 p i j p_{ij} pij = 1,则从 v i v_{i} vi v j v_{j} vj 是可达的。

  • 无向图的连通性:

    1. 连通分支:由可达关系的每个等价类导出的子图称为G的一个连通分支,连通分支数记为p(G)。换言之,一个图可能由多个彼此不连通的连通图组成,每个这样的连通图就是一个连通分支。
    2. 点割集与割点:从无向图 G 中尽可能少的删去点,使新图 G’ 的 p(G’) > p(G),这样的点的集合就称为点割集;如果该集合中只有一个点,则这个点称为割点。
    3. 边割集与割边(桥):类似于点割集和割点。
    4. 点连通度:κ(G) = min{|V| | V为点割集或 G - V 为平凡图};若κ(G) ≥ k,则称 G 为 k-连通图。
    5. 边连通度:λ(G) = min{|E| | E为边割集};若λ(G) ≥ k,则称G为k边-连通图。
  • 有向图的连通性:

    1. 弱连通图(连通图):将有向边转化为无向边,若图为连通图,则称有向图G为弱连通图或连通图。
    2. 单向连通图:若G中任意一对结点之间,至少有一个结点到另一个结点是可达的,则称G为单向连接图。
    3. 强连通图:G中任意一对结点相互可达。
    4. 连通图判定:
      • 强连通图 ⇔ G中存在一条经过所有结点的回路
      • 单向连通图 ⇔ G中存在一条经过所有结点的通路
      • 强连通图 ⇒ 单向连通图 ⇒ 弱连通图
    5. 邻接矩阵判定:
      • 强连通图:邻接矩阵P的所有元素均为1
      • 单向连通图:P ∨ P T P^{T} PT 除主对角元素外都为1
      • 弱连通图:以A ∨ A T A^{T} AT为邻接矩阵求得的可达矩阵P’的元素全为1
    6. 连通分支:设G’为G的子图,当G’是最大的弱/单向/强连通子图,则称G’是G的弱/单向/强连通分支。

5.3. 欧拉图

  • 定义:图G中不含孤立节点,若存在一条通路/回路,经过G中每条边一次且仅一次,则称该通路/回路为欧拉通路/回路,具有欧拉通路的图被称为半欧拉图,具有欧拉回路的图被称为欧拉图。

  • 欧拉图判定:

    1. 无向半欧拉图:无向图G存在欧拉通路 ⇔ G是连通的且恰有2个奇度数结点。
    2. 无向欧拉图:G存在欧拉回路 ⇔ G是连通的且结点均为偶度数结点。
    3. 有向半欧拉图:有向图G存在欧拉通路 ⇔ G是连通的,且恰有两个奇度数结点,一个出度比入度大1(起点),另一个出度比入度小1(终点),其余结点出度入度相同。
    4. 有向欧拉图:G存在欧拉回路 ⇔ G是连通的,且所有结点出度和入度相同。
  • 求无向图欧拉回路——Fleury算法:依次选边,每选一条边就从图中删去得到图G’,选取条件:① 与上一条边相连;② 除非别无选择,不然不能选G’的割边。

5.4. 哈密顿图

  • 定义:图G存在一条通路/回路,经过G中每个结点一次且仅一次,则称该通路/回路为哈密顿通路/回路,具有哈密顿通路的图被称为半哈密顿图,具有哈密顿回路的图被称为哈密顿图。

  • 哈密顿图(无向)判定必要条件:

    1. 哈密顿图必要条件:设无向图G = <V, E>是哈密顿图,则对任意V₁ ⊆ V且V₁非空,均有p(G - V₁) ≤ |V₁|。
    2. 半哈密顿图必要条件:p(G - V₁) ≤ |V₁| + 1。
  • 哈密顿图(无向)判定充分条件:

    1. 半哈密顿图:设G为n阶简单无向图,若对G中任意两个不相邻的点u,v,均有d(U) + d(v) ≥ n - 1,则G中存在哈密顿通路。
    2. 哈密顿图:若d(U) + d(v) ≥ n,则存在哈密顿回路。

5.5. 二分图(二部图/偶图)

  • 定义:设无向图G = <V, E>,若V能划分为两个子集V₁,V₂,且E中任意一条边,一端属于V₁,另一端属于V₂,则称G为二分图。若V₁中任意一结点与V₂中所有结点相连,则称为完全二部图,记为 K ∣ V ₁ ∣ , ∣ V ₂ ∣ K_{|V₁|, |V₂|} KV,V

  • 二分图判定:G是二分图 ⇔ G中所有回路长度都为偶数

5.6. 平面图

  • 定义:能够把一个无向图G的所有结点和边画在平面上,且边互不交叉的图。

  • 面与次数:

    1. 面:由边围成的,内部不包含边与结点的区域,记为 R i R_{i} Ri
    2. 边界:构成面的诸边
    3. 次数:边界的长度,记为 d e g ( R i ) deg(R_{i}) deg(Ri);次数和 = 边总数的二倍
    4. 有限面与无限面:面积有限的为有限面,无限面同理
  • 极大平面图:设G是n阶(n ≥ 3)m边简单连通平面图,若在任意两不相邻的结点间加入边就会破坏G的平面性,则称G是极大平面图。

  • 极小非平面图:删除任一条边都会变成平面图的图。与K₅和K₃,₃同胚的都是极小非平面图。

  • 欧拉公式:设G是n个顶点,m条边,r个面的连通平面图,则有n - m + r = 2

  • 同胚:如果两个图同构,或在反复插入或消去2度结点后同构,则称这两图同胚。
    在这里插入图片描述

  • 边的收缩
    在这里插入图片描述

  • 库拉托夫斯基定理:

    1. G是平面图 ⇔ G的任意子图都不与K₅和K₃,₃同胚。
    2. G是平面图 ⇔ G的任意子图都不能收缩为K₅和K₃,₃。

5.7. 对偶图

  • 定义:设有平面图G,在G的每个面中指定一个新的结点,对两个面的公共边,指定一条新边与其相交,这些新点和新边就构成了对偶图。

  • 设(n, m)且有r面的连通平面图G的对偶图为G*,G*的顶点n*,边m*,面r*分别为:

    1. n* = r
    2. m* = m
    3. r* = n(对非连通图的对偶图,r* = n - k + 1)

5.8. 最短路径算法

  • Dijkstra:用于计算一个点到其他点的最短路径,过程如下:
    1. 初始化起始点到各点的距离,不可直接到达的点设为∞,初始点自身为0,其余点都设为未访问。
    2. 选取未访问点中最近的点,将其设为已访问,再根据该点去更新到其他点的最短距离。
    3. 重复第二步,直到访问所有点。
  • 旅行商问题(NP难问题):找到最短的哈密顿回路,目前只能通过枚举哈密顿回路比较大小来求解。

6. 树

6.1. 最小生成树

  • Kruskal算法:将边排序,找能连接两个连通分支的最小边
  • Prim算法:从点到点,找到最短边。

6.2. 树的遍历

  • 前序遍历:对应前缀表达式(波兰符号表达式),从右到左扫描
  • 中序遍历:还原算式需要加括号,否则有二义性
  • 后序遍历:对应后缀表达式(逆波兰符号表达式),从左到右扫描

6.3. 哈夫曼编码

  • 前缀码:不存在能作为其他编码前缀的编码,这样一组编码就是前缀码。

  • 最优树:权×路径长度的和最小的树

  • Huffman算法:构造哈夫曼树

    1. 令S = {w₁, w₂, …, w n w_{n} wn}
    2. 找到S中权重最小的两个结点,将它们作为左右子节点组成一棵树,根节点的权重为它们的和
    3. 将根节点放回到S中,重复2,3操作,直到S为空

7. 代数系统

7.1. 二元运算及其性质

  • 二元运算定义:设有集合S,函数 f: S × S → S称为S上的二元运算。二元运算应满足函数的前提,dom f = S × S,且像无二义性。

  • 一元运算定义:设有集合S,函数 f: S → S称为S上的一元运算。

  • 运算性质:

    1. 交换律:设 ◦ 为S上的二元运算,若对任意x,y ∈ S都有 x ◦ y = y ◦ x,则称运算◦在S上满足交换律。
    2. 结合律:同上,(x ◦ y) ◦ z = x ◦ (y ◦ z)
    3. 幂等律:x ◦ x = x
    4. 分配律:x * (y ◦ z) = (x * y) ◦ (x * z),则称 * 对 ◦ 是可分配的
    5. 吸收率:x * (x ◦ y) = x,x ◦ (x * y) = x
    6. 单位元:左右单位元相同时则统一称为单位元,记为e,且惟一。
      e l ◦ x = x e_{l} ◦ x = x elx=x(左单位元)
      x ◦ e r = x x ◦ e_{r} = x xer=x(右单位元)
    7. 零元:左右零元相同时则统一称为零元,记为θ,且惟一。
      θ l ◦ x = θ l θ_{l} ◦ x = θ_{l} θlx=θl(左零元)
      x ◦ θ r = θ r x ◦ θ_{r} = θ_{r} xθr=θr(右零元)
    8. 逆元:左右相同统称逆元,惟一
      y l ◦ x = e y_{l} ◦ x = e ylx=e(左逆元)
      x ◦ y r = e x ◦ y_{r} = e xyr=e(右逆元)
    9. 消去律:
      x ◦ y = x ◦ z 且 x ≠ θ,则 y = z(左消去)
      y ◦ x = z ◦ x 且 x ≠ θ,则 y = z(右消去)

7.2. 代数系统

  • 定义:非空集合S和S上的k个一元或二元关系f₁, f₂, …, f k f_{k} fk组成的系统称为代数系统,简称代数,记作<S, f₁, f₂, …, f k f_{k} fk>。

  • 同类型的代数系统:两个代数系统中运算个数相同(一元二元个数都相同),代数常数个数也相同(如零元,单位元等)

  • 子代数系统:设V = <S, f₁, f₂, …, f k f_{k} fk>是代数系统,B ⊆ S,若B对V中运算都是封闭的,且与S都含有相同的代数常数,则称<B, f₁, f₂, …, f k f_{k} fk>是V的子代数系统,简称子代数,可以将子代数直接记为B。

  • 积代数:设V₁ = <A, ◦>和V₂ = <B, *>是同类型的代数系统,◦与*为二元运算,则在集合A × B上定义二元运算 · ,∀<a₁, b₁>,<a₂, b₂> ∈ A × B,有:
    <a₁, b₁> · <a₂, b₂> = <a₁ ◦ a₂, b₁ * b₂>
    称V = <A × B, ·>为V₁与V₂的积代数,记作V₁ × V₂;V₁,V₂也被称为V的因子代数。

7.3. 同态与同构

  • 同态:设V₁ = <A, ◦>和V₂ = <B, *>是同类型的代数系统,若有f: A → B,且∀x,y ∈ A,有:
    f(x ◦ y) = f(x) * f(y)
    则称f是V₁到V₂的同态映射,简称同态。

  • 同构:同态根据f的类型分为单同态,满同态和同构。若f: V → V同态,则分为单自同态,满自同态和自同构。

8. 群

8.1. 性质与定义

  • 半群:设V = <S, ◦>是代数系统,◦为二元运算,如果◦可结合,则称V为半群。

  • 独异点:设V为半群,若e ∈ S是关于◦的单位元,则称V为独异点。

  • 群:设V是独异点,若对∀a ∈ S都有 a − 1 a^{-1} a1 ∈ S,则称V是群,通常记作G。若

  • 群的实例:<Z, +>,<R, +>,<Q, +>,复数加群<C, +>,模n整数加群< Z n Z_{n} Zn, ⊕>( Z n Z_{n} Zn = {0, 1, …, n - 1})

  • 元素幂运算:设G是群,a ∈ G,则a的n次幂:

    1. n = 0,e
    2. n > 0, a n − 1 a^{n - 1} an1 a
    3. n < 0, ( a − 1 ) − n (a^{-1})^{-n} (a1)n
  • 群的幂运算:

    1. ( a − 1 ) − 1 (a^{-1})^{-1} (a1)1 = a
    2. ( a b ) − 1 (ab)^{-1} (ab)1 = b − 1 a − 1 b^{-1} a^{-1} b1a1
    3. G为交换群时, ( a b ) n (ab)^{n} (ab)n = a n b n a^{n} b^{n} anbn
    4. a m a n = a m + n ; ( a m ) n = a m n a^{m}a^{n}=a^{m+n};(a^{m})^{n}=a^{mn} aman=am+n;(am)n=amn
  • 群的性质:

    1. 群满足消去律
    2. 设a ∈ G,且|a| = r,则有 a k a^{k} ak = e当且仅当 r|k(r整除k);亦有| a − 1 a^{-1} a1| = |a|

9. 组合计数

9.1. 基本计数原则

  • 加法原则:设事件A有m种产生方式,事件B有n种产生方式,若A和B的产生方式没有重叠,则A或B的产生方式有 m + n 种。
  • 乘法原则:设事件A有m种产生方式,事件B有n种产生方式,若A与B的产生方式相互独立,则A与B的产生方式有 mn 种。
  • 鸽巢原理:将k + 1个物体放入k个盒子中,则至少有一个盒子有2个或以上的物体。
  • 广义鸽巢原理:将N个物体放入k个盒子中,则至少有一个盒子有⌈N / k⌉(向上取整)个物体。
  • 重要思想:一一对应,数学归纳法
    例:从1到24中选取5个互不相邻的数字,一共有多少种选法?
    证:设从中选的五个数为{ i 1 , i 2 , . . . , i 5 i_{1}, i_{2}, ..., i_{5} i1,i2,...,i5},其中 i 1 < i 2 < . . . < i 5 i_{1} < i_{2} < ... < i_{5} i1<i2<...<i5,且 i j ≠ i j + 1 i_{j} ≠ i_{j + 1} ij=ij+1,j = 1, 2, 3, 4。令 k j = i j − j + 1 , j = 1 , 2 , 3 , 4 , 5 k_{j} = i_{j} - j + 1, j = 1, 2, 3, 4, 5 kj=ijj+1,j=1,2,3,4,5,显然 i j 与 k j i_{j}与k_{j} ijkj是一一对应的, k j k_{j} kj恰好为{1, 2, …, 20}中取5个数的组合,故该题答案为C(20, 5)

9.2. 排列组合

  • n元集排列:P(n, r) = n ! ( n − r ) ! \frac{n!}{(n - r)!} (nr)!n!
  • n元集组合:C(n, r) = n ! ( n − r ) ! r ! \frac{n!}{(n - r)! r!} (nr)!r!n!
    1. C(n, r) = n r \frac{n}{r} rn C(n - 1, r - 1)
    2. C(n, r) = C(n - 1, r - 1) + C(n - 1, r)(杨辉三角/Pascal公式)
  • 多重集全排列(r = n):多重集即为元素重复出现的集合
    在这里插入图片描述
  • 多重集组合:
    在这里插入图片描述

9.3. 二项式定理与组合恒等式

  • 二项式定理
    在这里插入图片描述
  • 多项式定理
    在这里插入图片描述
  • 组合恒等式
    1. C ( n , k ) = C ( n , n − k ) C(n, k) = C(n, n - k) C(n,k)=C(n,nk)
    2. C ( n , k ) = n k C ( n − 1 , k − 1 ) C(n, k) = \frac{n}{k} C(n - 1, k - 1) C(n,k)=knC(n1,k1)
    3. C ( n , k ) = C ( n − 1 , k − 1 ) + C ( n − 1 , k ) C(n, k) = C(n - 1, k - 1) + C(n - 1, k) C(n,k)=C(n1,k1)+C(n1,k)
    4. ∑ k = 0 n C ( n , k ) = 2 n \sum_{k = 0}^{n} C(n, k) = 2^{n} k=0nC(n,k)=2n
    5. ∑ k = 0 n ( − 1 ) k C ( n , k ) = 0 \sum_{k = 0}^{n} (-1)^{k} C(n, k) = 0 k=0n(1)kC(n,k)=0
    6. ∑ l = 0 n C ( l , k ) = C ( n + 1 , k + 1 ) \sum_{l = 0}^{n} C(l, k) = C(n + 1, k + 1) l=0nC(l,k)=C(n+1,k+1)
      • 证:等式右边为从n+1个元素中取k+1个元素的子集;可以将该k+1元子集分为如下n+1类:
        第1类:子集中含第一个元素,剩下k个在之后的元素中取
        第2类:子集中含第二个元素,不含之前的元素,剩下的k个在之后元素中取

        第n+1类:子集中含第n + 1个元素,不含之前的元素,剩下的k个在空集中取
        以上n+1类的和即为等式的左边。
    7. ∑ k = 0 r C ( m , k ) C ( n , r − k ) = C ( m + n , r ) r ≤ m i n { n , m } \sum_{k = 0}^{r} C(m, k) C(n, r - k) = C(m + n, r)\qquad r \le min\{n, m\} k=0rC(m,k)C(n,rk)=C(m+n,r)rmin{n,m}
    8. ∑ k = 0 n C ( m , k ) C ( n , k ) = C ( m + n , m ) \sum_{k = 0}^{n} C(m, k) C(n, k) = C(m + n, m) k=0nC(m,k)C(n,k)=C(m+n,m)

9.4. 组合计数模型

  • 集合有序选取:集合排列
  • 集合无序选取:集合组合
  • 多重集有序选取:多重集的排列
  • 多重集无序选取:多重集的组合
  • 不定方程: x 1 + x 2 + . . . + x k = r x_{1} + x_{2} + ... + x_{k} = r x1+x2+...+xk=r
    1. x i x_{i} xi为非负整数时,解的个数为C(r + k - 1, r)
    2. x i x_{i} xi为正整数时,解的个数为C(r - 1, k - 1)
  • 非降路径:从(a, b)出发到(m, n)的一条折线,由m - a + n - b次移动组成,每次只能向右或向上。
    在这里插入图片描述
    从(a, b)到(m, n),有C(m + n - a - b, m - a)条路径

9.5. 递推方程

  • 常系数线性递推方程(类似于高数中的常微分方程)
    在这里插入图片描述

    1. 齐次:由特征方程 x k + 1 + a 1 x k + . . . + a k = 0 x^{k+1}+a_{1}x^{k}+...+a_{k}=0 xk+1+a1xk+...+ak=0求出特征根 q 1 , q 2 , . . . , q k q_{1},q_{2},...,q_{k} q1,q2,...,qk
      • 特征根都为单根时:通解 H ( n ) = c 1 q 1 n + c 2 q 2 n + . . . + c k q k n H(n)=c_{1}q_{1}^{n}+c_{2}q_{2}^{n}+...+c_{k}q_{k}^{n} H(n)=c1q1n+c2q2n+...+ckqkn,将给定初值带入到通解中,求出 c 1 , c 2 , . . . , c k c_{1},c_{2},...,c_{k} c1,c2,...,ck
      • 特征根为重根时:若 q i q_{i} qi e i e_{i} ei重根,则有通解 H ( n ) = ∑ i = 0 k ( c i 1 + c i 2 n + . . . + c i e i n e i − 1 ) q i n H(n)=\sum_{i=0}^{k}(c_{i1}+c_{i2}n+...+c_{ie_{i}}n^{e_{i}-1})q_{i}^{n} H(n)=i=0k(ci1+ci2n+...+cieinei1)qin,同样带入初值求待定系数。
    2. 非齐次:先求出齐次情况下的通解 H ( n ) ‾ \overline{H(n)} H(n),再根据非齐次情况的求解方法求出特解H*(n),非齐次递推方程的通解 H ( n ) = H ( n ) ‾ + H ∗ ( n ) H(n)=\overline{H(n)}+H^{*}(n) H(n)=H(n)+H(n)
      • f(n)为n的t次多项式时: H ∗ ( n ) = P 1 n t + P 2 n t − 1 + . . . + P t + 1 H^{*}(n)=P_{1}n^{t}+P_{2}n^{t-1}+...+P_{t+1} H(n)=P1nt+P2nt1+...+Pt+1
      • f(n)为 A β n A\beta^{n} Aβn形式:若β不是特征根,则 H ∗ ( n ) = P β n H^{*}(n)=P\beta^{n} H(n)=Pβn;若β是e重特征根,则为 P n e β n Pn^{e}\beta^{n} Pneβn
      • 将特解带回到递推方程,求出各待定系数。
      • 最后将初值代入H(n)中,求得 H ( n ) ‾ \overline{H(n)} H(n)中各待定系数的值。
  • 其他形式递推方程:

    1. 换元法:通过换元转变回常系数线性递推方程。

      • 例:
        { W ( n ) = 2 W ( n / 2 ) + n − 1 , n = 2 k W ( 1 ) = 0 \begin{cases} W(n)=2W(n/2)+n-1,n=2^{k} \\ W(1)=0 \end{cases} {W(n)=2W(n/2)+n1,n=2kW(1)=0
        n = 2 k n=2^{k} n=2k代入,有 W ( 2 k ) = 2 W ( 2 k − 1 ) + 2 k − 1 W(2^{k})=2W(2^{k-1})+2^{k}-1 W(2k)=2W(2k1)+2k1,令 H ( k ) = W ( 2 k ) H(k)=W(2^{k}) H(k)=W(2k),则有 H ( k ) = 2 H ( k − 1 ) + 2 k − 1 H(k)=2H(k-1)+2^{k}-1 H(k)=2H(k1)+2k1,用公式法求解即可。
    2. 迭代归纳法:根据递推式不断将式子展开,展开到初值项为止,然后对式子进行化简,最后将结果代入到原递推方程验证。

      • 例:与上面同一例子
        W ( n ) = 2 W ( 2 k − 1 ) + 2 k − 1 = 2 [ 2 W ( 2 k − 2 ) + 2 k − 1 − 1 ] + 2 k − 1 = 2 2 W ( 2 k − 2 ) + 2 k − 2 + 2 k − 1 = 2 2 [ 2 W ( 2 k − 3 ) + 2 k − 2 − 1 ] + 2 k − 2 + 2 k − 1 = 2 3 W ( 2 k − 3 ) + 2 k − 2 2 + 2 k − 2 + 2 k − 1 = … = 2 k W ( 1 ) + k ⋅ 2 k − ( 2 k − 1 + 2 k − 2 + ⋯ + 2 + 1 ) = k ⋅ 2 k − 2 k + 1 = n log ⁡ n − n + 1 \begin{aligned} &W(n)=2W(2^{k-1})+2^{k}-1 \\ &=2[2W(2^{k-2})+2^{k-1}-1]+2^{k}-1 \\ &=2^{2}W(2^{k-2})+2^{k}-2+2^{k}-1 \\ &=2^{2}[2W(2^{k-3})+2^{k-2}-1]+2^{k}-2+2^{k}-1 \\ &=2^{3}W(2^{k-3})+2^{k}-2^{2}+2^{k}-2+2^{k}-1 \\ &=\dots \\ &=2^{k}W(1)+k \cdot 2^{k}-(2^{k-1}+2^{k-2}+\dots+2+1) \\ &=k \cdot 2^{k} - 2^{k} + 1 \\ &=n\log{n} - n + 1 \end{aligned} W(n)=2W(2k1)+2k1=2[2W(2k2)+2k11]+2k1=22W(2k2)+2k2+2k1=22[2W(2k3)+2k21]+2k2+2k1=23W(2k3)+2k22+2k2+2k1==2kW(1)+k2k(2k1+2k2++2+1)=k2k2k+1=nlognn+1
        迭代归纳法只适用于一阶递推公式,对于非一阶递推公式,可以先用差消法转换成一阶递推公式,如:
        { D n = ( n − 1 ) ( D n − 1 + D n − 2 ) D 1 = 0 , D 2 = 1 \begin{cases} D_{n}=(n-1)(D_{n-1}+D_{n-2}) \\ D_{1}=0,D_{2}=1 \end{cases} {Dn=(n1)(Dn1+Dn2)D1=0,D2=1
        该式为二阶递推式,通过差消法,有:
        D n − n D n − 1 = − [ D n − 1 − ( n − 1 ) D n − 2 ] = … = ( − 1 ) n − 2 [ D 2 − 2 D 1 ] = ( − 1 ) n − 2 \begin{aligned} &D_{n}-nD_{n-1}=-[D_{n-1}-(n-1)D_{n-2}]=\dots \\ &=(-1)^{n-2}[D_{2}-2D_{1}]=(-1)^{n-2} \\ \end{aligned} DnnDn1=[Dn1(n1)Dn2]==(1)n2[D22D1]=(1)n2
        从而得到一阶递推式: D n = n D n − 1 + ( − 1 ) n − 2 D_{n}=nD_{n-1}+(-1)^{n-2} Dn=nDn1+(1)n2

9.6. 生成函数

  • a n a_{n} an的生成函数: G ( x ) = ∑ n = 0 ∞ a n x n G(x) = \sum_{n=0}^{\infty} a_{n}x^{n} G(x)=n=0anxn
  • a n a_{n} an的指数生成函数: G e ( x ) = ∑ n = 0 ∞ a n x n n ! G_{e}(x) = \sum_{n=0}^{\infty} a_{n}\frac{x^{n}}{n!} Ge(x)=n=0ann!xn

10. 补充知识点

  1. 特征函数
  2. 轮图
  3. 证明关系反对称:∀<x, y>,若当<x, y> ∈ R ∧ <y, x> ∈ R时,都有x = y,则R反对称。
  4. 设a,b不全为0,则存在整数x和y使得gcd(a, b) = ax + by。用辗转相除法倒推来求:
    • 例:证294与65互素,并求出x,y使得294x + 65y = 1。
      证:$294 = 4 \times 65 + 34 \
      65 = 1 \times 34 + 31 \
      34 = 1 \times 31 + 3 \
      31 = 10 \times 3 + 1 \
      3 = 3 \times 1
      $
      故gcd(294, 65) = 1,互素。又有:
      1 = 31 − 10 × 3 = 31 − 10 × ( 34 − 31 ) = 11 × 31 − 10 × 34 = 11 × ( 65 − 34 ) − 10 × 34 = 11 × 65 − 21 × 34 = 11 × 65 − 21 × ( 294 − 4 × 65 ) = 95 × 65 − 21 × 294 \begin{aligned} &1 = 31 - 10 \times 3 \\ &= 31 - 10 \times (34 - 31) \\ &= 11 \times 31 - 10 \times 34 \\ &= 11 \times (65 - 34) - 10 \times 34 \\ &= 11 \times 65 - 21 \times 34 \\ &= 11 \times 65 - 21 \times (294 - 4 \times 65) \\ &= 95 \times 65 - 21 \times 294 \end{aligned} 1=3110×3=3110×(3431)=11×3110×34=11×(6534)10×34=11×6521×34=11×6521×(2944×65)=95×6521×294
  5. 基本回路与基本割集:生成树中的定义
    • 基本回路:设有无向连通图G,T是G的生成树,则T中的树枝加上一条弦构成的回路就叫基本回路。
    • 基本割集:T中一条树枝对应一个基本割集,其中包含了该树枝,以及其所在基本回路的所有弦。
举报

相关推荐

0 条评论