In this paper, we consider the representation and management of an element
set on which a lattice partial order relation is defined.
In particular, let n be the element set size. We present an O(n root n)-spa
ce implicit data structure for performing the following set of basic operat
ions:
1. Test the presence of an order relation between two given elements, in co
nstant time.
2. Find a path between two elements whenever one exists, in O(l) steps, whe
re l is the path length.
3. Compute the successors and/or predecessors set of a given element, in O(
h) steps, where h is the size of the returned set.
4. Given two elements, find all elements between them, in time O(k log d),
where k is the size of the returned set and d is the maximum in-degree or o
ut-degree in the transitive reduction of the order relation.
5. Given two elements, find the least common ancestor and/or the greatest c
ommon successor in O(root n)-time.
6. Given k elements, find the least common ancestor and/or the greatest com
mon successor in O(root n + k log n)time. (Unless stated otherwise, all log
arithms are to the base 2.)
The preprocessing time is O(n(2)). Focusing on the first operation, represe
nting the building-box for all the others, we derive an overall O(n root n)
-space x time bound which beats the order n(2) bottleneck representing the
present complexity for this problem. Moreover, we will show that the comple
xity bounds for the first three operations are optimal with respect to the
worst case. Additionally, a stronger result can be derived. In particular,
it is possible to represent a lattice in space O(n root t), where t is the
minimum number of disjoint chains which partition the element set.