• 沒有找到結果。

藉由二元向量到排列的對映之排列碼建構法

N/A
N/A
Protected

Academic year: 2021

Share "藉由二元向量到排列的對映之排列碼建構法"

Copied!
55
0
0

加載中.... (立即查看全文)

全文

(1)

資訊工程學系

藉由二元向量到排列的對映之排列碼建構法

On the Construction of Permutation Arrays via

Mappings from Binary Vectors to Permutations

研 究 生:黃彥穎

指導教授:蔡錫鈞 教授

(2)

藉由二元向量到排列的對映之排列碼建構法

On the Construction of Permutation Arrays via

Mapppings from Binary Vectors to Permutations

研 究 生:黃彥穎

Student:Yen-Ying Huang

指導教授:蔡錫鈞

Advisor:Shi-Chun Tsai

國 立 交 通 大 學

資 訊 工 程 學 系

碩 士 論 文

A Thesis

Submitted to Department of Computer Science and Information Engineering College of Electrical Engineering and Computer Science

National Chiao Tung University in partial Fulfillment of the Requirements

for the Degree of Master

in

Computer Science and Information Engineering

August 2005

Hsinchu, Taiwan, Republic of China

(3)

藉由二元向量到排列的對映之排列碼建構法

學生:黃彥穎

指導教授

蔡錫鈞

國立交通大學資訊工程學系﹙研究所﹚碩士班

本論文中, 我們持續探討如何建構從二元向量到排列的對映. 我們成

功地建構出改善目前最好的排列碼邊界的對映. 由於建構這些對映的流

程大致相同, 我們提出一個如何建構這特定系列對映的大綱. 另外注意

到我們的對映可能不是保持長度相等, 我們將說明非保持長度對映存在

的必要性. 如果只使用保持長度的對映, 會失去很多可以改進的空間.

(4)

On The Construction of Permutation Arrays via

Mappings from Binary Vectors to Permutations

Student:Yen-Ying Huang

Advisors:Dr. Shi-Chun Tsai

Department of Computer Science and Information Engineering

National Chiao Tung University

Abstract

In this paper, we continue the study of constructing distance-increasing

mappings from binary vectors to permutations. We successfully construct

some mappings which induce better lower bounds for permutation codes than

the current existing one : P(n,r) ≥A(n,r-1). Since the approaches for

constructing our mappings are similar, we give a framework for constructing

a certain class of mappings. Note that our mappings may not be

length-preserving. We will show the necessity of non-length-preserving

mappings. We will lose many improvements if we only use length-preserving

mappings.

(5)

首先我要感謝我的指導教授蔡錫鈞老師, 在我就讀研究所的過程中, 經由他的指 導, 我逐漸了解做研究的方法和程序. 並且在老師的帶領下, 不斷地督促和提供新的 想法, 本論文才得以完成. 另外感謝口試委員呂及人博士和曾文貴教授批評指教, 點 出論文不足的地方和指引一些新的方向, 使得本論文更趨完整. 最後感謝吳信龍學長 的協助, 過去半年來不厭其煩地和我討論, 藉由他的幫助, 才使得主要論點一一浮現.

(6)

On the construction of permutation arrays via

mappings from binary vectors to permutations

Yen-Ying Huang

August 5, 2005

(7)
(8)

Contents

1 Introduction 5

1.1 Background . . . 5

1.2 Preliminaries and Notations . . . 6

1.3 Previous Results . . . 7

1.4 Our Results . . . 9

1.5 Organization of this paper . . . 9

2 Mappings from Zn 2 to Sn+k 11 2.1 Construction of F(n, 0, 0) . . . . 11 2.2 Construction of F(n, 1, 0) . . . . 14 2.3 Construction of F(n, d, 0, q) . . . . 19 2.4 Construction of F(n, 2, 1) . . . . 21 2.5 Construction of F(n, 3, 2) . . . . 30

2.6 A Framework for Constructing F(n, k + 1, k) . . . . 40

3 Application to Permutation Arrays 43 4 Conclusion and Future Works 47 4.1 Conclusion . . . 47

4.2 Future Works . . . 47

(9)
(10)

Chapter 1

Introduction

1.1

Background

A permutation array(PA) is a set of permutations of 1, 2, ..., n. From the combinatorial view, it is interesting to discuss the maximum size of PAs with given minimum distance. Early studies about PAs rose in the 70’s. [6] and [7] are the well-known papers from that period. In 2000, by Vinck [12] a new application of PAs to a coding/modulation scheme for communica-tion over power lines has leaded to the design of PAs, see also [9],[13],[14]. Thus the construction of PAs has gradually become more important. Re-cent discussions about the constructions of PAs are [4],[5],[8],[11],[15]. Since the permutation space is quite different from the Euclidean space which we are familiar with, it is not easy to have a systematic approach. Due to the unknown structure of permutation codes, we hope to investigate the permu-tation arrays by something we are familiar with : the M-ary codes. There are many good M-ary codes such as Reed-Soloman Codes etc. Suppose we have an efficient transformation from M-ary space to permutation space and vice versa. Then it is clear that we can construct a good permutation codes with desired minimum distance. This motivates the design of mappings from

M-ary vectors to permutations.

(11)

6 CHAPTER 1. INTRODUCTION

For the mappings preserving length and M = 2, there are some re-sults, see [3],[10],[2]. These papers introduced two kinds of mappings. One is the preserving mapping(DPM)[3] and the other is the distance-increasing mapping(DIM)[2]. Preciesly, an n-DPM is a mapping from binary vectors to permutations of the same length n such that if the Hamming distance of two binary strings is d0, then the Hamming distance of the

cor-responding permutations must be at least d0. A n-DIM is quite like n-DPM

except that when d0 is less than the length of the string, the Hamming

dis-tance of the images of this two binary strings must be larger than d0. Once

we have a DPM (respectively DIM) f , for any binary code C with minimum distance r, it is easy to see that the image of C, i.e. f (C), is a permutation array with minimum distance r,(respectively r + 1). Therefore by DPMs and DIMs, permutation arrays can be constructed straightly and the size of permutation codes can be bounded by the size of binary codes.

Why is DIM better than DPM? In order to construct a permutation code with minimum distance d0, we only need a binary code with minimum

distance d0 − 1 if we have a DIM. On the contrary, we need a binary code

with minimum distance d0 when we are only given a DPM. We know that

it is easier to construct a code with shorter minimum distance. From this point, our goal may be to construct a length-preserving mappings that is stronger than DIMs, that is a mapping which increases more distance than DIMs. However, this is not an easy task. In order to discuss the rest of the paper clearly, we introduce some necessary notations first.

1.2

Preliminaries and Notations

Let Sn denote the set of all permutations of Zn = {1, 2, · · · , n} and the set

Zn

q denote the set of all q-ary vectors of length n. For a permutation π =

1, · · · , πn) ∈ Sn, let π(i) = πi and π[i..j] denote that sub-array (πi, · · · , πj)

(12)

1.3. PREVIOUS RESULTS 7

π(j) = i then π−1(i) = j. The Hamming distance d

H(a, b) between two

n-tuples a = (a1, a2, · · · , an) and b = (b1, b2, · · · , bn) is the number of positions

where they differ, i.e.

dH(a, b) = |{j|aj 6= bj}|.

We now define a class of distance-increasing mappings from q-ary vectors to permutations.

Definition 1.2.1. For d ≤ n + k, an (n, d, k, q)-mapping f : Zn

q → Sn+k is a

mapping such that for all x, y ∈ Zn q,

dH(f (x), f (y)) ≥ dH(x, y) + d, if dH(x, y) ≤ (n + k) − d

dH(f (x), f (y)) = n + k, if dH(x, y) > (n + k) − d

Let F(n, d, k, q) denote the collection of all (n, d, k, q)-mappings.

Since we are more familiar with binary vectors, we simply ignore the last parameter q if q = 2, i.e. let F(n, d, k) denotes F(n, d, k, 2). Clearly, the collection of DPMs is equal to F(n, 0, 0) and the collection of DIMs in [2] is equal to F(n, 1, 0). Let nd,k,q be the smallest integer such that for n ≥ nd,k,q,

F(n, d, k, q) is not empty, and let md,k,q = nd,k,q + k, i.e. the smallest image

length. When we say that we have a series of F(n, d, k, q)

1.3

Previous Results

