9 research outputs found
Systematic Error-Correcting Codes for Rank Modulation
The rank-modulation scheme has been recently proposed for efficiently storing
data in nonvolatile memories. Error-correcting codes are essential for rank
modulation, however, existing results have been limited. In this work we
explore a new approach, \emph{systematic error-correcting codes for rank
modulation}. Systematic codes have the benefits of enabling efficient
information retrieval and potentially supporting more efficient encoding and
decoding procedures. We study systematic codes for rank modulation under
Kendall's -metric as well as under the -metric.
In Kendall's -metric we present -systematic codes for
correcting one error, which have optimal rates, unless systematic perfect codes
exist. We also study the design of multi-error-correcting codes, and provide
two explicit constructions, one resulting in systematic codes
with redundancy at most . We use non-constructive arguments to show the
existence of -systematic codes for general parameters. Furthermore,
we prove that for rank modulation, systematic codes achieve the same capacity
as general error-correcting codes.
Finally, in the -metric we construct two systematic
multi-error-correcting codes, the first for the case of , and the
second for . In the latter case, the codes have the same
asymptotic rate as the best codes currently known in this metric
Snake-in-the-Box Codes for Rank Modulation
Motivated by the rank-modulation scheme with applications to flash memory, we
consider Gray codes capable of detecting a single error, also known as
snake-in-the-box codes. We study two error metrics: Kendall's -metric,
which applies to charge-constrained errors, and the -metric, which
is useful in the case of limited magnitude errors. In both cases we construct
snake-in-the-box codes with rate asymptotically tending to 1. We also provide
efficient successor-calculation functions, as well as ranking and unranking
functions. Finally, we also study bounds on the parameters of such codes
Systematic Error-Correcting Codes for Rank Modulation
The rank modulation scheme has been proposed recently for efficiently writing and storing data in nonvolatile memories. Error-correcting codes are very important for rank modulation, and they have attracted interest among researchers. In this work, we explore a new approach, systematic error-correcting codes for rank modulation. In an (n,k) systematic code, we use the permutation induced by the levels of n cells to store data, and the permutation induced by the first k cells (k < n) has a one-to-one mapping to information bits. Systematic codes have the benefits of enabling efficient information retrieval and potentially supporting more efficient encoding and decoding procedures. We study systematic codes for rank modulation equipped with the Kendall's τ-distance. We present (k + 2, k) systematic codes for correcting one error, which have optimal sizes unless perfect codes exist. We also study the design of multi-error-correcting codes, and prove that for any 2 ≤ k < n, there always exists an (n, k) systematic code of minimum distance n-k. Furthermore, we prove that for rank modulation, systematic codes achieve the same capacity as general error-correcting codes
Ranking Bracelets in Polynomial Time
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
Linear-Time Ranking of Permutations
Abstract. A lexicographic ranking function for the set of all permutations of n ordered symbols translates permutations to their ranks in the lexicographic order of all permutations. This is frequently used for indexing data structures by permutations. We present algorithms for computing both the ranking function and its inverse using O(n) arithmetic operations.
Linear-Time Ranking of Permutations
Abstract. A lexicographic ranking function for the set of all permutations of n ordered symbols translates permutations to their ranks in the lexicographic order of all permutations. This is frequently used for indexing data structures by permutations. We present algorithms for computing both the ranking function and its inverse using O(n) arithmetic operations. 1 Introduction A permutation of order n is a bijection of an n-element set X onto itself. For con-venience, we will always assume that X = [n] = {1,..., n}, so the permutationsbecome ordered n-tuples containing each number 1,..., n exactly once.Many applications ask for arrays indexed by permutations. Among other use