Document

# Space-Efficient Data Structures for Lattices

## File

LIPIcs.SWAT.2020.31.pdf
• Filesize: 0.61 MB
• 22 pages

## Cite As

J. Ian Munro, Bryce Sandlund, and Corwin Sinnamon. Space-Efficient Data Structures for Lattices. In 17th Scandinavian Symposium and Workshops on Algorithm Theory (SWAT 2020). Leibniz International Proceedings in Informatics (LIPIcs), Volume 162, pp. 31:1-31:22, Schloss Dagstuhl – Leibniz-Zentrum für Informatik (2020)
https://doi.org/10.4230/LIPIcs.SWAT.2020.31

## 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 Θ(log n) factor from the Θ(n^{3/2})-bit lower bound for storing lattices. The preprocessing time is O(n²). This structure admits a simple space-time tradeoff so that, for any c ∈ [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(n² + 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 (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.

## Subject Classification

##### ACM Subject Classification
• Theory of computation
• Mathematics of computing → Graph algorithms
##### Keywords
• Lattice
• Partially-ordered set
• Space-efficient data structure
• Succinct data structure

## Metrics

• Access Statistics
• Total Accesses (updated on a weekly basis)
0

## References

1. Hassan Aït-Kaci, Robert Boyer, Patrick Lincoln, and Roger Nasr. Efficient implementation of lattice operations. ACM Transactions on Programming Languages and Systems (TOPLAS), 11(1):115-146, 1989.
2. Garrett Birkhoff. Rings of sets. Duke Mathematical Journal, 3(3):443-454, 1937.
3. Andrej Brodnik and J Ian Munro. Membership in constant time and almost-minimum space. SIAM Journal on Computing, 28(5):1627-1640, 1999.
4. Yves Caseau. Efficient handling of multiple inheritance hierarchies. ACM SIGPLAN Notices, 28(10):271-287, 1993.
5. Yves Caseau, Michel Habib, Lhouari Nourine, and Olivier Raynaud. Encoding of multiple inheritance hierarchies and partial orders. Computational Intelligence, 15(1):50-62, 1999.
6. Marcel Erné, Jobst Heitzig, and Jürgen Reinhold. On the number of distributive lattices. Electron. J. Combin, 9(1):23, 2002.
7. Arash Farzan and J Ian Munro. Succinct representation of finite abelian groups. In Proceedings of the 2006 international symposium on Symbolic and algebraic computation, pages 87-92. ACM, 2006.
8. Bernhard Ganter, Gerd Stumme, and Rudolf Wille. Formal concept analysis: foundations and applications, volume 3626. Springer, 2005.
9. George Grätzer and Friedrich Wehrung. Lattice theory: special topics and applications. Springer, 2016.
10. Michel Habib, Raoul Medina, Lhouari Nourine, and George Steiner. Efficient algorithms on distributive lattices. Discrete Applied Mathematics, 110(2):169-187, 2001.
11. Michel Habib and Lhouari Nourine. Tree structure for distributive lattices and its applications. Theoretical Computer Science, 165(2):391-405, 1996.
12. Arthur B Kahn. Topological sorting of large networks. Communications of the ACM, 5(11):558-562, 1962.
13. DJ Kleitman and KJ Winston. The asymptotic number of lattices. Annals of Discrete Mathematics, 6:243-249, 1980.
14. Walter Klotz and Lutz Lucht. Endliche verbände. Journal für die Reine und Angewandte Mathematik, 247:58-68, 1971.
15. Andreas Krall, Jan Vitek, and R Nigel Horspool. Near optimal hierarchical encoding of types. In European Conference on Object-Oriented Programming, pages 128-145. Springer, 1997.
16. Bernard Monjardet. The presence of lattice theory in discrete problems of mathematical social sciences. Why? Mathematical Social Sciences, 46(2):103-144, 2003.
17. J Ian Munro and Corwin Sinnamon. Time and space efficient representations of distributive lattices. In Proceedings of the Twenty-Ninth Annual ACM-SIAM Symposium on Discrete Algorithms, pages 550-567. Society for Industrial and Applied Mathematics, 2018.
18. Flemming Nielson, Hanne R Nielson, and Chris Hankin. Principles of program analysis. Springer, 2015.
19. Mihai Pătraşcu. Unifying the landscape of cell-probe lower bounds. SIAM Journal on Computing, 40(3):827-847, 2011.
20. Maurizio Talamo and Paola Vocca. Fast lattice browsing on sparse representation. In Orders, Algorithms, and Applications, pages 186-204. Springer, 1994.
21. Maurizio Talamo and Paola Vocca. A data structure for lattice representation. Theoretical Computer Science, 175(2):373-392, 1997.
22. Maurizio Talamo and Paola Vocca. An efficient data structure for lattice operations. SIAM journal on computing, 28(5):1783-1805, 1999.
23. Mikkel Thorup. Compact oracles for reachability and approximate distances in planar digraphs. Journal of the ACM (JACM), 51(6):993-1024, 2004.
24. Rudolf Wille. Restructuring lattice theory: an approach based on hierarchies of concepts. In Ordered sets, pages 445-470. Springer, 1982.
25. Kenneth James Winston. Asymptotic analysis of lattices and tournament score vectors. PhD thesis, Massachusetts Institute of Technology, 1979.