The concept of (n, 0, 0)-mappings(DPMs) was first proposed in [3]. But as the authors said, the inspiration came partly from the paper [9]. In [9], they found a (4, 0, 0)-mapping by computer search. Based on that mapping, they constructed (n, 0, 0)-mappings, for 5 ≤ n ≤ 8. However the method couldn’t be extended to n > 8. Later, the paper [3] generalized their results for n ≥ 4 and gave two kinds of recursive constructions of F(n, 0, 0): One is that when given an (m, 0, 0)-mapping g and an (n, 0, 0)-mapping h, de-fine f : Z2m+n → Sm+n as f (x1, · · · , xm+n) = (π1, · · · , πm, σ1+ m, · · · , σn+

(13)

8 CHAPTER 1. INTRODUCTION

(m + n, 0, 0)-mapping. Roughly speaking, it first concatenates the images of g and h then adjusts the values in the image of h. The other approach extends an (n − 1, 0, 0)-mapping one-bit long, i.e. given one (n − 1)-mapping

f , it constructs an (n, 0, 0)-mapping f0. Assume we have a permutation

π = (π1, π2, · · · , πn−1) ∈ Sn−1which is the image of a binary string s ∈ Z2n−1.

We extend s one bit long. If the extended bit is 0, then replace the value at the p-th entry with value n and append the replaced value to the right of π, and if the extend bit is 1, just append an entry of value n to the right of π. Later in [10], an alternative algorithm for constructing (n, 0, 0)-mappings of odd length was given.

In [2], a construction of (n, 1, 0)-mappings(DIMs) was given, which is sim-ilar to the first one in [3]. At the beginning, it does the two steps as that in [3] did. Then it starts to do some swap operations: if x1 = 1, swap π1 and

σn+ m, and if xm+1 = 1, swap πn and σ1+ m. These swap operations stands

in order to remedy a bad situation: given two strings s1, s2, the first m bits

are exactly the same, but the rest n bits are totally different(vice reverse). Concatenation is enough to produce an (m + n, 0, 0)-mapping when given an (m, 0, 0)-mapping g and an (n, 0, 0)-mapping h, but it is not enough to produce an (m+n, 1, 0)-mapping. In addition to swap operations, it becomes realized. Later the same author of [2] generalize the induction method for constructing (n, 1, 0)-mappings to (n, d, 0)-mappings, when d > 1, with only minor modification(more swap operations). The only problem is that to find the basis cases when d > 1 is really tough.

In both [3] and [2], the bound P (n, r) ≥ A(n, r − 1) was given, for n ≥ 4, where P (n, r) denotes the maximal size among all permutation codes of length n and minimum distance r, and A(n, r) denotes the maximal size among all binary codes. If one could construct the (n, d, 0)-mappings, for

d > 1, the bound would be P (n, r) ≥ A(n, r − d). Let md˜ be the smallest

(14)

1.4. OUR RESULTS 9

md˜≤ md+1˜ and A(n, r − ˜d − 1) > A(n, r − ˜d). Thus for md˜ ≤ n < md+1˜ ,

we can only apply P (n, r) ≥ A(n, r − ˜d), but for md+1˜ ≤ n, we can apply

P (n, r) ≥ A(n, r − ˜d − 1). We plot the best bound for P (n, r) induced by F(n, d, k) in the following diagram which we call the P (n, r)-diagram. In

Chapter 3, we will illustrate our results by the P (n, r)-diagram many times.

P (n, r) ≥ -m1 = 4 r m2 r m3 r mrd˜ md+1˜r

²A(n, r − 1) ¯²A(n, r − 2) ¯· · · ²A(n, r − ˜d) ¯

-md+1˜r md+2˜r mr−1

r

²A(n, r − ˜d − 1) ¯· · · ² A(n, 1)

1.4

Our Results

We successfully construct a series of F(n, 2, 1) and a series of F(n, 3, 2), and the bounds induced by F(n, 2, 1) and F(n, 3, 2) beat the current existing bound. Moreover we propose a framework for constructing F(n, k + 1, k). Follow the steps we state, a series of F(n, k + 1, k) might be built. As we involve one more parameter k, we show that by using the non-length-preserving mappings, there are many cases with the bound improved. In other words, several improvements will be lost if we abandon non-length-preserving mappings.

1.5

Organization of this paper

In Chapter 2, we discuss the constructions of F(n, d, k) of different settings of (d, k). First we give an alternative construction of F(n, 0, 0). Second we give two new constructions of F(n, 1, 0) by using the substitution technique.

(15)

10 CHAPTER 1. INTRODUCTION

Third we give the constructions of F(n, 2, 1) and F(n, 3, 2), and propose a framework for constructing F(n, k + 1, k). In Chapter 3, we show how the bound induced by F(n, 2, 1) and F(n, 3, 2) beats the previous bound, and the reason why we should discuss the F(n, d, k) of different settings of (n, k) rather than just F(n, d, 0). In Chapter 4, we will talk about the possible future works and make some conclusions.

(16)

Chapter 2

Mappings from Z

2

n

to S

n+k

In this chapter, we discuss the constructions of various kinds of (n, d, k)-mappings, including constructions of basis cases and induction methods. These mappings are useful for constructing permutation arrays. We will discuss these applications in Chapter 3.

2.1

Construction of F(n, 0, 0)

In [3], we have already known two kinds of recursive constructions of (n, 0, 0)-mappings: given one (m, 0, 0)-mapping g and one (n, 0, 0)-mapping h, con-structing an (m + n, 0, 0)-mapping f , and given an (n − 1, 0, 0)-mapping g, constructing an (n, 0, 0)-mapping f . In this section we give a new construc-tion method which is similar to the second one in [3]. We prove by Lemma 2.1.1.

Lemma 2.1.1. [3] Given g ∈ F(n − 1, 0, 0) and f : Zn

2 → Sn, if f satisfies

the following inequality, for all x, y ∈ Z2n−1, and xn, yn= 0 or 1:

dH(f (x, xn), f (y, yn)) ≥ dH(g(x), g(y)) + dH(xn, yn) (∗)

then f ∈ F(n, 0, 0).

Our construction mainly depends on a switching operation. Assume we have a permutation π = (π1, π2, · · · , πn−1) ∈ Sn−1 which is the image of a

(17)

12 CHAPTER 2. MAPPINGS FROM ZN

2 TO SN +K

binary string s. If we extend s one bit long, we want π to be also extended one bit long. The idea is that if the extended bit is 0, then replace value

n − 1 with n and append a entry of value n − 1 to the right of π, and if the

extend bit is 1, just append a entry of value n to the right of π. The formal definition is as follows.

Definition 2.1.2. We define an operation p, which assigns new value to each entry of a n-tuple according to the relative ordering of their original values. For (π1, π2, · · · , πn−1) ∈ Sn−1, assume πk = n − 1. Define p : Sn−1× {0, 1} →

Sn by

p(π1, · · · , πk−1, n−1, πk+1, · · · , πn−1, 0) = (π1, · · · , πk−1, n, πk+1, · · · , πn−1, n−1),

p(π1, · · · , πk−1, n−1, πk+1, · · · , πn−1, 1) = (π1, · · · , πk−1, n−1, πk+1, · · · , πn−1, n).

Construction 2.1.3. Let g ∈ F(n − 1, 0, 0). Define f : Zn

2 → Sn by

f (x, i) = p(g(x), i), x ∈ Zn−1

2 , i = 0, 1

where p is the operation defined above. Then f ∈ F(n, 0, 0).

Proof. (correctness of Construction 2.1.3)

Let (x, xn), (y, yn) ∈ Z2n, where x, y ∈ Z2n−1. Let g(x) = ρ = (ρ1, ρ2, · · · , ρn−1)

and assume ρi = n − 1. Let g(y) = τ = (τ1, τ2, · · · , τn−1) and assume

τj = n − 1. We consider the following cases according to the values of xnand

(18)

2.1. CONSTRUCTION OF F(N, 0, 0) 13 Case [xn= yn = k]: dH(f (x, 0), f (y, 0)) = dH(p(g(x), 0), p(g(y), 0)) = dH((ρ[1..i−1], n, ρ[i+1..n−1], n − 1), (τ[1..j−1], n, τ[j+1..n−1], n − 1)) = dH(g(x), g(y)). dH(f (x, 1), f (y, 1)) = dH(p(g(x), 1), p(g(y), 1)) = dH((ρ[1..n−1], n), (τ[1..n−1], n)) = dH(g(x), g(y)). ⇒ dH(p(g(x), k), p(g(y), k)) = dH(g(x), g(y)). Case [xn= 1, yn= 0]: If i = j dH(f (x, 1), f (y, 0)) = dH(p(g(x), 1), p(g(y), 0))

= dH((ρ[1..i−1], n − 1, ρ[i+1..n−1], n), (τ[1..i−1], n, τ[i+1..n−1], n − 1)))

= dH(g(x), g(y)) + 2. If i 6= j dH(f (x, 1), f (y, 0)) = dH(p(g(x), 1), p(g(y), 0)) = dH((ρ[1..i−1], n − 1, ρ[i+1..n−1], n), (τ[1..j−1], n, τ[j+1..n−1], n − 1))) = dH(g(x), g(y)) + 1.

(19)

14 CHAPTER 2. MAPPINGS FROM ZN

2 TO SN +K

Case [xn= 0, yn= 1]:

Symmetrically, we have dH(f (x, xn), f (y, yn)) ≥ dH(g(x), g(y)) + 1.

⇒ dH(p(g(x), k), p(g(y), k) ≥ dH(g(x), g(y)) + 1.

The inequality (*) holds for all cases, thus we have f ∈ F(n, 0, 0).

2.2

Construction of F(n, 1, 0)

In [2], given an (m, 1, 0)-mapping g, and an (n, 1, 0)-mapping h, through concatenation with some switchings, an (m + n, 1, 0)-mapping f can be con-structed. However the method needs many basis cases. In this section, we will use the substitution technique to give a new construction of F(n, 1, 0), and our methods need fewer basis cases than that in [2]. We give two almost-sequential constructions of (n, 1, 0)-mappings. We give the first one below. As it is known that the smallest integer n0 such that for n ≥ n0, F(n, 1, 0)

is not empty is 4. The goal is that, given an (4, 1, 0)-mapping h and an (n, 1, 0)-mapping g, we will construct an (n + 3, 1, 0)-mapping f . Our main idea is that when given a binary string of length n + 3, make the first n bits as the input of g, and the last 4 bits as the input of h. Note that the n-th bit is taken as input bit for both g and h.

Construction 2.2.1. Let g ∈ F(n, 1, 0) and h ∈ F(4, 1, 0). By the following algorithm, a mapping f ∈ F(n + 3, 1, 0) is constructed.

Input: (x1, · · · , xn, · · · , xn+3) ∈ Z2n+3 Output: (π1, · · · , πn+3) = f (x1, · · · , xn+3) begin 0 Let ρ = g(x1, · · · , xn), τ = h(xn, · · · , xn+3) 1 τi = τi+ n − 1, for 1 ≤ i ≤ 4 2 ττ−1(n)= ρn

(20)

2.2. CONSTRUCTION OF F(N, 1, 0) 15 3 1, · · · , πn−1) = ρ[1..n−1] 4 (πn, · · · , πn+3) = τ[1..4] end Example 2.2.2. Let g(0, 1, 0, 0, 1) = (1, 5, 2, 4, 3), h(1, 1, 0, 1) = (2, 4, 1, 3). Then f (0, 1, 0, 0, 1, 1, 0, 1) = (1, 5, 2, 4, 6, 8, 3, 7)

