Faster Deterministic Modular Subset Sum
arXiv:2012.06062 · doi:10.4230/LIPIcs.ESA.2021.76
Abstract
We consider the Modular Subset Sum problem: given a multiset of integers from and a target integer , decide if there exists a subset of with a sum equal to . Recent independent works by Cardinal and Iacono (SOSA'21), and Axiotis et al. (SOSA'21) provided simple and near-linear algorithms for this problem. Cardinal and Iacono gave a randomized algorithm that runs in time, while Axiotis et al. gave a deterministic algorithm that runs in time. Both results work by reduction to a text problem, which is solved using a dynamic strings data structure. In this work, we develop a simple data structure, designed specifically to handle the text problem that arises in the algorithms for Modular Subset Sum. Our data structure, which we call the shift-tree, is a simple variant of a segment tree. We provide both a hashing-based and a deterministic variant of the shift-trees. We then apply our data structure to the Modular Subset Sum problem and obtain two algorithms. The first algorithm is Monte-Carlo randomized and matches the runtime of the Las-Vegas algorithm by Cardinal and Iacono. The second algorithm is fully deterministic and runs in time, where is the inverse Ackermann function.
16 pages, accepted at ESA 2021