English

Cache-Oblivious Peeling of Random Hypergraphs

Data Structures and Algorithms 2013-12-03 v1

Abstract

The computation of a peeling order in a randomly generated hypergraph is the most time-consuming step in a number of constructions, such as perfect hashing schemes, random rr-SAT solvers, error-correcting codes, and approximate set encodings. While there exists a straightforward linear time algorithm, its poor I/O performance makes it impractical for hypergraphs whose size exceeds the available internal memory. We show how to reduce the computation of a peeling order to a small number of sequential scans and sorts, and analyze its I/O complexity in the cache-oblivious model. The resulting algorithm requires O(sort(n))O(\mathrm{sort}(n)) I/Os and O(nlogn)O(n \log n) time to peel a random hypergraph with nn edges. We experimentally evaluate the performance of our implementation of this algorithm in a real-world scenario by using the construction of minimal perfect hash functions (MPHF) as our test case: our algorithm builds a MPHF of 7.67.6 billion keys in less than 2121 hours on a single machine. The resulting data structure is both more space-efficient and faster than that obtained with the current state-of-the-art MPHF construction for large-scale key sets.

Keywords

Cite

@article{arxiv.1312.0526,
  title  = {Cache-Oblivious Peeling of Random Hypergraphs},
  author = {Djamal Belazzougui and Paolo Boldi and Giuseppe Ottaviano and Rossano Venturini and Sebastiano Vigna},
  journal= {arXiv preprint arXiv:1312.0526},
  year   = {2013}
}
R2 v1 2026-06-22T02:19:04.385Z