Proof. (correctness of Construction 2.2.1)

First note that ρi ∈ {1, · · · , n}, and after line 1, τi ∈ {n, · · · , n + 3}. But

at line 2, the value n of τ is substituted with ρn. Thus the rest values in τ

range from n + 1 to n + 3.

Let (x, w), (y, z) ∈ Z2n+3, where x, y ∈ Zn

2, and w, z ∈ Z23. Let g(x) =

ρ = (ρ1, · · · , ρn), g(y) = ρ0 = (ρ01, · · · , ρ0n), h(xn, w) = τ = (τ1, · · · , τ4),

and h(yn, z) = τ0 = (τ10, · · · , τ40). And f (x, w) = π = (π1, · · · , πn+3),

f (y, z) = π0 = (π0

1, · · · , π0n+3).

Now we explain the effect of the operation at line 2. Since ρn and ρ0n are

from {1, · · · , n}, after the substitution, if τ−1(n) = τ0−1(n) then ρ

n and ρ0n

are still in the same coordinate and the distance of this coordinate is at least preserved, else ρnand ρ0ncorrespond to a value from {n+1, · · · , n+3}. Thus

after substituting operation at line 2, the distance dH(τ, τ0) won’t decrease.

Next we consider the following cases:

case dH(x, y) = 0: We know that dH(w, z) 6= 0, otherwise (x, w), (y, z)

are identical. Let dH(w, z) = t ≤ 3. dH(x, y) = 0 implies that xn =

yn. So dH((xn, w), (yn, z)) = t ≤ 3. Since h ∈ F(4, 1, 0), we have

dH(τ, τ0) ≥ t + 1. Therefore dH(π, π0) ≥ t + 1 = dH((x, w), (y, z)) + 1.

case 0 < dH(x, y) = s < n: In this case, we have dH(ρ, ρ0) ≥ s + 1, thus

dH(ρ[1..n−1], ρ0[1..n−1]) ≥ s. Let dH(w, z) = t. If xn = yn and t = 0, it is

easy to see dH(π, π0) ≥ s + 1 = dH((x, w), (y, z)) + 1. If xn = yn and

(21)

16 CHAPTER 2. MAPPINGS FROM ZN

2 TO SN +K

dH((x, w), (y, z)) + 1. If xn 6= yn, no matter what value t is, dH(τ, τ0) ≥

t + 1. Therefore dH(π, π0) ≥ s + (t + 1) = dH((x, w), (y, z)) + 1.

case dH(x, y) = n: If dH(w, z) = t ≤ 2, then dH((xn, w), (yn, z)) =

t + 1 ≤ 3. By the definition dH(τ, τ0) ≥ t + 2. Therefore dH(π, π0) ≥

(n − 1) + (t + 2) = dH((x, w), (y, z)) + 1. If dH(w, z) = 3, it is easy to

check that dH(π, π0) = n + 3.

We can simply generalize Construction 2.2.1 for the q-ary edition. Miner modifications are needed for the proof above. We will show the statement next section.

Through Construction 2.2.1, if we have three basis cases, we can construct a series of F(n, 1, 0). Next we give another almost-sequential construction method which extend 2-bit longer from the basis mapping. We will use an auxiliary mapping E as help.

Construction 2.2.3. Let g ∈ F(n, 1, 0) and E defined as follows:

x E(x) x E(x) x E(x) x E(x)

00 (1, 2, 3) 10 (2, 1, 3) 01 (1, 3, 2) 11 (3, 1, 2)

Note that E ∈ F(2, 1, 1) and value 1 in any permutation in E(Z2 2) only

appears in coordinate 1 or coordinate 2. By the following algorithm, a map-ping f ∈ F(n + 2, 1, 0) is constructed. Input: (x1, · · · , xn, · · · , xn+2) ∈ Z2n+2 Output: (π1, · · · , πn+2) = f (x1, · · · , xn+2) begin 0 Let ρ = g(x1, · · · , xn), τ = E(xn+1, xn+2) 1 τi = τi+ n − 1, for 1 ≤ i ≤ 3 2 ττ−1(n)= ρn

(22)

2.2. CONSTRUCTION OF F(N, 1, 0) 17

3 1, · · · , πn−1) = ρ[1..n−1]

4 (πn, · · · , πn+2) = τ[1..3]

5 if x1 = 1 then swap (π1, πn+2)

end

Proof. (correctness of Construction 2.2.3) First note that ρi ∈ {1, · · · , n},

and after line 1, τi’s range from n to n + 2. Since either τ1 or τ2 equals to n,

τ3 equals to n + 1 or n + 2.

Let x, y ∈ Z2n+2. Let B(x[1..n]) = ρ = (ρ1, · · · , ρn), B(y[1..n]) = ρ0 =

(ρ0

1, · · · , ρ0n), E(xn+1, xn+2) = τ = (τ1, τ2, τ3), and E(yn+1, yn+2) = τ0 =

(τ0

1, τ20, τ30). And f (x) = π = (π1, · · · , πn+2), f (y) = π0 = (π01, · · · , πn+20 ).

Let’s first explain the change of the distance due to the swap step at line 5. If both x1 = 1 and y1 = 1 or both x1 = 0 and y1 = 0, the distance of these

two coordinates remains the same. If exact one of x1 and y1 equals to 1, as

we know that the possible values of π1 and π01range from 1 to n and πn+2and

π0

n+2 equal to n + 1 or n + 2, thus the distance of these two coordinates won’t

decrease. Therefore after the swap step the distance of this two coordinates is at least the same as before. In some cases, the distance even grows up. Thus for the rest part of our proof, we won’t discuss the effect due to the swap step if not necessary.

Now we explain the effect of the operation at line 2. Since the values of ρn

and ρ0

n fall between 1 and n, after the substitution, if τ−1(n) = τ0−1(n) then

ρn and ρ0n are still in the same coordinate and the distance of this coordinate

is at least preserved, else ρn and ρ0n correspond to n + 1 or n + 2. Thus after

substituting operation at line 2, the distance dH(τ, τ0) won’t decrease.

Now we consider the following cases:

case dH(x[1..n], y[1..n]) = 0: We know that dH((xn+1, xn+2), (yn+1, yn+2)) 6=

(23)

18 CHAPTER 2. MAPPINGS FROM ZN

2 TO SN +K

E ∈ F(2, 1, 1), we have dH(τ, τ0) ≥ t + 1. Therefore d(π, π0)) ≥ t + 1 =

dH(x, y) + 1.

case 0 < dH(x[1..n], y[1..n]) = s < n: Since g ∈ F(n, 1, 0), we have

dH(ρ, ρ0) ≥ s + 1. If dH((xn+1, xn+2), (yn+1, yn+2)) = 0, it is easy to see

that dH(π, π0) ≥ s+1 = dH(x, y)+1. If dH((xn+1, xn+2), (yn+1, yn+2)) =

t(= 1 or 2), then dH(τ, τ0) ≥ t + 1. dH(π, π0) = dH(π[1..n−1], π0[1..n−1]) +

dH(π[n..n+2], π[n..n+2]0 ) ≥ s + (t + 1) = dH(x, y) + 1.

case dH(x[1..n], y[1..n]) = n: Let dH((xn+1, xn+2), (yn+1, yn+2)) = t. If t =

0, before line 5, dH(π, π0) = n and πn+2= πn+20 . Since dH(x[1..n], y[1..n]) =

n, x1 6= y1, one of the permutations will be swapped. Therefore after

line 5, dH(π, π0) = n+1(now πn+2 6= π0n+2). If t = 1, then dH(ρ, ρ0) = 2.

Before the substitution, suppose value n in ρ does correspond to value

n in ρ0, then after the substitution , d

H(ρ, ρ0) = 3(since πn 6= πn0).

Therefore dH(π, π0) = (n − 1) + 3 ≥ dH(x, y) + 1. Suppose value n in ρ

does not correspond to value n in ρ0, then ρ

3 = ρ03. The remain proof

is the same as the case when t = 0. If t = 2, then dH(ρ, ρ0) = 3. It is

easy to check that dH(π, π0) = n + 2.

By Construction 2.2.3, we will only need two basis cases to fulfill a se-ries of F(n, 1, 0). The number of basis cases needed is fewer than that by Construction 2.2.1. But as we have already said, Construction 2.2.1 can be generalized to the q-ary edition. That is its advantage. Compare our almost-sequential induction methods with the concatenation method in [2], from the aspect of construction time, our constructions run slowlier. Nevertheless the number of basis cases needed in [2] is at least 4. If Construction 2.2.3 is adopted, we save almost half of the space.

