🤖 AI Summary
This work addresses the lack of theoretical analysis on partition balance in k-mer partitioning using XOR-hash-based minimizers, particularly the absence of quantified bounds on the maximum bucket size. We extend minimizer theory from lexicographic ordering to an exponentially large family of XOR hash functions, precisely characterizing the mapping between k-mers and their minimizers through combinatorial modeling and dynamic programming. We propose an algorithm with time complexity O(km²) and space complexity O(km) that efficiently computes, for any given m-mer under XOR hashing, the maximum number of k-mers for which it serves as the minimizer. This enables a rigorous evaluation of the upper bound on partition bucket capacity, providing a theoretical foundation for the design of sequence indexing schemes.
📝 Abstract
In bioinformatics, minimizers have become an inescapable method for handling $k$-mers (words of fixed size $k$) extracted from DNA or RNA sequencing, whether for sampling, storage, querying or partitioning. According to some fixed order on $m$-mers ($m<k$), the minimizer of a $k$-mer is defined as its smallest $m$-mer -- and acts as its fingerprint. Although minimizers are widely used for partitioning purposes, there is almost no theoretical work on the quality of the resulting partitions. For instance, it has been known for decades that the lexicographic order empirically leads to highly unbalanced partitions that are unusable in practice, but it was not until very recently that this observation was theoretically substantiated. The rejection of the lexicographic order has led the community to resort to (pseudo-)random orders using hash functions. In this work, we extend the theoretical results relating to the partitions obtained by the lexicographical order, departing from it to a (exponentially) large family of hash functions, namely where the $m$-mers are XORed against a fixed key. More precisely, provided a key $\gamma$ and a $m$-mer $w$, we investigate the function that counts how many $k$-mers admit $w$ as their minimizer (i.e. where $w\oplus\gamma$ is minimal among all $m$-mers of said $k$-mers). This number, denoted by $\pi_k^{\gamma}(w)$, represents the maximum size of the bucket associated with $w$, if all possible $k$-mers were to be seen and partitioned. We adapt the (lexicographical order) method of the literature to our framework and propose combinatorial equations that allow to compute, using dynamic programming, $\pi_k^{\gamma}(w)$ in $O(km^2)$ time and $O(km)$ space.