Ranking Bracelets in Polynomial Time

Duncan Adamson,Argyrios Deligkas,Vladimir V. Gusev,Igor Potapov
DOI: https://doi.org/10.48550/arXiv.2104.04324
2021-04-09
Abstract:The main result of the paper is the first polynomial-time algorithm for ranking bracelets. The time-complexity of the algorithm is O(k^2 n^4), where k is the size of the alphabet and n is the length of the considered bracelets. The key part of the algorithm is to compute the rank of any word with respect to the set of bracelets by finding three other ranks: the rank over all necklaces, the rank over palindromic necklaces, and the rank over enclosing apalindromic necklaces. The last two concepts are introduced in this paper. These ranks are key components to our algorithm in order to decompose the problem into parts. Additionally, this ranking procedure is used to build a polynomial-time unranking algorithm.
Combinatorics,Discrete Mathematics,Data Structures and Algorithms
What problem does this paper attempt to address?