The swap operation will be used very often for the rest constructions in this chapter. From the previous discussion, as long as the ranges of the values

(24)

2.3. CONSTRUCTION OF F(N, D, 0, Q) 19

of these two swapped coordinate don’t intersect, the distance of these two coordinates won’t decrease. Therefore after many swap steps the distance of these coordinates is at least the same as before. Thus for all the remaining proofs, we won’t discuss the effect due to the swap operations if not necessary.

2.3

Construction of F(n, d, 0, q)

As we said in previous section, Construction 2.2.1 can be generalized to the q-ary edition. Next we show the statement without proof. We simply use md,q

instead of md,k,q defined in the preliminary only in this section for convenient.

Construction 2.3.1. Let m = m1,q. Let g ∈ F(n, 1, 0, q) and h ∈ F(m, 1, 0, q).

We construct a mapping f ∈ F(n+m−1, 1, 0, q). The construction algorithm is exact the same as that in Construction 2.2.1.

In fact, we can even generalize Construction 2.3.1 to the d-distance-increasing edition. But there are some limitations about the choice of the mapping h.

Construction 2.3.2. Let g ∈ F(n, d, 0, q). And let m be the smallest integer such that the function h ∈ F(m, d, 0, q) with the following limitations exists: ∀i, j, 1 ≤ i, j ≤ d, i 6= j, {π−1(i)|π ∈ h(Zm

2 )} ∩ {π−1(j)|π ∈ h(Z2m)} = ∅.

By the following algorithm, a mapping f ∈ F(n+m−d, d, 0, q) is constructed. Input: (x1, · · · , xn, · · · , xn+m−d) ∈ Zqn+m−d

Output: (π1, · · · , πn+m−d) = f (x1, · · · , xn+m−d)

begin

0 Let ρ = g(x1, · · · , xn), τ = h(xn−d+1, · · · , xn+m−d)

1 τi = τi+ n − d, for 1 ≤ i ≤ m

2 ττ−1(n−d+i) = ρn−d+i, for 1 ≤ i ≤ d

3 1, · · · , πn−d) = ρ[1..n−d]

4 (πn+1−d, · · · , πn+m−d) = τ[1..m]

(25)

20 CHAPTER 2. MAPPINGS FROM ZN

2 TO SN +K

Proof. (correctness of Construction 2.3.2) First note that ρi’s range from

1 to n, and after line 1, and τi’s range from n − d + 1 to n − d + m. But at

line 2, value n − d + i of τ is substituted by ρn−d+i, for 1 ≤ i ≤ d. The rest

values in τ range from n + 1 to n − d + m.

Let (x, w), (y, z) ∈ Zn+m−d

q , where x, y ∈ Zqn, and w, z ∈ Z2m−d. Let

g(x) = ρ = (ρ1, · · · , ρn), g(y) = ρ0 = (ρ01, · · · , ρ0n), h(x[n−d+1..n], w) = τ =

1, · · · , τm), and h(y[n−d+1..n], z) = τ0 = (τ10, · · · , τm0 ). And f (x, w) = π =

1, · · · , πn+m−d), f (y, z) = π0 = (π01, · · · , π0n+m−d).

Now we dicuss the effect of the operation at line 2. Since the values of

ρn−d+i and ρ0n−d+i are from {1, · · · , n}, after the substitution, if τ−1(n − d +

i) = τ0−1(n − d + i), then ρ

n−d+i and ρ0n−d+i are still in the same

coordi-nate and the distance of this coordicoordi-nate is at least preserved, else ρn−d+i and

ρ0

n−d+i correspond to a value from {n + 1, · · · , n − d + m} (note that value

n − d + j, for 1 ≤ j ≤ d, i 6= j is impossible, since value n − d + j must not

be in the coordinate where value n − d + i lies due to the limitations). Thus after substituting operation at line 2, the distance dH(τ, τ0) won’t decrease.

Next we consider the following cases:

case dH(x, y) = 0: We know that dH(w, z) 6= 0, otherwise (x, w), (y, z)

are identical. Let dH(w, z) = t ≤ m − d. dH(x, y) = 0 implies that

x[n−d+1..n] = y[n−d+1..n]. So dH((x[n−d+1..n], w), (y[n−d+1..n], z)) = t ≤

m − d. Since h ∈ F(m, d, 0, q), we have dH(τ, τ0) ≥ t + d. Therefore

d(π, π0) ≥ t + d = d

H((x, w), (y, z)) + d.

case 0 < dH(x, y) = s ≤ n − d: We have dH(ρ, ρ0) ≥ s + d, thus

dH(ρ[1..n−1], ρ0[1..n−1]) ≥ s. Let dH(x[n−d+1..n], y[n−d+1..n]) = c and dH(w, z)

= t. If c = 0 and t = 0, it is easy to see dH(π, π0) ≥ s + d =

dH((x, w), (y, z))+d. If c = 0 and 0 < t ≤ m−d, then dH(τ, τ0) ≥ t+d.

(26)

2.4. CONSTRUCTION OF F(N, 2, 1) 21

no matter what value t is, dH(τ, τ0) ≥ t + d. Therefore dH(π, π0) ≥

s + (t + d) = dH((x, w), (y, z)) + d.

case n − d + 1 ≤ dH(x, y) ≤ n: We know that dH(ρ, ρ0) = n, thus

dH(ρ[1..n−d], ρ0[1..n−d]) = n − d. Let dH(x[n−d+1..n], y[n−d+1..n]) = c. c is at least 1, otherwise dH(x, y) ≤ n − d, If dH(w, z) = t ≤ m − d − c, then dH((x[n−d+1..n], w), (y[n−d+1..n], z)) = t + c ≤ m − d. By the definition dH(τ, τ0) ≥ t + c + d. Therefore dH(π, π0) ≥ (n − d) + (t + c + d) ≥ dH((x, w), (y, z)) + d. If dH(w, z) > m − d − c, then dH((x[n−d+1..n], w), (y[n−d+1..n], z)) = t + c > m − d. By definition

dH(τ, τ0)) = m. It is easy to check that dH(π, π0) = n − d + m.

Although Construction 2.3.2 is really general, there are still many obsta-cles. First it is hard to find the mappings h when d > 1. Second it is also not easy to figure out the basis cases when d > 1. What we are discussing is only theoretical. But once these mappings have been found, a series of

F(n, d, 0, q) are easily produced.

2.4

Construction of F(n, 2, 1)

In this section, we give a systematic study on the construction of the class,

F(n, 2, 1). First we will give the basic constructions: g6 ∈ F(6, 2, 1), g7

F(7, 2, 1), g8 ∈ F(8, 2, 1), g9 ∈ F(9, 2, 1). Then, we can inductively construct

gn+4 ∈ F(n + 4, 2, 1) from a mapping gn∈ F(n, 2, 1). Thus finally we have a

series of F(n, 2, 1), for n ≥ 6.

Consider two auxiliary mappings A6 ∈ F(2, 2, 2) and B6 ∈ F(4, 2, 2). We

construct g6 with these two mappings. Similarly, for each of g7, g8 and g9,

we will use two auxiliary mappings for the constructions. Note that in the image of A6, 4 only appears in coordinate 1 or 2 . Similarly, in the image

(27)

22 CHAPTER 2. MAPPINGS FROM ZN

2 TO SN +K

appears in coordinate 3 or 4. We call such property the position property and we give the formal definition as follows.

Definition 2.4.1. We say that a mapping f ∈ F(n, d, k, q) has the position property for {v1, v2, · · · , vp} ⊆ {1, 2, · · · , n+k} if ∀i, 1 ≤ i ≤ p, |{π−1(vi)|π ∈

f (Zn

2)}| = 2 and ∀i, j, 1 ≤ i, j ≤ p, i 6= j, {π−1(vi)|π ∈ f (Z2n)} ∩ {π−1(vj)|π ∈

f (Zn

2)} = ∅.

A6 has the position property for {4} and B6 has the position property for

{1, 2}. With this observation, we can construct a mapping g6 ∈ F(6, 2, 1).

Construction 2.4.2. Let A6 : Z22 → S4 and B6 : Z24 → S6defined as follows:

x A6(x) x A6(x) 00 (1, 4, 3, 2) 10 (4, 2, 3, 1) 01 (2, 4, 1, 3) 11 (4, 1, 2, 3) x B6(x) x B6(x) 0000 (1, 3, 2, 4, 5, 6) 1000 (3, 1, 2, 5, 4, 6) 0001 (1, 3, 2, 5, 6, 4) 1001 (3, 1, 2, 4, 6, 5) 0010 (1, 3, 5, 2, 4, 6) 1010 (3, 1, 4, 2, 5, 6) 0011 (1, 3, 4, 2, 6, 5) 1011 (3, 1, 5, 2, 6, 4) 0100 (1, 5, 2, 6, 4, 3) 1100 (4, 1, 2, 6, 5, 3) 0101 (1, 4, 2, 6, 3, 5) 1101 (5, 1, 2, 6, 3, 4) 0110 (1, 4, 6, 2, 5, 3) 1110 (5, 1, 6, 2, 4, 3) 0111 (1, 5, 6, 2, 3, 4) 1111 (4, 1, 6, 2, 3, 5)

By the following algorithm, a mapping g6 ∈ F(6, 2, 1) is constructed.

