空间有效的格数据结构
Space-Efficient Data Structures for Lattices
摘要:
格是一个偏序集合,其中每对元素都有唯一的交(最大下界)和连接(最小上界)。我们提出了新的数据结构的格是简单的,有效的,几乎最佳的空间复杂性。我们的第一个数据结构可以在常数时间内回答偏序查询,并在$O(n^{3/4})$时间内找到两个元素的相交或连接,其中$O(n^{3/4})$是格中元素的数量。它占用空间的$O(n^{3/2}\log n)$位,这仅是来自用于存储格的$Θ(n^{3/2})$位下限的$Θ(\log n)$因子。预处理时间为$O(n^2)$。该结构允许简单的空间-时间折衷,使得对于任何$c \in [\frac{1}{2}, 1]$,数据结构支持在$O(n^{1-c/2})$时间内的相遇和连接查询,占用$O(n^{1+c}\log n)$位空间,并且可以在$O(n^2 + n^{1+3c/2})$时间内构造。我们的第二个数据结构使用$O(n^{3/2}\log n)$位空间,并支持$O(d \frac{\log n}{\log d})$时间的相遇和连接,其中$d$是格的传递约简图中任何元素的最大度。这种结构对于具有低次元素的格要快得多。本文还确定了一个错误,在一个长期存在的解决方案的问题,表示格。我们讨论这个问题与以前的工作。
英文摘要:
A lattice is a partially-ordered set in which every pair of elements has a unique meet (greatest lower bound) and join (least upper bound). We present new data structures for lattices that are simple, efficient, and nearly optimal in terms of space complexity. Our first data structure can answer partial order queries in constant time and find the meet or join of two elements in $O(n^{3/4})$ time, where $n$ is the number of elements in the lattice. It occupies $O(n^{3/2}\log n)$ bits of space, which is only a $Θ(\log n)$ factor from the $Θ(n^{3/2})$-bit lower bound for storing lattices. The preprocessing time is $O(n^2)$. This structure admits a simple space-time tradeoff so that, for any $c \in [\frac{1}{2}, 1]$, the data structure supports meet and join queries in $O(n^{1-c/2})$ time, occupies $O(n^{1+c}\log n)$ bits of space, and can be constructed in $O(n^2 + n^{1+3c/2})$ time. Our second data structure uses $O(n^{3/2}\log n)$ bits of space and supports meet and join in $O(d \frac{\log n}{\log d})$ time, where $d$ is the maximum degree of any element in the transitive reduction graph of the lattice. This structure is much faster for lattices with low-degree elements. This paper also identifies an error in a long-standing solution to the problem of representing lattices. We discuss the issue with this previous work.
机构、总结、中文摘要均由AI分析而来,可能存在错误,请以论文正文为准。