Papers
Topics
Authors
Recent
Search
2000 character limit reached

Space-Efficient Data Structures for Lattices

Published 13 Feb 2019 in cs.DS | (1902.05166v2)

Abstract: 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 $\Theta(\log n)$ factor from the $\Theta(n{3/2})$-bit lower bound for storing lattices. The preprocessing time is $O(n2)$. 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(n2 + 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.

Citations (4)

Summary

Paper to Video (Beta)

Whiteboard

No one has generated a whiteboard explanation for this paper yet.

Open Problems

We haven't generated a list of open problems mentioned in this paper yet.

Continue Learning

We haven't generated follow-up questions for this paper yet.

Collections

Sign up for free to add this paper to one or more collections.