Input: (x1, x2, · · · , x6) ∈ Z26

Output: (π1, · · · , π7) = g6(x1, · · · , x6)

begin

(28)

2.4. CONSTRUCTION OF F(N, 2, 1) 23 1 τi = τi+ 1 for 1 ≤ i ≤ 6; 2 ρρ−1(4) = τ6; 3 ττ−1(2) = ρ3; 4 ττ−1(3) = ρ4; 5 1, π2) = ρ[1..2]; 6 3, π4, π5, π6, π7) = τ[1..5]; end

Besides the position property, B6holds another property that if the

Ham-ming distance of two binary vectors is 3, then the 5th entries of the images must be different, i.e. for x, y ∈ Z4

2, if dH(x, y) = 3, then B6(x)5 6= B6(y)5.

Any mapping holds these properties could be B6.

Similar to [2], given g ∈ F(2, n, 1), let Dn×(n+1) denote the distance

ex-pansion matrix where Dij represents the number of all unordered pairs {x, y},

x, y ∈ Zn

2 such that dH(x, y) = i and dH(g(x), g(y)) = j. The expansion

ma-trix not only reveal the distance-increasing property, but also helps us to check the correctness. If you implement Construction 2.4.2, you will get the same distance expansion matrix. Our D is a little bit different from those in previous works. Our D is an n × (n + 1) matrix, instead of n × n matrix. Since the permutations in the range of g is one dimension larger than the domain of g. We show the distance expansion matrix D for g6 is as follows:

0 0 128 64 0 0 0 0 0 232 88 120 40 0 0 160 384 96 0 0 192 288 0 0 192 0 32

Construction 2.4.3. Let A7 : Z23 → S5 is defined as follows and B7 is the

(29)

24 CHAPTER 2. MAPPINGS FROM ZN 2 TO SN +K x A7(x) x A7(x) 000 (1, 5, 3, 4, 2) 100 (5, 2, 1, 4, 3) 001 (1, 5, 4, 2, 3) 101 (5, 3, 2, 4, 1) 010 (2, 5, 3, 1, 4) 110 (5, 4, 1, 3, 2) 011 (2, 5, 4, 3, 1) 111 (5, 1, 2, 3, 4)

By the following algorithm, a mapping g6 ∈ F(6, 2, 1) is constructed.

Input: (x1, x2, · · · , x7) ∈ Z27 Output: (π1, · · · , π8) = g7(x1, · · · , x7) begin 0 ρ = A7(x1, x2, x3); τ = B7(x4, x5, x6, x7); 1 τi = τi+ 2 for 1 ≤ i ≤ 6; 2 ρρ−1(5) = τ6; 3 ττ−1(3) = ρ4; 4 ττ−1(4) = ρ5; 5 1, π2, π3) = ρ[1..3]; 6 4, π5, π6, π7, π8) = τ[1..5]; 7 if x1 = 1 then swap (π3, π8); end

In fact, B7could be simpler than B6, any mapping that holds the position

property would work. The distance expansion matrix D for g7 is as follows:

0 0 256 128 32 32 0 0 0 0 448 208 336 272 80 0 0 224 912 736 368 0 0 224 1184 832 0 0 320 1024 0 0 448 0 64

(30)

2.4. CONSTRUCTION OF F(N, 2, 1) 25 Construction 2.4.4. Let A8 : Z24 → S6 is defined as follows and B8 is the

same as B7. x A8(x) x A8(x) 0000 (1, 6, 3, 4, 5, 2) 1000 (6, 2, 1, 4, 5, 3) 0001 (1, 6, 3, 5, 2, 4) 1001 (6, 2, 3, 1, 5, 4) 0010 (1, 6, 4, 2, 5, 3) 1010 (6, 4, 5, 1, 2, 3) 0011 (1, 6, 4, 3, 2, 5) 1011 (6, 2, 4, 3, 1, 5) 0100 (2, 6, 5, 4, 3, 1) 1100 (6, 3, 2, 4, 5, 1) 0101 (2, 6, 3, 5, 4, 1) 1101 (6, 3, 2, 5, 1, 4) 0110 (3, 6, 1, 2, 4, 5) 1110 (6, 4, 1, 2, 3, 5) 0111 (3, 6, 5, 2, 1, 4) 1111 (6, 1, 2, 3, 4, 5)

By the following algorithm, a mapping g8 ∈ F(8, 2, 1) is constructed.

Input: (x1, x2, · · · , x8) ∈ Z28 Output: (π1, · · · , π9) = g8(x1, · · · , x8) begin 0 ρ = A8(x1, · · · , x4), τ = B8(x5, · · · , x8); 1 τi = τi+ 3, for 1 ≤ i ≤ 6; 2 ρρ−1(6) = τ6; 3 ττ−1(4) = ρ5; 4 ττ−1(5) = ρ6; 5 1, · · · , π4) = ρ[1..4]; 6 5, · · · , π9) = τ[1..5]; 7 if x1 = 1 then swap (π3, π9); end

Like B7, any mapping that satisfies the position property could be B8. A8

holds another property that if the Hamming distance of two binary vectors is 3, then the 4th entries of the images must be different, i.e. for x, y ∈ Z4

2,

(31)

26 CHAPTER 2. MAPPINGS FROM ZN 2 TO SN +K g8 is as follows: 0 0 432 384 144 48 16 0 0 0 0 1008 368 696 912 472 128 0 0 464 1416 2512 2088 688 0 0 320 2368 3936 2336 0 0 352 3088 3728 0 0 592 2992 0 0 1024 0 128

Construction 2.4.5. Let A9 is the same as A8 and B9 : Z25 → S7 is defined

as follows: x B9(x) x B9(x) 00000 (1, 3, 2, 4, 5, 6, 7) 10000 (3, 1, 2, 4, 6, 5, 7) 00001 (1, 3, 2, 4, 6, 7, 5) 10001 (7, 1, 2, 5, 3, 4, 6) 00010 (1, 3, 2, 5, 7, 6, 4) 10010 (4, 1, 2, 3, 7, 5, 6) 00011 (1, 3, 2, 5, 4, 7, 6) 10011 (5, 1, 2, 4, 3, 7, 6) 00100 (1, 3, 4, 2, 6, 5, 7) 10100 (3, 1, 4, 2, 5, 6, 7) 00101 (1, 3, 7, 2, 5, 4, 6) 10101 (4, 1, 7, 2, 3, 6, 5) 00110 (1, 3, 6, 2, 7, 5, 4) 10110 (7, 1, 3, 2, 5, 6, 4) 00111 (1, 4, 3, 2, 5, 7, 6) 10111 (7, 1, 3, 2, 4, 5, 6) 01000 (1, 5, 2, 3, 6, 4, 7) 11000 (3, 1, 2, 6, 7, 4, 5) 01001 (1, 4, 2, 7, 6, 3, 5) 11001 (6, 1, 2, 7, 3, 4, 5) 01010 (1, 4, 2, 6, 7, 5, 3) 11010 (5, 1, 2, 6, 7, 3, 4) 01011 (1, 5, 2, 6, 3, 7, 4) 11011 (5, 1, 2, 7, 4, 3, 6) 01100 (1, 6, 4, 2, 7, 3, 5) 11100 (4, 1, 5, 2, 6, 3, 7) 01101 (1, 6, 5, 2, 3, 4, 7) 11101 (5, 1, 7, 2, 6, 4, 3) 01110 (1, 5, 6, 2, 4, 3, 7) 11110 (6, 1, 5, 2, 7, 3, 4) 01111 (1, 6, 5, 2, 4, 7, 3) 11111 (5, 1, 6, 2, 4, 7, 3)

(32)

2.4. CONSTRUCTION OF F(N, 2, 1) 27

By the following algorithm, a mapping g9 ∈ F(9, 2, 1) is constructed.

Input: (x1, x2, · · · , x9) ∈ Z29 Output: (π1, · · · , π10) = g9(x1, · · · , x9) begin 0 ρ = A9(x1, · · · , x4); τ = B9(x5, · · · , x9); 1 τi = τi+ 3, for 1 ≤ i ≤ 6; 2 ρρ−1(6) = τ7; 3 ττ−1(4) = ρ5; 4 ττ−1(5) = ρ6; 5 1, · · · , π4) = ρ[1..4]; 6 5, · · · , π10) = τ[1..6]; 7 if x1 = 1 then swap (π3, π9); 8 if x5 = 1 then swap (π4, π10); end

There is no other limitations about B9 as long as the position property

is satisfied. The distance expansion matrix D for g9 is as follows:

0 0 672 704 560 240 128 0 0 0 0 0 1088 1428 1480 2122 1628 1094 376 0 0 944 1402 4370 6478 5590 2720 0 0 270 2522 8390 11998 9076 0 0 134 4284 12118 15720 0 0 474 5884 15146 0 0 976 8240 0 0 2304 0 256

Next we show how to construct a mapping gn+4 ∈ F(n + 4, 2, 1)

induc-tively from a mapping gn∈ F(n, 2, 1). To do that, we reapply the auxiliary

(33)

28 CHAPTER 2. MAPPINGS FROM ZN

2 TO SN +K

position property. We denote it as E. We give the algorithm below and then proof the correctness.

