Constructing Minimal Perfect Hash Functions Using SAT Technology

Abstract

Minimal perfect hash functions (MPHFs) are used to provide efficient access to values of large dictionaries (sets of key-value pairs). Discovering new algorithms for building MPHFs is an area of active research, especially from the perspective of storage efficiency. The information-theoretic limit for MPHFs is 1/ln 2 ≈ 1.44 bits per key. The current best practical algorithms range between 2 and 4 bits per key. In this article, we propose two SAT-based constructions of MPHFs. Our first construction yields MPHFs near the information-theoretic limit. For this construction, current state-of-the-art SAT solvers can handle instances where the dictionaries contain up to 40 elements, thereby outperforming the existing (brute-force) methods. Our second construction uses XORSAT filters to realize a practical approach with long-term storage of approximately 1.83 bits per key.

Cite

Text

Weaver and Heule. "Constructing Minimal Perfect Hash Functions Using SAT Technology." AAAI Conference on Artificial Intelligence, 2020. doi:10.1609/AAAI.V34I02.5529

Markdown

[Weaver and Heule. "Constructing Minimal Perfect Hash Functions Using SAT Technology." AAAI Conference on Artificial Intelligence, 2020.](https://mlanthology.org/aaai/2020/weaver2020aaai-constructing/) doi:10.1609/AAAI.V34I02.5529

BibTeX

@inproceedings{weaver2020aaai-constructing,
  title     = {{Constructing Minimal Perfect Hash Functions Using SAT Technology}},
  author    = {Weaver, Sean A. and Heule, Marijn},
  booktitle = {AAAI Conference on Artificial Intelligence},
  year      = {2020},
  pages     = {1668-1675},
  doi       = {10.1609/AAAI.V34I02.5529},
  url       = {https://mlanthology.org/aaai/2020/weaver2020aaai-constructing/}
}