Abstract

From a well-known decomposition theorem, we propose a tree representation for distributive and simplicial lattices. We show how this representation (called ideal tree) can be efficiently computed (linear time in the size of the lattice given by any graph whose transitive closure is the lattice) and compared with respect to time and space complexity. As far as time complexity is concerned, we simply consider the time needed for computations of basic lattice operations such as meet or join and reachability ( x ⩽ y). Therefore an ideal tree can be considered as a good data structure for a distributive lattice, since for a lattice L = ( X, E) it uses O(¦X¦) space and allows computations of reachability, meet and join operations in O(¦M(L)¦), where M( L) denotes the suborder of the meet irreducible elements in L. Furthermore, optimal bit-vector encoding for distributive lattices can be easily derived from this data structure. Relationships with encoding proposed by Aït-Kaci et al. [3], Caseau [5] are also discussed. Intensive use of this ideal tree allow us to achieve best running time algorithms for most of the applications in which distributive lattices are involved; as for example, constructing the lattice of ideals or generating ideals for a given partial order. Therefore this data structure can be used in many areas such as scheduling theory, in which several algorithms are based on a dynamic programming approach of the lattice of ideals of the precedence ordering; or distributed programming, in which some of the debugging tools rely on the calculation of the lattice of ideals of the causality ordering of the events.

Full Text
Published version (Free)

Talk to us

Join us for a 30 min session where you can share your feedback and ask us any queries you have

Schedule a call