Algorithm 2.4.6. Input: (x1, · · · , xn, · · · , xn+4) ∈ Z2n+4 Output: (π1, · · · , πn+5) = gn+4(x1, · · · , xn+4) begin 0 ρ = gn(x1, · · · , xn); τ = E(x1, x2, x3, x4); 1 τi = τi+ n − 1, for 1 ≤ i ≤ 6; 2 ττ−1(n)= ρn; 3 ττ−1(n+1) = ρn+1; 4 (π1, · · · , πn−1) = ρ[1..n−1]; 5 (πn, · · · , πn+5) = τ[1..6]; 6 if x1 = 1 then swap (π1, πn+4); 7 if x2 = 1 then swap (π2, πn+5); end Theorem 2.4.7. gn+4 ∈ F(n + 4, 2, 1), for n ≥ 6.

Proof. First note that after line 1, ρi ∈ {1, · · · , n + 1}, for i = 1 to n + 1

and τi ∈ {n, · · · , n + 5}, for i = 1 to 6. But at line 2 and 3, the value n in

τ is replaced by ρn and the value n + 1 in τ by ρn+1. The other values in τ

range from n+2 to n+5. Thus the swap operation can be taken successfully.

Let (x, w) and (y, z) ∈ Zn+4

2 , where x, y ∈ Z2n, and w, z ∈ Z24. Let gn(x) =

ρ = (ρ1, · · · , ρn+1), gn(y) = ρ0 = (ρ10, · · · , ρ0n+1), B7(w) = τ = (τ1, · · · , τ6),

and B7(z) = τ0 = (τ10, · · · , τ60). And gn+4(x, w) = π = (π1, · · · , πn+5),

gn+4(y, z) = π0 = (π01, · · · , π0n+5). We illustrate the transforms of these two

strings in the following diagram.

n 4

y z

(34)

2.4. CONSTRUCTION OF F(N, 2, 1) 29

=⇒

line 0 n + 1 6 ρ0 τ0 ρ τ

=⇒

line 1,2,3 n − 1 6 ρ0 [1..n−1] new τ0 ρ[1..n−1] new τ

=⇒

line 4,5 n + 5 π0 π

Now we explain the effect of the operation at line 2. Since the values of ρn

and ρ0

nare from {1, · · · , n+1}, after the substitution, if τ−1(n) = τ0−1(n) then

ρn and ρ0n are still in the same coordinate and the distance of this coordinate

is preserved, else ρn and ρ0n correspond to a value from {n + 2, · · · , n + 5} (

note that n + 1 is impossible, since value n + 1 is in coordinate 3 or 4). Thus after substituting operation at line 2, the distance won’t decrease. Same argument holds for the operation at line 3. Therefore, after line 5, we have

dH(π[n..n+5], π[n..n+5]0 ) ≥ dH(τ, τ0).

Next we consider the following cases:

Case [dH(x, y) = 0]: We know that dH(w, z) 6= 0, otherwise (x, w) and

(y, z) are identical. Let dH(w, z) = t ≤ 4. Since B7 ∈ F(2, 4, 2), we

have dH(τ, τ0) ≥ t + 2. Therefore d(π, π0)) ≥ t + 2 = dH((x, w), (y, z)) +

2.

(35)

30 CHAPTER 2. MAPPINGS FROM ZN

2 TO SN +K

If 0 < dH(w, z) = t, then dH(τ, τ0) ≥ t + 2. Thus, by the above

mentioned observation, we have dH(π, π0) = dH(π[1..n−1], π0[1..n−1]) +

dH(π[n..n+5], π[n..n+5]0 ) ≥ s+(t+2) = dH((x, w), (y, z))+2. For dH(w, z) =

0, it is easy to see dH(π, π0) ≥ s + 2.

Case [dH(x, y) = n]: In this case, it is clear that dH(ρ, ρ0) = n +

1. Let dH(w, z) = t. Again by earlier observation, we know that

dH(π[1..n−1], π0[1..n−1]) = dH(ρ[1..n−1], ρ0[1..n−1]) = n − 1 and

dH(π[n..n+5], π[n..n+5]0 ) ≥ dH(τ, τ0) ≥ t + 2 (even when t = 0). Thus

dH(π, π0) ≥ n + t + 1. We argue that this lower bound is indeed at least

n + t + 2, except when t = 4. There are two subcases on the value of dH(w, z), which is denoted as t.

1. Subcase [t = 4]: Then dH(τ, τ0) = 6. It is easy to see dH(π, π0) =

n + 5.

2. Subcase [0 ≤ t ≤ 3]: If dH(τ, τ0) = 6, then dH(π, π0) = n + 5 ≥

n + t + 2 = dH((x, w), (y, z)) + 2. If dH(τ, τ0) ≤ 5, there must

be one coordinate i such that τi = τi0. Note that x1 6= y1 and

x2 6= y2, since dH(x, y) = n. If τ5 = τ50 or τ6 = τ60, then after the

swap steps in line 6 and line 7, dH(π[n..n+5], π[n..n+5]0 ) ≥ t + 3. So

dH(π, π0) ≥ n + t + 2. If τ1 = τ10 or τ2 = τ20, the value 1’s in τ and

in τ0 must be in the same coordinate. Besides ρ

n6= ρ0n, we can get

Thus we have dH(π[n..n+5], π0[n..n+5]) ≥ t + 3. Same argument holds

for τ3 = τ30 or τ4 = τ40.

This completes our proof on the correctness of construction.

2.5

Construction of F(n, 3, 2)

The approach for the construction of F(n, 3, 2) is alike that for the con-struction of F(n, 2, 1). We first give five basis cases: h6 ∈ F(6, 3, 2), h7

(36)

2.5. CONSTRUCTION OF F(N, 3, 2) 31

the induction method for constructing hn+5 ∈ F(n + 5, 3, 2) from a map

hn∈ F(n, 3, 2). Thus a series of F(n, 3, 2) is built, for n ≥ 6.

Like previous section, we will use two auxiliary mappings Ci,Di for each

basis case. Both Ciand Dihave the position property for {1, 2} and {π−1(1)|π ∈

Ci(·), Di(·)} = {1, 2}, {π−1(2)|π ∈ Ci(·), Di(·)} = {3, 4}. There may be some

further limitations about certain C0

is and D0is. We will state the special

prop-erties they hold as they first appear.

Construction 2.5.1. Let C6 : Z23 → S6 define as follows and D6 is the same

as C6: x C6(x) x C6(x) 000 (1, 3, 2, 4, 5, 6) 100 (4, 1, 2, 6, 5, 3) 001 (1, 4, 2, 3, 6, 5) 101 (3, 1, 2, 5, 6, 4) 010 (1, 5, 3, 2, 4, 6) 110 (5, 1, 6, 2, 4, 3) 011 (1, 6, 4, 2, 3, 5) 111 (6, 1, 5, 2, 3, 4)

By the following algorithm, a mapping h6 ∈ F(6, 3, 2) is constructed.

Input: (x1, x2, · · · , x6) ∈ Z26 Output: (π1, π2, · · · , π8) = h6(x1, · · · , x6) begin 0 ρ = C6(x1, x2, x3); τ = D6(x4, x5, x6); 1 ρi = ρi− 2, for 1 ≤ i ≤ 6; 2 τi = τi+ 2, for 1 ≤ i ≤ 6; 3 ρρ−1(−1) = τ5; 4 ρρ−1(0) = τ6; 5 ττ−1(3) = ρ5; 6 ττ−1(4) = ρ6; 7 1, · · · , π4) = ρ[1..4];

(37)

32 CHAPTER 2. MAPPINGS FROM ZN

2 TO SN +K

8 5, · · · , π8) = τ[1..4];

end

There is no other limitations about C6. And C6 and D6 do not need

to be the same, as long as the position property is satisfied. The distance expansion matrix D for h6 is as follows:

0 0 0 192 0 0 0 0 0 0 0 128 128 128 96 0 0 0 64 128 448 0 0 0 0 480 0 0 0 192 0 0 32

Construction 2.5.2. Let C7 be the same as C6 and D7 : Z24 → S7 defined

as follows: x D7(x) x D7(x) 0000 (1, 3, 2, 4, 5, 6, 7) 1000 (5, 1, 2, 4, 6, 7, 3) 0001 (1, 3, 2, 5, 4, 7, 6) 1001 (6, 1, 2, 5, 4, 3, 7) 0010 (1, 3, 4, 2, 6, 5, 7) 1010 (7, 1, 4, 2, 5, 6, 3) 0011 (1, 4, 3, 2, 5, 7, 6) 1011 (5, 1, 7, 2, 4, 3, 6) 0100 (1, 5, 2, 3, 7, 6, 4) 1100 (7, 1, 2, 6, 3, 5, 4) 0101 (1, 5, 2, 7, 3, 4, 6) 1101 (4, 1, 2, 6, 7, 3, 5) 0110 (1, 7, 5, 2, 3, 6, 4) 1110 (3, 1, 6, 2, 7, 5, 4) 0111 (1, 6, 3, 2, 7, 4, 5) 1111 (6, 1, 7, 2, 3, 4, 5)

By the following algorithm, a mapping h7 ∈ F(7, 3, 2) is constructed.

Input: (x1, x2, · · · , x7) ∈ Z27

Output: (π1, π2, · · · , π9) = h7(x1, · · · , x7)

(38)

2.5. CONSTRUCTION OF F(N, 3, 2) 33 0 ρ = C7(x1, x2, x3); τ = D7(x4, · · · , x7); 1 ρi = ρi− 2, for 1 ≤ i ≤ 6; 2 τi = τi+ 2, for 1 ≤ i ≤ 7; 3 ρρ−1(−1) = τ6; 4 ρρ−1(0) = τ7; 5 ττ−1(3) = ρ5; 6 ττ−1(4) = ρ6; 7 1, · · · , π4) = ρ[1..4]; 8 5, · · · , π9) = τ[1..5]; end

