Computing the Ball Size of Frequency Permutations under Chebyshev Distance

Reading time: 7 minute
...

📝 Original Info

  • Title: Computing the Ball Size of Frequency Permutations under Chebyshev Distance
  • ArXiv ID: 1102.2799
  • Date: 2011-02-14
  • Authors: Min-Zheng Shieh, Shi-Chun Tsai

📝 Abstract

Let $S_n^\lambda$ be the set of all permutations over the multiset $\{\overbrace{1,...,1}^{\lambda},...,\overbrace{m,...,m}^\lambda\}$ where $n=m\lambda$. A frequency permutation array (FPA) of minimum distance $d$ is a subset of $S_n^\lambda$ in which every two elements have distance at least $d$. FPAs have many applications related to error correcting codes. In coding theory, the Gilbert-Varshamov bound and the sphere-packing bound are derived from the size of balls of certain radii. We propose two efficient algorithms that compute the ball size of frequency permutations under Chebyshev distance. Both methods extend previous known results. The first one runs in $O({2d\lambda \choose d\lambda}^{2.376}\log n)$ time and $O({2d\lambda \choose d\lambda}^{2})$ space. The second one runs in $O({2d\lambda \choose d\lambda}{d\lambda+\lambda\choose \lambda}\frac{n}{\lambda})$ time and $O({2d\lambda \choose d\lambda})$ space. For small constants $\lambda$ and $d$, both are efficient in time and use constant storage space.

💡 Deep Analysis

Deep Dive into Computing the Ball Size of Frequency Permutations under Chebyshev Distance.

Let $S_n^\lambda$ be the set of all permutations over the multiset $\{\overbrace{1,...,1}^{\lambda},...,\overbrace{m,...,m}^\lambda\}$ where $n=m\lambda$. A frequency permutation array (FPA) of minimum distance $d$ is a subset of $S_n^\lambda$ in which every two elements have distance at least $d$. FPAs have many applications related to error correcting codes. In coding theory, the Gilbert-Varshamov bound and the sphere-packing bound are derived from the size of balls of certain radii. We propose two efficient algorithms that compute the ball size of frequency permutations under Chebyshev distance. Both methods extend previous known results. The first one runs in $O({2d\lambda \choose d\lambda}^{2.376}\log n)$ time and $O({2d\lambda \choose d\lambda}^{2})$ space. The second one runs in $O({2d\lambda \choose d\lambda}{d\lambda+\lambda\choose \lambda}\frac{n}{\lambda})$ time and $O({2d\lambda \choose d\lambda})$ space. For small constants $\lambda$ and $d$, both are efficient in time and

📄 Full Content

Frequency permutation arrays (FPAs) of frequency λ and length n are sets of permutations over the multiset { λ 1, . . . , 1, . . . , λ m, . . . , m} where n = mλ. In particular, FPAs of frequency λ = 1 are called permutation arrays (PAs). FPA is a special case of Slepian's codes [10] for permutation modulation. Many applications of FPAs in various areas, such as power line communication (see [8], [13], [14] and [15]), multi-level flash memories (see [3] and [4], [11]) and computer security (see [12]), are found recently. In many applications, we use FPAs as error correcting codes. It is well-known that the capability against errors of a code is mainly determined by its minimum distance. Similar to traditional codes, the minimum distance of an FPA C is d under metric δ if min ρ,π∈C;ρ =π δ(ρ, π) = d. A (λ, n, d)-FPA under some metric δ is a FPA of frequency λ and length n which has minimum distance at least d under δ. A (λ, n, d)-FPA is often considered to be better if it has larger cardinality. When we evaluate the quality of certain design of (λ, n, d)-FPA, we often compare it with the maximum cardinality of (λ, n, d)-FPAs. Generally speaking, computing the maximum size of codes of certain parameters is hard. In coding theory, the Gilbert-Varshamov bound and the sphere-packing bound are famous lower and upper bounds on the code size, respectively. They are derived from the size of balls of certain radii. We focus on the efficiency of computing the ball size in this paper. Shieh and Tsai [12] showed that the cardinality of d-radius balls can be obtained by computing the permanent of a matrix. It is #P -complete to compute the permanent of a general matrix. However, the matrix for estimating the ball size of FPAs has a special structure. Kløve [5] used the property and proposed a method to efficiently compute the cardinality of balls of radius 1 by solving recurrence relations. Meanwhile, based on Schwartz's result [9], one can compute the size of d-radius balls in O 2d space. These algorithms are generalization of Schwartz's result [9]. They are efficient in time and space when d and λ are small fixed constants.

