Efficient implementation of lattice operations
Citations Over TimeTop 10% of 1989 papers
Abstract
Lattice operations such as greatest lower bound (GLB), least upper bound (LUB), and relative complementation (BUTNOT) are becoming more and more important in programming languages supporting object inheritance. We present a general technique for the efficient implementation of such operations based on an encoding method. The effect of the encoding is to plunge the given ordering into a boolean lattice of binary words, leading to an almost constant time complexity of the lattice operations. A first method is described based on a transitive closure approach. Then a more space-efficient method minimizing code-word length is described. Finally a powerful grouping technique called modulation is presented, which drastically reduces code space while keeping all three lattice operations highly efficient. This technique takes into account idiosyncrasies of the topology of the poset being encoded that are quite likely to occur in practice. All methods are formally justified. We see this work as an original contribution towards using semantic (vz., in this case, taxonomic) information in the engineering pragmatics of storage and retrieval of (vz., partially or quasi-ordered) information.
Related Papers
- → The dynamic complexity of transitive closure is in DynTC0(2003)28 cited
- → Transitive closure and the LOGA+-strategy for its efficient evaluation(1989)6 cited
- About Transitive Closure Algorithm Discussion(2009)
- Research on the incremental updating of the transitive closure(2015)
- A new algorithm for transitive closure(2011)