空间数据建模中偏序集与集合交闭包的研究
1. 表示与闭包
在处理具有集合包含关系的集合类时,为了更有效地操作集合,我们引入了一些重要的概念。这里我们仅考虑有限集合类,为了方便技术处理,我们通常会处理包含最大集(包含该类中所有其他集合)和最小集(被该类中所有其他集合包含)的集合类。如果一个有限集合类没有最大集或最小集,我们可以分别添加该类所有集合的并集或空集来扩展这个类。
-
集合交闭包的定义 :设 (S) 是具有集合包含关系的集合类,我们定义 (S^{\cap}) 为 (S) 关于集合交运算的闭包,规则如下:
- 如果 (s \in S),那么 (s \in S^{\cap});
- 对于任意 (s_1, s_2 \in S^{\cap}),(s_1 \cap s_2 \in S^{\cap})。
-
通用划分的定义 :设 (S) 是具有集合包含关系的集合类,(U_S \subseteq S)。如果对于任意 (r_1, r_2 \in U_S),有 (r_1 \cap r_2 = \varnothing),并且对于任意 (s \in S),存在 (r_1, r_2, \cdots, r_n \in U_S) 使得 (s = \bigcup_{i} r_i),则称 (U_S) 是 (S) 的通用划分。
-
映射 (SBase) 的定义 :设 (S) 是具有集合包含关系和通用划分 (U_S) 的集合类,我们定义映射 (SBase : S \to 2^{U_S}) 为 (SBase(s) = {r \in U_S | r \subseteq s})。
下面的命题表明,对于具有集合包含关系的集合类中的每个集合 (s),存在通用划分中唯一的一组集合,它们的并集等于 (s),并且这组集合恰好是 (SBase(s))。
- 命题 1 :如果 (S) 是具有集合包含关系和通用划分 (U_S) 的集合类,存在唯一的集合 ({r_1, r_2, \cdots, r_n} \in 2^{U_S}) 使得 (s = \bigcup_{i} r_i)。并且对于任意 (s \in S),(s = \bigcup_{r \in SBase(s)} r)。
通用划分 (U_S) 也是 (S^{\cap}) 的通用划分,基于此,我们可以将 (SBase) 映射应用于 (S^{\cap})。
-
集合类的偏序集表示 :设 (S) 是具有集合包含关系的集合类,(\langle P, \leq \rangle) 是偏序集。如果 (S) 和 (P) 之间存在同构关系,则称 (P) 是 (S) 的表示。在后续内容中,我们将 (S) 和 (P) 之间的同构关系记为 (Rep : S \to P),当然也存在 (Rep^{-1} : P \to S)。
-
偏序集上的通用划分 :设 (S) 是具有集合包含关系和通用划分 (U_S) 的集合类,(P) 是 (S) 的表示。我们定义 (P) 上的通用划分为 (U_P = {x \in P | x = Rep(r) \text{ 且 } r \in U_S})。
-
映射 (PBase) 的定义 :设 (S) 是具有集合包含关系和通用划分 (U_S) 的集合类,(P) 是 (S) 的表示。对于每个 (p \in P),我们定义映射 (PBase : P \to 2^{U_P}) 为 (PBase(p) = {x \in P | x = Rep(r) \text{ 且 } r \in SBase(Rep^{-1}(p))})。
在具有集合包含关系和通用划分的集合类中,一个集合通过集合并运算由通用划分中的集合“组成”。在该类的表示中,类似的“组成”通过偏序集的最小上界运算 (lub(\cdot)) 实现,具体由以下定理说明。
- 定理 1 :设 (S) 是具有集合包含关系和通用划分的集合类。如果 (P) 是 (S) 的表示,那么对于每个 (s \in S),有 (Rep(s) = lub({y | y = Rep(r) \text{ 且 } r \in SBase(s)}))。
如果将 (PBase(\cdot)) 看作偏序集 (\langle P, \leq \rangle) 和 (\langle 2^{U_P}, \subseteq \rangle) 之间的映射,上述命题可以转化为以下推论。
- 推论 2 :映射 (PBase(\cdot)) 是从偏序集 (\langle P, \leq \rangle) 到偏序集 (\langle 2^{U_P}, \subseteq \rangle) 的序嵌入。
下面我们用一个表格总结上述重要概念:
| 概念 | 定义 |
| — | — |
| (S^{\cap}) | 集合 (S) 关于集合交运算的闭包,满足 (s \in S \Rightarrow s \in S^{\cap}) 且 (s_1, s_2 \in S^{\cap} \Rightarrow s_1 \cap s_2 \in S^{\cap}) |
| (U_S) | (S) 的通用划分,满足 (r_1, r_2 \in U_S \Rightarrow r_1 \cap r_2 = \varnothing) 且 (s \in S \Rightarrow \exists r_i \in U_S, s = \bigcup_{i} r_i) |
| (SBase(s)) | (SBase(s) = {r \in U_S | r \subseteq s}) |
| (P) | (S) 的表示,(S) 和 (P) 之间存在同构关系 (Rep) |
| (U_P) | (P) 上的通用划分,(U_P = {x \in P | x = Rep(r) \text{ 且 } r \in U_S}) |
| (PBase(p)) | (PBase(p) = {x \in P | x = Rep(r) \text{ 且 } r \in SBase(Rep^{-1}(p))}) |
2. 集合交闭包的表示
2.1 引言
给定具有集合包含关系的集合类 (S) 及其表示 (P),我们研究如何从 (P) 推导出 (S^{\cap}) 的表示。在进行正式研究之前,我们先看一个例子。如图 7 所示,集合类 (S) 包含五个集合 (A, B, C, D, E),它们的包含关系与图 2 中的区域相同,并且该类包含一个通用划分,其元素与网格的单位正方形重合。集合 (A, B, C, D, E) 显示为不同图案标识的单位正方形的聚合。
这个集合类的偏序集表示 (P) 如图 8 所示(为清晰起见,偏序集的顶部和底部已省略)。我们希望构建 (S^{\cap}) 的表示,即包含表示集合 (A \cap B)、(B \cap C) 和 (A \cap B \cap C) 等元素的表示。
通过比较 (P) 和图 4 左侧的偏序集,我们可以看到通用划分提供了图 4 左侧偏序集中缺失的关于集合类 (S) 的信息。例如,元素 (1d)、(2d) 和 (3d) 表示既包含在集合 (A) 又包含在集合 (B) 但不包含在集合 (C) 中的区域,这意味着 (A \cap B) 和 (A \cap B \cap C) 是不同的集合。图 9 显示了偏序集 (P) 的正规完备化 (M(P))(同样为清晰起见,格的顶部和底部已省略)。通过观察图 9(并回顾图 5),我们可以看到 (M(P)) 是集合类 (S^{\cap}) 的正确表示,因为标记为 (X)、(Y) 和 (Z) 的元素分别表示集合 (A \cap B)、(B \cap C) 和 (A \cap B \cap C)。
下面是这个过程的 mermaid 流程图:
graph LR
A[集合类 S] --> B[偏序集表示 P]
B --> C[构建 M(P)]
C --> D[表示 S^∩]
2.2 集合交闭包表示的充分条件
- 定理 2 :设 (S) 是具有集合包含关系的集合类,(P) 是其表示,假设 (P) 具有通用划分 (U_P)。对于任意 (x_1, x_2 \in P),如果存在 (x_0 = glb(x_1, x_2)),那么 (Rep^{-1}(x_1) \cap Rep^{-1}(x_2) = Rep^{-1}(x_0))。
这一定理表明,为了为 (S) 的每个子类的交集提供表示(即提供 (S^{\cap}) 的表示),我们需要将 (S) 的表示扩展为一个对于其元素的每个子集都有最大下界(glb)的偏序集,即一个格。由于将偏序集完备化为格的最常见方法是 MacNeille 完备化,我们研究了通过 (M(P))((P) 的 MacNeille 完备化)来表示 (S^{\cap}) 的可能性。
- 定理 3 :设 (S) 是具有集合包含关系、通用划分 (U_S) 和表示 (P) 的集合类。定义映射 (IRep : S^{\cap} \to M(P)) 为 (IRep(s) = ({g \in P | g = Rep(r), r \in SBase}^\ast)^\ast),则 (IRep) 是同构,因此 (M(P)) 是 (S^{\cap}) 的表示。
定理 3 的一个明显推论是,对于任意 (s_1, s_2 \in S),(IRep(s_1 \cap s_2) = glb(IRep(s_1), IRep(s_2))),即两个集合交集的表示是这两个集合表示的最大下界。
我们可以用以下列表总结这部分的关键步骤:
1. 确定集合类 (S) 及其偏序集表示 (P)。
2. 检查 (P) 是否有通用划分 (U_P)。
3. 若有,通过 (M(P)) 构建 (S^{\cap}) 的表示。
4. 利用 (IRep) 映射建立同构关系。
空间数据建模中偏序集与集合交闭包的研究
2. 集合交闭包的表示(续)
2.3 集合交闭包表示的必要条件
定理 3 表明,对于具有集合包含关系的集合类 (S) 及其表示 (P),通用划分的存在是偏序集 (\langle S^{\cap}, \subseteq \rangle) 和 (\langle M(P), \leq \rangle) 之间同构的充分条件,但这不是必要条件,如图 2 和图 3 所示的例子。在该例子中,即使没有通用划分,我们也可以通过 MacNeille 完备化在偏序集中引入新元素((E))来表示集合 (A) 和 (B) 的交集。
为了找到偏序集 (\langle S^{\cap}, \subseteq \rangle) 和 (\langle M(P), \leq \rangle) 之间同构的必要条件,我们可以从两个方面进行研究:一是进一步研究这两个偏序集之间的联系;二是为集合类 (S) 找到额外的条件。
首先,我们引入一个映射 (Z : M(P) \to S^{\cap}):
-
定义 7
:设 (S) 是具有集合包含关系的集合类,(P) 是 (S) 的表示。定义映射 (Z : M(P) \to S^{\cap}) 为 (Z(x) = \bigcap_{y \in (\uparrow x) \cap P} Rep^{-1}(Rep^{-1}(y)))。
下面的引理表明 (Z(\cdot)) 是一个序嵌入:
-
引理 1
:映射 (Z : M(P) \to S^{\cap}) 是偏序集 (\langle S^{\cap}, \subseteq \rangle) 和 (\langle M(P), \leq \rangle) 之间的序嵌入。
从这个引理可以直接得出一个重要结果:
-
引理 2
:设 (S) 是具有集合包含关系的集合类,(P) 是 (S) 的表示。则 (|M(P)| \leq |S^{\cap}|),其中 (M(P)) 是 (P) 的 MacNeille 完备化。
基于上述引理,找到偏序集 (\langle S^{\cap}, \subseteq \rangle) 和 (\langle M(P), \leq \rangle) 之间同构的必要条件的一种方法是找到 (S^{\cap}) 和 (M(P)) 具有相同基数的必要条件,我们通过映射 (Z(\cdot)) 实现了这一结果。
- 定理 4 :设 (S) 是具有集合包含关系的集合类,(P) 是 (S) 的表示。如果 (S^{\cap}) 与 (M(P)) 同构,那么对于任意 (s_0, s_1, s_2 \in S),如果 (Rep(s_0) = glb_P(Rep(s_1), Rep(s_2))),则 (s_1 \cap s_2 = s_0)。
定理 4 给出了偏序集 (\langle S^{\cap}, \subseteq \rangle) 和 (\langle M(P), \leq \rangle) 之间同构的必要条件,但这个条件不是充分的,如图 3 所示的例子。虽然对于任意 (s_0, s_1, s_2 \in S),如果 (Rep(s_0) = glb_P(Rep(s_1), Rep(s_2))) 则 (s_1 \cap s_2 = s_0),但偏序集 (\langle S^{\cap}, \subseteq \rangle) 和 (\langle M(P), \leq \rangle) 不同构,因为 (S^{\cap}) 和 (M(P)) 的基数不同。
从定理 4 可以得出以下推论:
-
推论 3
:设 (S) 是具有集合包含关系的集合类,(P) 是 (S) 的表示。如果 (S^{\cap}) 与 (P) 的正规完备化同构,那么对于每个 (s_1 \in S_0) 和每个 (s \in S),有 (s_1 \cap s = s_1) 或 (s_1 \cap s = \varnothing),其中 (S_0 = {s \in S | \forall x \in S, x \subset s \Rightarrow x = \varnothing})。
-
推论 4
:设 (S) 是具有集合包含关系的集合类,(P) 是 (S) 的表示。如果 (S^{\cap}) 与 (P) 的正规完备化同构,那么对于任意 (s_1, s_2 \in S_0),有 (s_1 \cap s_2 = \varnothing),其中 (S_0 = {s \in S | \forall x \in S, x \subset s \Rightarrow x = \varnothing})。
通用划分的存在是集合类 (S) 关于集合交运算的闭包与 (S) 的表示 (P) 的 MacNeille 完备化之间同构的充分但非必要条件,这意味着定理 4 的逆命题不成立。然而,借助推论 3 和推论 4,我们可以通过对集合类 (S) 施加额外约束来定义同构的必要条件。
- 定义 8 :设 (S) 是具有集合包含关系的集合类,(s_T) 是其最大集。如果 (\bigcup_{x \in S_0} x = s_T),其中 (S_0 = {s \in S | \forall x \in S, x \subset s \Rightarrow x = \varnothing}),则称 (S) 关于集合包含关系是一致的。
在许多情况下,假设集合类是一致的是合理的,因为这意味着如果一个集合严格包含另一个集合,那么这两个集合的差集必须在集合类 (S) 中表示。例如,在一个空间数据库中,当一块土地和其中包含的一个城市一起表示时,土地中城市以外的部分也应被识别为一个实体。
- 定理 5 :设 (S) 是具有集合包含关系的集合类,(P) 是 (S) 的表示。如果 (S^{\cap}) 与 (P) 的正规完备化同构,并且 (S) 是一致的,那么 (S) 存在通用划分。
结合定理 5 和定理 3,我们得到以下推论,它表明了 (S^{\cap}) 与 (M(P)) 之间同构与 (S) 上通用划分存在之间的紧密联系。
- 推论 5 :设 (S) 是具有集合包含关系的集合类,(P) 是 (S) 的表示。假设 (S) 是一致的,那么 (S^{\cap}) 与 (P) 的正规完备化同构当且仅当 (S) 存在通用划分。
这个结果意味着,在使用偏序集表示一致集合类的空间数据库中,通过正规完备化算子执行集合之间的空间交集的唯一方法是为数据库提供一个通用划分。
下面用表格总结必要条件相关的概念和定理:
| 概念/定理 | 描述 |
| — | — |
| 映射 (Z) | (Z(x) = \bigcap_{y \in (\uparrow x) \cap P} Rep^{-1}(Rep^{-1}(y))),用于研究 (M(P)) 到 (S^{\cap}) 的关系 |
| 引理 1 | 映射 (Z) 是序嵌入 |
| 引理 2 | (|M(P)| \leq |S^{\cap}|) |
| 定理 4 | (S^{\cap}) 与 (M(P)) 同构的必要条件:若 (Rep(s_0) = glb_P(Rep(s_1), Rep(s_2))),则 (s_1 \cap s_2 = s_0) |
| 推论 3 | (S^{\cap}) 与 (P) 正规完备化同构时,(s_1 \in S_0) 与 (s \in S) 的交集情况 |
| 推论 4 | (S^{\cap}) 与 (P) 正规完备化同构时,(s_1, s_2 \in S_0) 的交集情况 |
| 定义 8 | 集合类 (S) 一致的定义 |
| 定理 5 | (S^{\cap}) 与 (P) 正规完备化同构且 (S) 一致时,(S) 存在通用划分 |
| 推论 5 | (S) 一致时,(S^{\cap}) 与 (P) 正规完备化同构当且仅当 (S) 存在通用划分 |
3. 结论
偏序集广泛用于表示具有集合包含关系的集合类。本文探讨了如何通过集合类的偏序集表示对集合进行自然操作。关于集合交集,我们给出了正确使用正规完备化算子作为集合交运算表示的充分和必要条件。对于满足更严格条件的集合类,我们找到了一个既必要又充分的条件。
这些结果进一步说明了使用偏序集表示具有集合包含关系的集合类的合理性。未来的工作将集中在刻画集合并运算上。
下面是一个 mermaid 流程图,展示整个研究的主要流程:
graph LR
A[集合类 S] --> B[偏序集表示 P]
B --> C{是否有通用划分}
C -- 有 --> D[构建 M(P) 表示 S^∩]
C -- 无 --> E[研究必要条件]
E --> F{集合类 S 是否一致}
F -- 是 --> G[存在通用划分]
F -- 否 --> H[继续探索]
D --> I[得出同构结论]
G --> I
通过以上研究,我们在空间数据建模中利用偏序集进行集合操作方面取得了重要进展,为空间数据库的设计和应用提供了理论支持。
空间数据建模中偏序集与集合交闭包研究
27

被折叠的 条评论
为什么被折叠?