The rest of the paper is organized as follows. In section 2, we define some notations. In section 3, we introduce a recursive algorithm ENUMV for enumerating permutations in a d-radius ball. Then, based on the property of ENUMV, we give two methods to obtain the ball size efficiently in section 4. We compare previous results with ours in section 5. Then, we conclude this paper briefly. . . , m), i.e., the i-th entry of e is e i = i λ . A partial frequency permutation can be derived from a frequency permutation in S λ n with some entries replaced with * . The symbol * does not contribute to the distance. I.e., the distance between two k-dimensional partial frequency permutations, x and y, is defined as

Under Chebyshev distance, a ball of radius r centered at π is defined as B(r, π) = {ρ : d ∞ (ρ, π) ≤ r}. We can obtain B(r, π) from B(r, e) by rearranging the indices of the entries, therefore |B(r, π)| = |B(r, e)| for π ∈ S λ n . Let V ∞ (λ, n, d) be the size of a ball of radius d in S λ n under Chebyshev distance.

In this section, we give a recursive algorithm to enumerate all frequency permutations in B(d, e). First, we investigate e closely.

The above fact is useful to capture the frequency permutations that are d-close to e. Note that the set S = [-dλ + 1, dλ + λ] is independent of k. We give a recursive algorithm ENUMV λ,n,d in figure 1. It enumerates all frequency permutations π ∈ S λ n in B(d, e). It is a depth-first-search style algorithm. Basically, it first tries to put 1’s into λ proper vacant positions of π. Then, it tries to put 2’s, . . . , m’s into the partial frequency permutations recursively. According to fact 1, symbol k is assigned to positions of indices in [-dλ + 1, dλ + λ] ⊕ (kλλ), and these positions are said to be valid for k.

ENUMV λ,n,d takes an integer k and a subset P of [-dλ + 1, dλ + λ] as its input, and ENUMV λ,n,d uses an (n + 2dλ)dimensional vector π as a global variable. For convenience, we extend the index set of π to [-dλ+1, n+dλ] and every entry of π is initialized to 0, which indicates that the entry is vacant. We use P to trace the indices of valid vacant positions for symbol k, and the set of such positions is exactly P ⊕ (kλλ).

We call ENUMV λ,n,d (1, [dλ+λ]) to enumerate all frequency permutations which are d-close to e. During the enumeration, ENUMV λ,n,d (k, P ) assigns symbol k into some λ positions, indexed by X ⊕ (kλλ), of a partial frequency permutation, then it recursively invokes ENUMV λ,n,d (k + 1, X ′ ⊕ (-λ)) ∪ [dλ + 1, dλ + λ]), where X and X ′ form a partition of P and |X| = λ. After the recursive call is done, ENUMV λ,n,d (k, P )

for each partition (X, X ′ ) of P with |X| = λ do 3.

if X ′ ∩ (-∞, -dλ + λ] = ∅ then // Make sure it is a proper partition 4.

for i ∈ X ⊕ (kλλ) do 5.

for i ∈ X ⊕ (kλλ) do 9.

π i ← 0; // Reset π i to be vacant 1

…(Full text truncated)…

📸 Image Gallery

cover.png

Reference

This content is AI-processed based on ArXiv data.

Start searching

Enter keywords to search articles

↑↓
ESC
⌘K Shortcut