格论是研究具有特定偏序性质的集合的数学理论。它是布尔代数的结构底座,也是编译原理中数据流分析(Dataflow Analysis)的核心理论。
格建立在偏序集 (Poset) 之上。
- 偏序集 ⟨P,≤⟩:满足自反性、反对称性、传递性的集合。
- 上界与下界:对 A⊆P,若存在 u∈P 使 ∀a∈A,a≤u,则 u 为上界。
- 上确界 (LUB/sup):最小上界,记作 A 的上确界。
- 下确界 (GLB/inf):最大下界,记作 A 的下确界。
若偏序集 ⟨L,≤⟩ 中任意两个元素 {a,b} 都有最小上界和最大下界,则称 L 为格。
- a∨b (Join):a,b 的最小上界。
- a∧b (Meet):a,b 的最大下界。
格也可以看作代数系统 ⟨L,∨,∧⟩,满足以下公理:
- 交换律:a∨b=b∨a,a∧b=b∧a
- 结合律:(a∨b)∨c=a∨(b∨c)
- 吸收律:a∨(a∧b)=a,a∧(a∨b)=a
- 幂等律:a∨a=a,a∧a=a
满足分配律的格:
- a∨(b∧c)=(a∨b)∧(a∨c)
- a∧(b∨c)=(a∧b)∨(a∧c)
存在全集单位元 1 (最大元) 和零元 0 (最小元) 的格。
在有界格中,若对任意 a∈L,都存在 b∈L 使 a∨b=1 且 a∧b=0,则称 b 为 a 的补元。
- 格的保序性:a≤b⟺a∧b=a⟺a∨b=b。
- 分配格判定:一个格是分配格,当且仅当它不包含与 M3 (钻石格) 或 N5 (五角格) 同构的子格。
:::info 练习 1
设 D30 为 30 的所有正因数集合,关系为整除关系。判断 ⟨D30,∣⟩ 是否为格,并求 6∨10 和 6∧10。
:::
查看解析
- 是否为格:整除关系下,任何两个数 a,b 的最小上界是最小公倍数 lcm(a,b),最大下界是最大公约数 gcd(a,b)。因为 D30 对 lcm 和 gcd 运算封闭,故它是格。
- 运算结果:
- 6∨10=lcm(6,10)=30
- 6∧10=gcd(6,10)=2
:::info 练习 2证明格中的吸收律:a∨(a∧b)=a。
:::
查看解析
根据偏序定义:
- a∧b 是 a 和 b 的下确界,故 a∧b≤a。
- 显然 a≤a。
- 因此,a 是集合 {a,a∧b} 的一个上界。
- 设 u 是 {a,a∧b} 的任意上界,则 u≥a。
- 所以 a 是 {a,a∧b} 的最小上界,即 a∨(a∧b)=a。
本章节由 SolKnow 系统根据格论研究构建。