并交表达式的快速求值
Fast evaluation of union-intersection expressions
摘要:
我们展示了如何在线性空间数据结构中表示集合,使得涉及集合的并集和交集的表达式可以以最坏情况下有效的方式计算。这个问题在例如信息检索和数据库系统中有应用。我们主要考虑RAM模型的计算,和机器字集,但也陈述我们的结果在I/O模型。在一个字大小为$w$的RAM上,我们的结果的一个特殊情况是,$m$(预处理)集合的交集,包含$n$元素的总数,可以在预期的时间计算$O(n (\log w)^2 / w + km)$,其中$k$是在交集中的元素的数量。如果两项中的第一项占优势,则这比合并排序列表的标准解决方案快$w^{1-o(1)}$倍。我们显示了一个细胞探针的时间下限$Ω(n/(w m \log m)+ (1-\tfrac{\log k}{w}) k)$,这意味着我们的上限几乎是最佳的小$m$。我们的算法使用了一种新的组合的近似集表示和字级并行。
英文摘要:
We show how to represent sets in a linear space data structure such that expressions involving unions and intersections of sets can be computed in a worst-case efficient way. This problem has applications in e.g. information retrieval and database systems. We mainly consider the RAM model of computation, and sets of machine words, but also state our results in the I/O model. On a RAM with word size $w$, a special case of our result is that the intersection of $m$ (preprocessed) sets, containing $n$ elements in total, can be computed in expected time $O(n (\log w)^2 / w + km)$, where $k$ is the number of elements in the intersection. If the first of the two terms dominates, this is a factor $w^{1-o(1)}$ faster than the standard solution of merging sorted lists. We show a cell probe lower bound of time $Ω(n/(w m \log m)+ (1-\tfrac{\log k}{w}) k)$, meaning that our upper bound is nearly optimal for small $m$. Our algorithm uses a novel combination of approximate set representations and word-level parallelism.
机构、总结、中文摘要均由AI分析而来,可能存在错误,请以论文正文为准。