Proving tree algorithms for succinct data structures
Reynald Affeldt, Jacques Garrigue, Xuanrui Qi, Kazunari Tanaka

TL;DR
This paper formalizes two tree-based succinct data structure representations in Coq/SSReflect, enabling verified, space-efficient, and performant algorithms for large data handling.
Contribution
It provides the first formalization of Level-Order Unary Degree Sequence and dynamic bit sequence trees, enhancing provably-safe implementations of big data structures.
Findings
Formalization of Level-Order Unary Degree Sequence in Coq
Efficient algorithms for dynamic bit sequences with low overhead
Foundation for verified big data data structures
Abstract
Succinct data structures give space-efficient representations of large amounts of data without sacrificing performance. They rely one cleverly designed data representations and algorithms. We present here the formalization in Coq/SSReflect of two different tree-based succinct representations and their accompanying algorithms. One is the Level-Order Unary Degree Sequence, which encodes the structure of a tree in breadth-first order as a sequence of bits, where access operations can be defined in terms of Rank and Select, which work in constant time for static bit sequences. The other represents dynamic bit sequences as binary balanced trees, where Rank and Select present a low logarithmic overhead compared to their static versions, and with efficient insertion and deletion. The two can be stacked to provide a dynamic representation of dictionaries for instance. While both representations…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Code & Models
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsAlgorithms and Data Compression · Advanced Database Systems and Queries · Parallel Computing and Optimization Techniques
