EPR-dictionaries: A practical and fast data structure for constant time searches in unidirectional and bidirectional FM-indices
arXiv:1608.02413
Abstract
We introduce a new, practical method for conducting an exact search in a uni- and bidirectional FM index in time per step while using bits of space. This is done by replacing the binary wavelet tree by a new data structure, the Enhanced Prefixsum Rank dictionary (EPR-dictionary). We implemented this method in the SeqAn C++ library and experimentally validated our theoretical results. In addition we compared our implementation with other freely available implementations of bidirectional indices and show that we are between times faster. This will have a large impact for many bioinformatics applications that rely on practical implementations of (2)FM indices e.g. for read mapping. To our knowledge this is the first implementation of a constant time method for a search step in 2FM indices.