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.5529Markdown
[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.5529BibTeX
@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/}
}