Succinct Posets
We design a succinct data structure for representing a poset that, given two elements, can report whether one precedes the other in constant time. This is equivalent to succinctly representing the transitive closure graph of the poset, and we note that the same method can also be used to succinctly...
Saved in:
Published in | Algorithmica Vol. 76; no. 2; pp. 445 - 473 |
---|---|
Main Authors | , |
Format | Journal Article |
Language | English |
Published |
New York
Springer US
01.10.2016
Springer Nature B.V |
Subjects | |
Online Access | Get full text |
Cover
Loading…
Summary: | We design a succinct data structure for representing a poset that, given two elements, can report whether one precedes the other in constant time. This is equivalent to succinctly representing the transitive closure graph of the poset, and we note that the same method can also be used to succinctly represent the transitive reduction graph. For an
n
element poset, the data structure occupies
n
2
/
4
+
o
(
n
2
)
bits in the worst case. Furthermore, a slight extension to this data structure yields a succinct oracle for reachability in arbitrary directed graphs. Thus, using no more than a quarter of the space required to represent an arbitrary directed graph, reachability queries can be supported in constant time. We also consider the operation of listing
all
the successors or predecessors of a given element, and show how to do this in constant time per element reported using a slightly modified version of our succinct data structure. |
---|---|
ISSN: | 0178-4617 1432-0541 |
DOI: | 10.1007/s00453-015-0047-1 |