Besides the position property, D7 holds another property that if the

Ham-ming distance of two binary vectors is 3, then the 5th entries of the images must be different, i.e. for x, y ∈ Z4

2, if dH(x, y) = 3, then D7(x)5 6= D7(y)5.

The distance expansion matrix D for h7 is as follows:

0 0 0 312 128 8 0 0 0 0 0 0 408 176 256 408 96 0 0 0 232 368 952 688 0 0 0 120 792 1328 0 0 0 208 1136 0 0 0 448 0 0 64

Construction 2.5.3. Let both C8 and D8 be the same as D7. By the

follow-ing algorithm, a mappfollow-ing h8 ∈ F(8, 3, 2) is constructed.

Input: (x1, x2, · · · , x8) ∈ Z28 Output: (π1, π2, · · · , π10) = h8(x1, · · · , x8) begin 0 ρ = C8(x1, · · · , x4); τ = D8(x5, · · · , x8); 1 ρi = ρi− 2, for 1 ≤ i ≤ 7; 2 τi = τi+ 3, for 1 ≤ i ≤ 7;

(39)

34 CHAPTER 2. MAPPINGS FROM ZN 2 TO SN +K 3 ρρ−1(−1) = τ6; 4 ρρ−1(0) = τ7; 5 ττ−1(4) = ρ6; 6 ττ−1(5) = ρ7; 7 1, · · · , π5) = ρ[1..5]; 8 6, · · · , π10) = τ[1..5]; end

The distance expansion matrix D for h8 is as follows:

0 0 0 480 512 32 0 0 0 0 0 0 0 1120 392 300 818 760 194 0 0 0 688 672 2048 2752 1008 0 0 0 416 1720 3856 2968 0 0 0 372 3192 3604 0 0 0 832 2752 0 0 0 1024 0 0 128

Construction 2.5.4. Let C9 be the same as C8 and D9 : Z25 → S8 defined

(40)

2.5. CONSTRUCTION OF F(N, 3, 2) 35 x D9(x) x D9(x) 00000 (1, 3, 2, 4, 5, 6, 7, 8) 10000 (3, 1, 2, 5, 8, 6, 7, 4) 00001 (1, 3, 2, 4, 6, 5, 8, 7) 10001 (3, 1, 2, 7, 6, 5, 8, 4) 00010 (1, 3, 2, 5, 4, 7, 6, 8) 10010 (3, 1, 2, 4, 7, 8, 5, 6) 00011 (1, 3, 2, 5, 7, 4, 8, 6) 10011 (4, 1, 2, 3, 6, 7, 5, 8) 00100 (1, 3, 4, 2, 5, 8, 6, 7) 10100 (3, 1, 7, 2, 5, 8, 6, 4) 00101 (1, 3, 4, 2, 8, 5, 7, 6) 10101 (5, 1, 7, 2, 8, 4, 3, 6) 00110 (1, 3, 6, 2, 7, 8, 5, 4) 10110 (6, 1, 7, 2, 4, 3, 5, 8) 00111 (1, 3, 6, 2, 8, 7, 4, 5) 10111 (4, 1, 3, 2, 8, 7, 5, 6) 01000 (1, 4, 2, 6, 5, 8, 7, 3) 11000 (8, 1, 2, 6, 5, 3, 7, 4) 01001 (1, 4, 2, 6, 8, 5, 3, 7) 11001 (8, 1, 2, 6, 3, 5, 4, 7) 01010 (1, 4, 2, 8, 7, 6, 5, 3) 11010 (7, 1, 2, 8, 4, 3, 6, 5) 01011 (1, 4, 2, 8, 6, 7, 3, 5) 11011 (4, 1, 2, 6, 3, 7, 8, 5) 01100 (1, 5, 8, 2, 4, 6, 7, 3) 11100 (7, 1, 8, 2, 5, 6, 3, 4) 01101 (1, 5, 8, 2, 6, 4, 3, 7) 11101 (7, 1, 8, 2, 6, 5, 4, 3) 01110 (1, 4, 5, 2, 7, 3, 6, 8) 11110 (4, 1, 8, 2, 7, 3, 6, 5) 01111 (1, 4, 5, 2, 3, 7, 8, 6) 11111 (7, 1, 6, 2, 3, 4, 8, 5)

By the following algorithm, a mapping h9 ∈ F(9, 3, 2) is constructed.

Input: (x1, x2, · · · , x9) ∈ Z29 Output: (π1, π2, · · · , π11) = h9(x1, · · · , x9) begin 0 ρ = C9(x1, · · · , x4); τ = D9(x5, · · · , x9); 1 ρi = ρi− 2, for 1 ≤ i ≤ 7; 2 τi = τi+ 3, for 1 ≤ i ≤ 8; 3 ρρ−1(−1) = τ7; 4 ρρ−1(0) = τ8; 5 ττ−1(3) = ρ6; 6 ττ−1(4) = ρ7; 7 1, · · · , π5) = ρ[1..5];

(41)

36 CHAPTER 2. MAPPINGS FROM ZN

2 TO SN +K

8 6, · · · , π11) = τ[1..6];

9 if x5 = 1 then swap (π5, π10);

end

In fact, C9 could be simpler than C8, any mapping that holds the

posi-tion property could be C9. D9 holds another property that if the Hamming

distance of two binary vectors is 4, then the 6th entries of the images must be different, i.e. for x, y ∈ Z5

2, if dH(x, y) = 4, then D9(x)6 6= D9(y)6. The

distance expansion matrix D for h9 is as follows:

0 0 0 912 912 336 112 32 0 0 0 0 0 0 1952 1090 918 1934 2034 1024 264 0 0 0 1328 1334 3782 6916 5870 2274 0 0 0 544 1910 8726 13074 8002 0 0 0 132 4060 13852 14212 0 0 0 454 6756 14294 0 0 0 1168 8048 0 0 0 2304 0 0 256

Construction 2.5.5. Let both C10 and D10 be the same as D9. By the

fol-lowing algorithm, a mapping h10∈ F(10, 3, 2) is constructed.

Input: (x1, x2, · · · , x10) ∈ Z210 Output: (π1, π2, · · · , π12) = h10(x1, · · · , x10) begin 0 ρ = C10(x1, · · · , x5); τ = D10(x6, · · · , x10); 1 ρi = ρi− 2, for 1 ≤ i ≤ 8; 2 τi = τi+ 4, for 1 ≤ i ≤ 8; 3 ρρ−1(−1) = τ7; 4 ρρ−1(0) = τ8; 5 ττ−1(4) = ρ7; 6 ττ−1(6) = ρ8;

(42)

2.5. CONSTRUCTION OF F(N, 3, 2) 37 7 1, · · · , π6) = ρ[1..6]; 8 7, · · · , π12) = τ[1..6]; 9 if x1 = 1 then swap (π5, π12); 10 if x6 = 1 then swap (π6, π11); end

The distance expansion matrix D for h10 is as follows:

0 0 0 1728 1600 1216 448 128 0 0 0 0 0 0 0 3328 2818 2348 4540 4300 3528 1652 526 0 0 0 2624 2868 7084 13904 17352 12172 5436 0 0 0 1024 2772 14192 32644 35416 21472 0 0 0 8 4352 26788 51992 45884 0 0 0 136 8596 40320 58468 0 0 0 768 15168 45504 0 0 0 2176 20864 0 0 0 5120 0 0 512

Next we show how to construct a mapping hn+5 ∈ F(n + 5, 3, 2)

induc-tively from a mapping hn ∈ F(n, 3, 2). In fact, suppose we have a mapping

ˆ

E ∈ F(ˆn, 3, 2) with the position property for {1, 2, 3}, then the concept of the

induction algorithm for F(n, 2, 1) can also be applied to F(n, 3, 2). And the algorithm only need to be modified subtly, so as the proof. Unfortunately we haven’t find such ˆE, for ˆn = 5,or 6. Instead, we use a mapping E : Z5

2 → S8

(43)

38 CHAPTER 2. MAPPINGS FROM ZN 2 TO SN +K x D11(x) x D11(x) 00000 (1, 8, 2, 4, 3, 5, 6, 7) 10000 (8, 1, 2, 4, 3, 5, 6, 7) 00001 (1, 7, 2, 4, 3, 6, 5, 8) 10001 (7, 1, 2, 4, 3, 6, 5, 8) 00010 (1, 8, 2, 4, 5, 3, 7, 6) 10010 (8, 1, 2, 4, 5, 3, 7, 6) 00011 (1, 7, 2, 4, 6, 3, 8, 5) 10011 (7, 1, 2, 4, 6, 3, 8, 5) 00100 (1, 5, 2, 6, 3, 8, 4, 7) 10100 (5, 1, 2, 6, 3, 8, 4, 7) 00101 (1, 6, 2, 5, 3, 7, 4, 8) 10101 (6, 1, 2, 5, 3, 7, 4, 8) 00110 (1, 5, 2, 6, 8, 3, 7, 4) 10110 (5, 1, 2, 6, 8, 3, 7, 4) 00111 (1, 6, 2, 5, 7, 3, 8, 4) 10111 (6, 1, 2, 5, 7, 3, 8, 4) 01000 (1, 4, 5, 2, 3, 8, 7, 6) 11000 (4, 1, 5, 2, 3, 8, 7, 6) 01001 (1, 4, 6, 2, 3, 7, 8, 5) 11001 (4, 1, 6, 2, 3, 7, 8, 5) 01010 (1, 4, 5, 2, 8, 3, 6, 7) 11010 (4, 1, 5, 2, 8, 3, 6, 7) 01011 (1, 4, 6, 2, 7, 3, 5, 8) 11011 (4, 1, 6, 2, 7, 3, 5, 8) 01100 (1, 5, 7, 2, 3, 8, 6, 4) 11100 (5, 1, 7, 2, 3, 8, 6, 4) 01101 (1, 6, 8, 2, 3, 7, 5, 4) 11101 (6, 1, 8, 2, 3, 7, 5, 4) 01110 (1, 5, 7, 2, 8, 3, 4, 6) 11110 (5, 1, 7, 2, 8, 3, 4, 6) 01111 (1, 6, 8, 2, 7, 3, 4, 5) 11111 (6, 1, 8, 2, 7, 3, 4, 5)

Let’s explain how the mapping E is produced. We first find a mapping

e ∈ F(4, 3, 3) with the position property for {1, 2}, and do some switchings

such that value 1 appears in coordinate 2 and 3, value 2 appears in coordinate 4 and 5. Second add 1 to each entry of all the permutations in the image. Third define E : Z5

2 → S5 as: for all w ∈ Z24, E(0w) = (1, π1, π2, · · · , π7))

and E(1w) = (π1, 1, π2, · · · , π7)), where π = e(w). It is easy to check that for

all distinct strings x, y ∈ Z5

2, if dH(x, y) = d, then dH(E(x), E(y)) ≥ d+3

ex-cept the case when x, y only differ at the first bit. In this case, dH(x, y) = 1,

but dH(E(x), E(y)) = 2. We give the algorithm below and then proof the

correctness.

Algorithm 2.5.6. Input: (x1, · · · , xn, · · · , xn+5) ∈ Z2n+5

Output: (π1, · · · , πn+7) = hn+5(x1, · · · , xn+5)

(44)

2.5. CONSTRUCTION OF F(N, 3, 2) 39 0 ρ = hn(x1, · · · , xn); τ = E(xn+1, · · · , xn+5); 1 τi = τi+ n − 1, for 1 ≤ i ≤ 8; 2 ττ−1(n) = ρn; 3 ττ−1(n+1) = ρn+1; 4 ττ−1(n+2) = ρn+2; 5 (π1, · · · , πn−1) = ρ[1..n−1]; 6 (πn, · · · , πn+7) = τ[1..8]; 7 if x1 = 1 then swap (π1, πn+6); 8 if xn+1= 1 then swap (π2, πn+7); Theorem 2.5.7. hn+5 ∈ F(n + 5, 3, 2), for n ≥ 6.

Suppose ignore the exception, the proof for the rest cases is quite similar to the proof in previous section. Thus we simply omit this part. Next we proof the correctness for the exception case.

Proof. Let x, y ∈ Zn

2 and w ∈ Z24. Let hn(x) = ρ = (ρ1, · · · , ρn+2),

hn(y) = ρ0 = (ρ01, · · · , ρ0n+2), and E(0w) = (1, σ1, σ2, · · · , σ7). By the

defini-tion of E, we know that E(1w) = (σ1, 1, σ2, · · · , σ7). And let hn+5(x, 0w) =

π = (π1, · · · , πn+7), hn+5(y, 1w) = π0 = (π10, · · · , π0n+7).

Since the the string (y, 1w) will trigger the swap at line 8 but the string (x, 0w) won’t, then after line 8, πn+7 6= πn+7. Besides value 2 and value

3 in E(0w) must be in the same position as value 2 and value 3 in E(1w) respectively. Therefore after line 8, dH(π[n..n+7], π[n..n+7]0 ) ≥ 3+

dH((ρn+1, ρn+2), (ρn+10 , ρ0n+2)). Furthermore we get dH(π, π0) =

dH(π1..n−1, π1..n−10 ) + dH(π[n..n+7], π[n..n+7]0 ) ≥ 3 + dH(ρ, ρ0) − 1 = 2 + dH(ρ, ρ0).

Next we consider the following cases:

Case [dH(x, y) = 0]: Since the string (y, 1w) will trigger the swap at

line 8 but the string (x, 0w) won’t, then after line 8, πn+2 6= πn+2. So

(45)

40 CHAPTER 2. MAPPINGS FROM ZN

2 TO SN +K

Case [0 < dH(x, y) = s ≤ n]: It is clear that dH(ρ, ρ0) ≥ s+2. Therefore

dH(π, π0) =≥ 2 + dH(ρ, ρ0) = 2 + (s + 2) = dH(x, y) + 1.

2.6

A Framework for Constructing F(n, k +

1, k)

The approach for constructing a series of F(n, 2, 1) is similar to that for con-structing a series of F(n, 3, 2). We wonder if there is a generalized approach for constructing F(n, k + 1, k). In this section, we give a possible framework for constructing F(n, k + 1, k).

Let’s talk about how to construct the basis cases first. We use the con-struction of F(n, 2, 1) as example to illustrate our idea. When we dealt with

F(n, 2, 1), we tried to find out the basis cases by computer search.

Unfortu-nately, after a time consuming search, there were still no outcome. Rather than just by searching, we found a method to construct the basis cases di-rectly. We noticed that any mappings in F(n, 2, 2) can be easily found by computer, even with some restrictions. We wondered if we could use these mappings in F(n, 2, 2) to construct a mapping g ∈ F(n, 2, 1). But there was a big problem. Suppose we simply concatenate a mapping A ∈ F( ˆm, 2, 2) and

a mapping B ∈ F(ˆn, 2, 2). The resulted mapping is from Zm+ˆˆ n

2 to Sm+ˆˆ n+4.

Undoubtedly it doesn’t belong to F(n, 2, 1). There should be a way to shrink the length of the image. Therefore we adopted the substitution technique again. In order to let the substitution step work well, the mappings we use should hold the position property. Let A ∈ F( ˆm, 2, 2) with the position

property for {1} and B ∈ F(ˆn, 2, 2) with the position property for {1, 2}.

Let A(x) = ρ, x ∈ Zmˆ

2 and B(y) = τ , y ∈ Zn. Replace the value 1 in ρ

with an entry of τ in the coordinate where the value 1 and 2 won’t appear, and replace the value 1 in τ with an entry of ρ in the coordinate where the

(46)

2.6. A FRAMEWORK FOR CONSTRUCTING F(N, K + 1, K) 41

value 1 won’t appear, so does the value 2 in τ . Then the resulted image length is ˆm + ˆn + 1 . The resulted mapping has a chance to be in F(n, 2, 1).

However there may still be some problems. Let’s look at the construction of

g6 as the example. Note that we have made a further restriction about B6.

Suppose B6 is simply a mapping in F(4, 2, 2) with only the position

prop-erty, and B6(0000) = (1, 3, 2, 4, 5, 6), B6(1110) = (4, 1, 6, 2, 5, 3). Through

our algorithm, we will find that g6(000000) = (1,7,3,4,2,5,6) and g6(111110)

= (4,1,5,2,7,3,6). dH(g6(000000), g6(111110)) = 6  dH(000000, 111110) + 2.

Thus such g6 doesn’t belong to F(6, 2, 1). That’s why we made the

restric-tion about B6.

We state the framework for constructing the basis cases for F(n, k + 1, k) as follows: find 2 mappings in F(n, k + 1, k + 1) with the appropriate posi-tion property, such that after substituposi-tion, the resulted image size is legal, and make some extra restrictions about these two mappings if necessary, i.e. the construction still need to be dealt case by case. In fact, the framework could be generalized for even F(n, d, k). We only need to make more re-strictions about these 2 mappings. We have tried to find out the basis cases for F(n, 2, 0) based on this framework, but unsuccessful. Many restrictions make these 2 mappings hard to be found quickly by computer, even they don’t exist. But we believe the framework is helpful for constructing the basis cases for F(n, k + 1, k). We can find these 2 auxiliary mappings quickly even with additional restrictions.

Next we discuss the induction method for F(n, k + 1, k). As a matter of fact, Algorithm 2.4.6 can be generalized to any k, as long as the the proper extension mapping E is found. We modify Algorithm 2.4.6 for F(n, k + 1, k) as follows. Assume E ∈ F(l, k + 1, k + 1) with the position property for

{1, 2, · · · , k + 1} and bn∈ F(n, k + 1, k).

Algorithm 2.6.1. Input: (x1, · · · , xn, · · · , xn+l) ∈ Z2n+l

參考文獻

相關文件

In addition, we successfully used unit resistors to construct the ratio of consecutive items of Fibonacci sequence, Pell sequence, and Catalan number.4. Minimum number

[r]

sort 函式可將一組資料排序成遞增 (ascending order) 或 遞減順序 (descending order)。. 如果這組資料是一個行或列向量,整組資料會進行排序。

From these results, we study fixed point problems for nonlinear mappings, contractive type mappings, Caritsti type mappings, graph contractive type mappings with the Bregman distance

Department of Mathematics, National Taiwan Normal University,

To facilitate the Administrator to create student accounts, a set of procedures is prepared for the Administrator to extract the student accounts from WebSAMS. For detailed

[r]

For consistent predictions or strongly ordinal costs, if g makes test error ∆ in the induced binary problem, then r g pays test cost at most ∆ in ordinal ranking. a one-step