Perfect Binary Codes: Constructions, Properties ... - Semantic Scholar

11 downloads 0 Views 2MB Size Report
Sep 10, 1993 - to derive a generalization of the construction of Phelps, which is shown to give rise to some perfect codes that are nonequivalent to the perfect ...
754

IEEE

TRANSACTIONS

ON INFORMATION

THEORY,

VOL.

40, NO. 3, M A Y

1994

Perfect Binary Codes: Constructions, Properties, and Enumeration Tuvi Etzion, Member, IEEE, and Alexander Vardy, Member, IEEE Abstract-Properties of nonlinear perfect binary codes are investigated and several new constructions of perfect codes are derived from these properties. An upper bound on the cardinality of the intersection of two perfect codes of length n is presented, and perfect codes whose intersection attains the upper bound are constructed for all n. As an immediate consequence of the proof of the upper bound we obtain a simple closed-form expression for the weight distribution of a perfect code. Furthermore, we prove that the characters of a perfect code satisfy certain constraints, and provide a sufficient condition for a binary code to be perfect. The latter result is employed to derive a generalization of the construction of Phelps, which is shown to give rise to some perfect codes that are nonequivalent to the perfect codes obtained from the known constructions. Moreover, for any m 2 4 we construct jidl-rank perfect binary codes of length 2” - 1. These codes are obviously nonequivalent to any of the previously known perfect codes. Furthermore the latter construction exhibits the existence of full-rank perfect tilings. Finally, we construct a set of 22c” nonequivalent perfect codes of length n, for sufficiently large n and a constant c = 0.5 - E. Precise enumeration of the number of codes in this set provides a slight improvement over the results previously reported by Phelps. Keywords-Perfect codes, intersection tion, perfect tilings.

of codes, weight distribu-

the all-zero vector. Without loss of generality we shall assume, unless stated otherwise, that 0 E C. A binary code C of length y1 is pe@ct if for some integer Y 2 0 every x E F,” is within distance Y from exactly one codeword of C. The study of perfect codes is one of the most fascinating subjects in coding theory. It is shown in [5], [12], [15] that such codes exist only for Y = 0, Y = IZ, Y = (n - 1)/2 with IZ odd, Y = 1 with n = 2” - 1, and r = 3 with IZ = 23. The first three cases are trivial, while the last case corresponds to the well-known binary Golay code [7]. For the sake of brevity, we shall henceforth use the word “perfect” to refer to the perfect codes - 1, where m 2 3. The linear with r=l and n=2” perfect codes are unique-these are the well-known Hamming codes [7]. Nonlinear perfect codes were first constructed by Vasil’ev [13]. A generalization of Vasil’ev’s construction may be found in Mollard [8]. Other constructions of nonlinear perfect codes have been subsequently presented by Phelps [9], Solov’eva [ll], Phelps [lo], and Bauer et al. [l]. These constructions are reviewed in the next section. In Section III we consider the following question. Let C,, C, be two distinct perfect codes of length n = 2” - 1. What is the maximum possible cardinality of their intersection C, f? C,? Let v = (n - 1)/2. We prove that

I. INTR~DUC~~N ET F; be a vector space of dimension y1over GF(2). IC, n C,I I2”-” - 2”. (1) A subset of F; is a binary code of length n. For any code C c F; we denote by C’ the subspace of Fg Subsequently perfect codes whose intersection attains’the consisting of those vectors that are orthogonal to all the upper bound of (1) are constructed for all IZ. A variant of codewords of C. Two codes C,, C, c F,” are said to be the same construction is then employed to construct perisomorphic if there exists a permutation T, such that fect codes C, and C,, such that C, = {n(c): c E C,}. They are said to be equivalent if IC, n C,I = 20.5(~+1) (2) there exist a vector a and a permutation rr, such that C, = {a + r(c): c E C,}. The Hamming distance be- This provides an upper bound on the m inimum possible tween vectors x, y E F;, denoted d(x, y), is the number cardinal&y of the intersection of two perfect codes. For of coordinates in which x and y differ. The Hamming n = 7 the m inimum intersection has cardinality 2, which is weight of x is given by w(x) = &x,0), where 0 denotes less than (2). Whether the upper bound of (2) is tight for y12 15 remains an open question. Manuscript received November 11, 1992; revised manuscript received In Section IV we further investigate the properties of September 10, 1993. Research supported in part by the Technion V.P.R. fund and in part perfect binary codes. First, a simple closed-form formula by the fund for the promotion of research at the Technion. This work for the weight distribution of a perfect code is obtained as has been completed while Alexander Vardy was with IBM Research a.n immediate consequence of our proof of the upper Division, Almaden Research Center, San Jose, CA. Research suuuorted bound of (1). Next we show that the characters of a in part by the Rothschild Fellowship administered by the Roihschild Foundation. perfect code of length n are divisible by 2Vf ‘, and all but T. Etzion is with the Department of Computer Science, y: 1 of them are equal to zero. Finally, we present a Technion-Israel Institute of Technology, Haifa, 32000, Israel. ( 1 A. Vardy is with the Coordinated Science Laboratory, University of sufficient condition for a binary code C to be perfect Illinois at Urbana-Champaign, 1308 W. Main Street, Urbana, IL 61801. (Lemma 4.4). Our results on the characters of a perfect IEEE Log Number 9401971.

L

0018-9448/94$04.00 0 1994 IEEE

ETZION

AND

VARDY:

PERFECT

BINARY

CODES:

CONSTRUCITONS,

PROPERTIES,

AND

75.5

ENUMERATION

code imply that this condition is also necessary,provided CL # (0). In Section V we employ Lemma 4.4 to generalize the construction of Phelps [9] and Solov’eva [ll]. The codes resulting from the generalized construction have the property of being interlaced. This property will be elaborated upon in Section V. Further, the construction of Section V can be employed to produce perfect codes of any rank in the range of n - m to y1- 1. Using these two facts we show that, at least for length 15, our construction gives ‘rise to codes that are nonequivalent to any perfect code obtained through the constructions of [l], [8], [9], [lo], [ill,

Let cl, cZ;**, c, be some r linearly independent vectors in C,. Let ul,uZ;~~, u, be the set of vectors of weight 1 in F;. Then, provided 0 E C,, the union of % and g’, where

tions of nonlinear perfect codes, and give upper bounds on the rank of the codes obtained using these constructions. For v E Ft, let p(v) = wt(v> mod 2. Let C, be a perfect binary code of length 72 = 2” - 1. Let f: C, -+ (0, 1) be an arbitrary mapping, such that f(O) = 0 and f(c,) + f(c,) # f(ci + CJ for some cl, c2, c1 + c2 E CC Proposition 2.1: (Vasil’ev [13]) the code C2,,+1 defined by C 2n+l = {(vlv + clp(v) +f(c>>: v E F;, c E C,},

rank(F) 2 n + rank(C,) - nl.

g = {(Olcilf(ci>>:

i = 1,2;--, r)

22 = {(u,]u,]l): i = 1,2,--e, n},

belongs to C2,,+i and is linearly independent. Now assume that any codeword of C,, + i can be represented as a sum of elements of %! U %7.But then for any c E C,, the vector (Olclf( c >>can be represented as a sum of elements of % ‘?,and therefore the mapping f is linear. Hence rank CC,, + 1) 2 n + r + 1, and thus rank (CZn+i) = n + r D31. n In Section VI we present the main result of this paper + 1. For x = (xii, xi2;.., xlnl, xzl, xz2;~~,x,,,~) E Ftlnz, de-the construction of perfect binary codes of fill rank. These codes are constructed from the Hamming codes, fine the generalized parity functions pl(x> = using some of the ideas developed in Section III. The (rl, a,;.., a,,> E F,‘1 and p2(x) = (a;, a;;**, q’,> E Fiz existence of full-rank perfect codes is of vital importance by setting ci = CJ?&xij and q’ = Cy: ixij. Let C, and C, in the study of perfect tilings (cf. [2]). Indeed, none of the be two perfect codes of lengths n, and n2, respectively. perfect codes resulting from the known constructions is of Let f: C, -+ F,“* be an arbitrary mapping. The following construction due to Mollard [8] is in a sense a generalizafull rank. Finally in Section VII we again employ the results of tion of Proposition 2.1. Proposition 2.3: (Mollard [8]) The code F defined by Section III to partition the space I;,” into disjoint sets, such that each set contains two different perfect coverings F = {(xlq +p,(x)lc, +p2(x) +f(c,>): of itself. Taking all the possible unions of these coverings x E F;‘“z, cl E C,, c2 E C,) we construct a set of 2’ ‘5(n+1)m’og(n+1) distinct perfect codes of length n. Precise enumeration of the number of nonequivalent codes in this set provides a slight improve- is a perfect code of length II = nln2 + IZ~+ n2. We shall denote by M(n) the set of all the perfect ment over the previous asymptotic results reported by codes resulting from the construction of proposition 2.3. Phelps in [lo]. Note that for n2 = 1, Proposition 2.3 reduces to Vasil’ev’s construction. II. PRELIMINARIES Lemma 2.4: For F E M(n), In this section we briefly outline the known construc-

where (-1* > denotes concatenation, is perfect. Let V(n) be the set of all the perfect codes of length n that may be obtained using the foregoing construction. We define the rank of a set of vectors as the maximum number of linearly independent vectors in the set. Lemma 2.2: For CZn+i E 1/(2n + l), rank (C,, + 1) = rank(C,) + n + 1. Proofi Denote r = rank(C,). Let w be a vector in c; . Then (w ]w IO) is obviously in C,i, + i . Hence rank CC,: + i ) 2 rank(C,‘) and therefore rank(C,.+,

> 5 (2n + 1) - (n - r>.

Proofi Let w = (wi, w~,--*,w,~) E C: . Let 1 denote the all-ones vector. Define the vector 6 = (G11G’2] .** lGnl,,> by setting

gTi=

0, i 1,

wi = 0, wi = 1,

where 0,l E F[“. Then the vector (Ghv]O) is in F ’ . n Hence rank(F) 5 n - rank(C:). A code C of length n + 1 = 2” is extended perfect if it is obtained from a perfect code of length n by extending with either even or odd parity coordinate. Let E,” denote the set of all even weight vectors of F;. Let Ci, CF;.., Cj and CA, Ct;.., Ci be partitions of E;+’ and F;+’ \ Ei+‘, respectively, into extended perfect codes. Let rr be a permutation on the set {O,1,--a,n}. The next proposition is a variant of the construction of Phelps [9] and Solov’eva

M l. Proposition 2.5: (Phelps [9], Solov’eva [ll]) The code C

defined by C = {(colcl):

co E Co, cl E C:, v(i)

is an extended perfect code.

= j}

756

IEEETRANSACIIONSONINFORMATlONTHEORY,VOL.40,NO.3,MAY1994

Puncturing any coordinate of C gives a perfect code of & n 9 = 0, since otherwise I/ is not minimal. Hence length 2n + 1. We let P,(2n + 1) denote the set of all 0 E&&‘, and 9 contains a unique codeword of weight 1. such perfect codes (the meaning of the subscript will Indeed, since 0 Ed, there are no codewords of weight 1 become clear immediately). in &. Now let Ai and Bi denote the number of codewords Now let R be an extended perfect code of length k, of weight i in & and 9, respectively. Counting the where k = 2” for some K. For each Y E R, let Q , be a number of vectors of weight i in V, we have for 1 I i I 2 v, minimum distance 2 code of length k over an alphabet of (n - i + l)Aiml + Ai + (i + l)Ai+l (n + 1) symbols, with IQ,] = (n + ljk-‘. Proposition 2.6: (Phelps [lo]>. The code P defined by = (n - i + l)Z3- i + Bi + (i + l)B,+i. (3) P = {(c,lc,l

a.* 1~~): ci E C:, r = (rl, r2;**, rk) E R, (.il,.i2,-..,

jd

Let Ai = Ai - Bi. Then (3) implies the following recurrence

E Q,}

iAi = -hi-i - (n - i + 2)Aie2. (4) is an extended perfect code of length k(n + 1). We have already established A, = 1, A, = 0 and B, = 0, The set of all the perfect codes obtained by puncturing B, = 1. Hence A0 = 1 and A1 = - 1. The unique solution the codes of Proposition 2.6 is denoted P,(k(n + 11 - 1). of the recurrence (4) with these initial conditions is Note that for k = 2, R is an “extended perfect” code consisting of a single vector 01, and the code Q , is in i = 0,3 mod4, effect a permutation on the set (0, l;*., n]. Thus ProposiAi = tion 2.5 is a special case of Proposition 2.6, and the two (5) definitions of Pz(n) coincide. i = 1,2mod4. Lemma 2.7: For C E P,(k(n + 1) - l),

rank(C) I k(n + 1) + rank(R) - k. Proofi Let w = (wi, w2;.*, wk) E RI . Then the vector (u,]uzl .** 1~~)E Fl@+‘) given by

ui =

0, i 1,

wi = 0, wi = 1

Obviously, Iv/( = (1 + n>lsz?l = (1 + n)CFcO,Ai. Hence

- IV1 = L Ai + 1+n

=

5

Ai 2

i=o

i=o,3

i=O i=1,2

~

[hi + Bi] >_ ~

i=O i=O,3

5

Ai

i=O i=o,3

i=O i-O,3

Ai =

~

i=o,3 is orthogonal to the code P defined in Proposition 2.6, for any partition of the space. Since rank(C) I rank(P), we where all the equivalences are modulo 4. Substituting have rank(C) 4 k(n + 1) + rank(R) - k. n j = [i/2] in this inequality, yields In addition to the constructions discussed above, there are three “non-Vasil’ev” perfect codes of length 15 conIV1 2 (1 + n) 2 ‘( = (v + 1)2”+‘. n structed by Bauer et al. [l]. The study of [l] provides a j=O 0 ’ necessaryand sufficient condition for a systematic code to Corollary 3.2: Let C, and C, be two distinct perfect be perfect. The authors then employ this condition to codes of length n = 2”’ - 1. Then construct the three perfect codes of length 15. In general it is not clear, however, how to find codes which satisfy the IC, n C,I I 2”-” - 2”, condition of Bauer et al. [l]. where v = (n - 1)/2. III. INTERSECTIONS OFPERFECTCODES Proofi Since for distinct perfect codes we may always take M = C, \ (C, n C,) and 9 = C, \ (C, n C,), the Let C, and C, be two distinct perfect codes of length upper bound follows immediately by Lemma 3.1. n n=2”1. What is the maximum possible cardinality of We now construct C, and C,, such that the cardinality their intersection C, n, C,? In the following we give a complete answer to this question. In fact, we consider a of C, n C, attains the upper bound. Let Zn be the slightly more general situation. For a positive integer Hamming code of length n = 2v + 1 = 2” - 1, and let n = 2~ + 1; let V be a subset of F; such that there exist H be its parity check matrix. Further, assume that the columns of H, -hi, h2;.., h,, are arranged such that for two distinct perfect coverings of I/. Namely, let & and 9 some fixed column vector z = h,, be two distinct subcodesof V, such that any vector in V is within distance 1 from a unique codeword of M and a (6) hi + hi+v = z for all i = 1,2;*+, v. unique codeword of G?. Let C, be a coset of Zn, such that the syndrome s(c) = Hc’ Lemma 3.1: /VI 2 (v + 1)2”+l. is z for all c E C,. Define Proof Without loss of generality we assume 0 E&. O therwise let a EG’. Then (a + V) is a subset of Fi and &’ = {(xlxlp(x>>: x E F;} (a +&>, (a + 9) are two distinct perfect coverings of 9 = {(xlxlp(x> + 1): x E F;} (7) (a + V>, with 0 E (a +M>. We may also assume that

ETZIONANDVARDY:

PERFECTBINARYCODES:CONSTRUCTIONS,PROPERTIES,ANDENUMERATIoN

where p(x), the parity of x, is given by wt(x> mod2. Let c, = (Cl \9) u&f. Proposition 3.3: The code C, is perfect. Proofi Obviously JX?c2$, and zZ?c C, is a coset of &disjoint withZn. Hence IC,I = IC,I - 191 + I&‘] = 2”-m. Indeed, d(@) = min,,, azEM d(a,, a,) = 3 and d(C, \s%“> = 3. Now let u = a + c, where a E & and c E C,. Clearly s(u) = s(u) + s(c) = z. Hence if wt(u> I 2 then either u = (OlOll) or u = (ulu]O), where u is a vector of weight 1. But then c = a + u is either (xlxlp(x> + 1) or (x + UIX + ulp(x)). Since p(x) =p(x + U) -t 1, in both cases c E 9. Thus d(&, C, \a> = min, E &, c s c,, g d(u, c) r 3, and C, is perfect. n By construction IC, n C,I = IC,I - ISI = 2”-” - 2”. Thus Proposition 3.3 shows that the upper bound of (1) is attainable for all n. Another consequenceof Proposition 3.3 will be of importance in the sequel. Corollary 3.4: The sets M and .%’defined in (7) perfectly cover the same subset of Fl. Proofi This follows immediately from the fact that both (C, \a) u ti and (C, \*I) U&Y are perfect. n Having settled the largest possible intersection question, we now consider its natural counterpart: What is the minimum possible cardinality of the (nonempty) intersection of two perfect codes? Clearly IC, n znI = 1~1= 2”. The intersection of these two codes is not the smallest possible, however. We presently construct a perfect code C;, such that the cardinality of C, n CZ is less than 2”. Let W be a subspaceof FT of dimension m - 1, such that z E W. Then one way to arrange the columns of H so that (6) is satisfied is to take {h,, hz,..., &,I = W\ OH, {h v+l,

hvf2;..,

h,} = z + W.

(8)

If (8) is employed, the order of all the columns in H is determined by the order in which the nonzero elements of W are listed in {h,, h2;.., h,}. The latter is completely arbitrary, however. We may further restrict the order of columns in H as follows. Set z’ = h, and arrange the columns h,, h2;.*, h,-, such that = z’ for all i = 1,2;.., v’,

hi + hi+,,

(9)

where v’ = (v - 1)/2. It follows from (6) and (9) that we also have hifv + hi+.+., = (z + hi) + (z + hi+,,,) = z’, for all i = 1,2,*-e, v’. Furthermore, h,-, + h, = z’, in view of (6). Hence define d

= {(xlxlp(x

+y>

+

alylylala):

x,y

a E GF(2)).

ti and 9, and hence perfectly cover the same subset of Fl by Corollary 3.4. Proposition 3.5: IC, n C;l = 2”‘+l. Proof Clearly%, C,, and C; are disjoint. Thus C, n Ch =M n &‘. Note that both & and &!’ are linear, and hence so is & n &‘. The vector a, E F,” of weight 3 with nonzeros at positions v, y1- 1, n is in JZ!nd’. For i = 1,2;**, v’, let ai E F[ be a vector of weight 4 with nonzeros at positions i, i + v ‘, i + v, i + v ’ + v. Then again a, E& n d. Since the vectors a,, a,;~~, a,,, have disjoint supports they are linearly independent. Furthermore, it may be readily verified that these vectors genern ate & nd. Proposition 3.5 establishes (2). Although it is not clear whether the intersection of cardinality 2v’+ ’ is the minimum possible, we were unable to construct perfect codes with a smaller intersection for n r 15. For IZ = 7 it is easy to find two isomorphic Hamming codes ZT and Z$, such that XT nZ?$ = (0, 1). IV. MOREPROPERTIESOF PERFECT BINARYCODES In this section we further investigate the properties of perfect binary codes. In particular we employ some of the results derived in the previous section to find a closed-form expression for the weight distribution of a perfect binary code. Then we prove that the characters of a perfect code satisfy certain constraints. Finally, we provide a sufficient condition for a binary code to be perfect. A. Weight Distribution

Let Ai be the number of codewords of weight i in C, a perfect code of length n. The following recurrence for Ai, obtained by counting the vectors of weight i in Fl, is well known (cf. [7, p. 1291) (n - i + l)Aiml

+ Ai + (i + l)Ai+i

=

i

y . (11) 1

Obviously, if 0 E C then A,, = 1 and A, = 0, whereas if 0 E C then A, = 0 and A, = 1. To the best of our knowledge, no closed-form solution of the recurrence (11) with either of the two initial conditions is presently known. Assume that 0 E C, and let Bi be the number of codewords of weight i in a coset x + C, where x +ZC. Then obviously Ai+nBi=

i

1 . i

(12)

E F;‘,

a E GFt2)1,

28’ = {(xlxlp(x + y> + a + llylylala):

757

x,y E F;‘, (10)

A simple closed-form solution of (11) may be obtained immediately by realizing that the proof of Lemma 3.1 applies to V = FJ, & = C, and 9 = x + C. Indeed, in addition to (12) we also have

Ai - Bi = Ai, By construction JZ” ~2~. Let C; be a coset of q, such (13) that the syndrome of all the vectors in C; is z’. Then obviously 9’ c C;. Denote Ci = (C; \s’) U&f’. To see where Ai is given by (5). Solving (12) and (13) for Ai and that C; is perfect note that &” and 9’ are isomorphic to Bi we have the following result.

IEEE

758

TRANSACTIONS

Proposition 4.1: The weight distribution of a perfect code C of length n is given by

ON INFORMATION

THEORY,

VOL.

40, NO. 3, MAY

1994

codewords of C truncated to the (v + 1) nonzero positions of U. For x E F2y define w(x) = I{i: ith row of M is (x(l)] I.

Ai =

n+l

provided 0 E C. If 0 @ C, the weight distribution of C is given by

Let uj E F; be a vector of weight 1 with the nonzero entry in the jth position. Since M is an orthogonal array of strength v, the 2” nonnegative integers w(x) satisfy the following set of 2” equations, V x E F,“: w(x) + o(x + u.)J = 2’-@-l)

for j = 1,2;**, v. Proofi Both expressions satisfy (ll), with the corresponding initial conditions. n

The solution of (14) is

B. Characters

o(x) =

If the binary vectors of length n are described by polynomials in zr, z2;**, z,, a binary code C c FJ may be represented by the element C, E C~El~g~**az? = C, E czc in the group algebra Q G , where G is isomorphic to Fc (cf. [7, p. 1341). For a vector u E FT, a character x,(C) may then be defined as CEC

wt(x> = 0 mod2, wt(x> = 1 mod2.

w(O), ( 2’-@-‘)

- w(O),

Hence the number of rows of M which have even weight is given by c

c

w(x) +

ZEF,” wt(x) - 1

[2Y-(m-1) - w(x)]

XEF,” w(x)= 0

x,(C) = xu( c zc) = c x,(z”> = c G lP”‘, CGC

(14)

=

2”. (2”-‘“-”

- (j)(O))*

CEC

where ( . , * > stands for the inner product modulo 2 in F;. Clearly, if u E C’ , then x,(C) = ICI. It is well known that C is linear if and only if x,(C) = 0 for all v E F?, The following two results are shown such that v@C’. herein for perfect codes. Proposition 4.2: If C is perfect then x,(C) = 0 for all the nonzero u E F,“, such that wt(v> # v + 1. Proof Let V be a Hamming sphere of radius 1. Then V + C = F;. Hence (cf. [7, p. 1341) ,q$F;) = x,(V) * x,(C) = 0. Since for a vector u = (ui, uz;*., un>of weight #v+l we have x,(V)=l+C~=‘=,(-l)Ui=(n+l)2wt(u) # 0, it follows that x,(C) = 0. n Proposition 4.2 implies that a vector of weight # Y + 1 is orthogonal to exactly half the the codewords of a perfect code C. As suggestedby ZCmor [141, an alternative proof of this fact may be obtained using the results of Delsarte [3]. Indeed, since C is an orthogonal array of strength 2”-’ - 1 (cf. [3]), any vector of weight less than 2”-l is orthogonal to exactly half the codewords of C. To show that the same applies to a vector u of weight greater than 2”-’ extend C by an even parity check coordinate. The resulting code C* is again an orthogonal array of strength 2”-’ - 1 and the vector 1 is orthogonal to C*. The vector 1 + (~10) has weight less than 2”- ’ and is therefore orthogonal to exactly half the codewords of C”. Hence u is orthogonal to exactly half the codewords of C*, and consequently also of C. The following proposition further restricts the admissible values of the characters of a perfect code. Proposition 4.3: If C is perfect then x,(C) is divisible by 2Yf1. Proofi We only need to consider the case wt(u) = Y + 1. Let A4 be a (Cl by (v + 1) matrix whose rows are the

In other words, u is orthogonal to exactly q = 2”. [2”-(“- ‘) - w(O)] codewords of C. Hence x,(C) = q (ICI - q) = 2y+l. [2’-07-1) - (&O)] - 2n-m. n It follows from Proposition 4.3 that x,(C) 2 2’+l 2n-” provided 0 E C. We presently show that the code C,, constructed in Proposition 3.3, attains this lower bound. Let w = (011)be a vector of weight (v + 1) in Fl. If the columns of H, the parity check matrix of zn, are arranged as in (8) then w E zn’ . Recall that C, = CC, \A%‘)U M, where C, is a coset of fin whose coset leader is (011).Since w EX$ , it is orthogonal to all the codewords of ti and none of the codewords of C,. Thus w is orthogonal to exactly 2” codewords of C,. Hence XJC,) = C,,,(+1) + c,,(cl\&-l) = 2” - (2npm - 2”). Thus the lower bound of Proposition 4.3 is tight for all n. C. A Necessuy and SufJicient Condition

Let C be a code of length n = 2” - 1, such that there existsavectorwEC1 ofweightv+1=2”-‘.Wenow give a necessaryand sufficient condition for such a code to be perfect. Without loss of generality assume that the nonzero entries of, w are in the first v + 1 positions, and hence for each (U/U>E C such that u E F,“, wt(u> is even. Define T(u)

= {u E F;: (ulu) E Cl,

H(u)

= {u E El+‘:

(ulv)

E C).

Lemma 4.4: The code C is perfect if and only if the following two conditions hold.

1. ‘d u cE,Y+l, T(u) is a perfect code of .length v. 2. V v E F;, H(v) is an extended perfect code of length v + 1.

759

ETZIONANDVARDY:PERFECTBINARYCODES:CONSTRUCTIONS,PROPERTIES,ANDENUMERATION

Proof ((=I Let ci = (xl]y,) and c2 = (xZ]y,) be two distinct codewords of C, where xi, x2 E E,“+’ and y,, y, E F;. If x1 =x2, then yi, y2 E Rx,) and hence d(c,, cZ) 2 3. Similarly if y, = y,, then xi, x2 E H(y,) and d(c,, cZ) 2 4. Now if x1 #x2 and y1 #yZ, then d(c,, c2) = d(x,, x,) + d(y,, y2) 2 3. Clearly,

ICI =

c

pyu)l = 2”. 2”-(77-1) = 2n-m.

it is evident that (n + 1) is the minimum order of any perfect segmentation of Fl. We presently show that perfect segmentations of higher order exist. These can be easily constructed from the Hamming codes. Let Cl and C, be two isomorphic Hamming codes of length IZ = 2”’ - 1, such that C’ = C, O C, has cardinality 2”-“- ‘. Then C, = C’ U (cl + C’) and C, = C’ U (c2 + C’) for some c1 E C, \ C’ and c2 E C, \ C’. Define

UEE;+l

Hence (*) Hence IT(

ICI =

C is perfect. Obviously d(T(u)) = minU1,u2E r(U)d(~i, u,) 2 3. by the sphere packing bound IT(u)] I 2”-(” -I). If < 2”-( m-1) for some u*, then

c

IT(u>l I (2” - 1) < 2n-“,

which contradicts the fact that C is perfect. Therefore pyu)J = 2v-(m-1) and T(U) is perfect. A similar argument shows that H(u) is extended perfect. n Note that if C is perfect than by Proposition 4.2 all the nonzero vectors in C i have weight 2”- ‘. It follows that if C is perfect and C ’ # {O}, that is rank(C) < IZ, then T(u) and H(u) are well defined and Lemma 4.4 applies. This of course leads to the question whether there exist perfect codes of length 12and rank 12.This question will be settled affirmatively in Section VI. V. GENERALIZEDPHELPSCONSTRUCITON The following construction of perfect codes is in some sense a generalization of the construction of Phelps [9] and Solov’eva [ll]. Let I’ be a subset of F,“. Let ti = {A,, A2,***, Ak} and 9 = {B,, &;.., BJ be two ordered sets of subsets of I? For u E V, define h,(u)

= {i: u EAJ,

R,(u) = Ii: u E B,},

A, = cl + C’,

A, = c2 + C’,

A, = cl + c2 + C’, B, = Cl,

B, = C,,

B, =cl

+ C,,

B, = c2 + C,.

(15)

It can be readily verified that {A,, A,, A,, AJ and {B,, B,, B,, B4) form a perfect segmentation of the set

UEE,Y+l

* 2v-(mp1) + IT(

A, = C’,

v = C,

u

(c2 + C,). Furthermore, any two partitions

A,, A6;--, An+3 and B,, B6;.-, Bn+3 of the set Ft \ V

into perfect codes (say, the cosets of Cl or C,) complete {A,, A,, A,, Ah) and {B,, B,, B,, B4) to a perfect segmentation of F,“. Alternatively, let a E Fi \ I/ and define, for

instance, B, = a + C’, B, = a + c2 + C’, A, = a + Cl, A,=a+c,+C,,

B, = a + cl + C’, B, = a + cl + c2 + C’, A, = a + C,, A, = a + c2 + Cl.

(16)

Then again {A,, A,, A,, As) and {B5, B,, B,, B8) is a perfect segmentation of the set a + v. Continuing in this manner one can construct perfect segmentations of any even order up to 2(n + 1). Let V,, V,;.., Vk be an arbitrary collection of sets. We say that these sets are noninterlaced if for 1 5 i, j < k either F = I$ or q n “; = 0. Lemma 5.2: For any perfect code of length n = 2v + 1 = 2m - 1, the following four statements are equivalent:

a. There are exactly Y + 1 distinct sets T(u). where Ai E ~2 and Bi E 9. We say that & and 9 form a b. There are exactly v + 1 distinct sets H(u). perfect segmentation of order k of the set V, if both c. The 2” sets T(u) are noninterlaced. U iEiig(u) Ai and U i E ita Bi are perfect codes of length d. The 2” sets H(u) are noninterlaced. 12,for all u E V. Proofi (a) j (c) Let T(u,) z T(u,) and T(u,) n Proposition 5.1: Let ti and 9 be a perfect segmenta- T(u,) # 0. Then IlJ UC,,+,T(u)l 5 (v + 1). 2”-(“- l) tion of Fl. The code C defined by (T(u,) n T(u,)] I 2” - 1. It follows that there exist u E F,” such that u @ UuEEi+l T(u). But then H(u) = 0, a C = {(ulu): u E AT, u E B,), contradiction to Lemma 4.4. (c) * (a) Assume that there where the superscript * denotes extension by a adding a are k distinct sets T(u). Obviously if the 2” sets T(u) are noninterlaced, then the k distinct sets are disjoint. Hence parity check, is a perfect code of length 2n + 1. and k = 2”-l Proofi Let the sets T(u) and H(u) be defined in the 2” = IF,“\ = ]IJUEE2Y+IT(~)I= k-2”-@-‘) obvious way on the first n + 1 coordinates of C. The set = Y + 1. Thus (a) e (c). By similar argument (b) a cd). of all the elements of G? that contain a given vector To complete the proof it is sufficient to show that (c) * u E Fl is clearly h,(u). Hence H(u) = U i E AB(UjAT = (d). For u1 # u2 let H(u,) = {x1,x2;.*,xJ and 2%~) = A,)*. Similarly T(u) = tJ iE n,cU,Bi. Thus C is {Yl, Y2,“‘, y,), where s = 2 “-(m-1). Then for i = 1,2;**, s, (U i E Aa perfect by Lemma 4.4. w u1 E T(x~) and u2 E T(y,). Hence by (c), T(x,) = T(x,) To see that Proposition 2.5 is a special case of Proposi**. = Rx,) and T(y,) = T(y2) = a** = T(y,). If tion 5.1 note that any two partitions of Fg into (n + 1) T(xi) # T(y,), then obviously {x1, xZ;.., XJ n perfect codes form a perfect segmentation of F;. In fact, {Yl, Y2,“‘, y,) = 0, i.e., H(u,) n H(u,) = 0. Now assume

IEEE

760

TRANSACTIONS

T(xJ = T(y,). Clearly, yi e H(u,) implies u1 g T(y,) and hence T(y,) # T(xi). Therefore y, E H(u,) for all i, and H(u,) = H(u,). Thus (c> =. (d). A similar argument shows 1 (4 = Cc>. We say that a perfect code is noninterlaced if it satisfies (a)-(d), otherwise we say that it is interlaced. The set of all the noninterlaced perfect codes is produced by the construction of Phelps [9] and Solov’eva [ 111(Proposition 2.5). Corollary 5.3: A perfect code C of length n = 2v + 1 is in P,(n) if and only if it is noninterlaced for some vector w of weight v + 1 in C ’ . Proofi Without loss of generality we may assume that the nonzero entries of w are in the first v + 1 positions. ( 3 > As the construction of Proposition 2.5 employs partition of F; into (v + 1) perfect codes, (a) and (c) hold. (*) It follows from the proof of (a> * (c> in Lemma 5.2 that for any perfect code

U UE.,+J%d = F;, U uEF;H(~)

= El+‘.

(17) (18)

ON INFORMATION

THEORY,

VOL.

40, NO. 3, MAY

1994

length n, since there is only one nonzero codeword in C ’ and the definition of T(u) and H(u) for C is unique. Hence, in view of Corollary 5.3, C $%P2(n> for all n. Establishing nonequivalence between two families of perfect codes is in general a difficult task. This task is greatly simplified for codes of length 15, by virtue of the well-known fact that the only perfect code of length 7 is the linear Hamming code (cf. [7]). Assuming n = 15 in the foregoing construction, the rank of C is 14. By Lemma 2.2 the rank of all the codes in 1/(15) is 12. By Lemma 2.4 the rank of all the codes in M(15) is at most 13. Hence C e 1/(15) u M(15). The set of all the Phelps codes of length 15 is given by the union of P,(15), P&5), and P,(15). We have already established C @ PJ15). By Lemma 2.7 the rank of all the codes in P&15) and P&5) is at most 13. Thus C @ lJ k=2,4,8P,(15>.Finally, it is a matter of straightforward verification that C is not equivalent to any of the three perfect codes of length 15 in Bauer et al. [l].

VI. FULL-RANKPERFECTCODES A perfect code C c F,” is of full rank if rank(C) = n, By (a), (c), and (171,the (v + 1) distinct sets T(u) constior equivalently (C) = Fl, where ( * > denotes the linear tute a partition of F;. By Lemma 4.4, each of the codes in span. Note that in view of Lemmas 2.2, 2.4, and 2.7 none the partition is a perfect code of length v. Similarly by (b), of the known constructions produces perfect codes of full (d), (181, and Lemma 4.4, the (v + 1) distinct sets H(u) rank. It is also easy to see that the maximum rank of a constitute a partition of E,“+ ’ into extended perfect codes. code resulting from the generalized Phelps construction Using Proposition 5.1 we now construct interlaced per- of Proposition 5.1 is n - 1. The question of the existence fect codes of length n = 2v + 1 = 2”’ - 1 and any rank of full-rank perfect codes is of importance in the context of classification of perfect tilings. G iven v c Fl, the set I’ intherangeofn-m+lton-l.AsbeforeletV=C, is said to be a tile of FJ if it is possible to perfectly cover U (c2 + Cl> = C, U (ci + C,), where Cl and C, are isoF; with disjoint additive translates of I/. In other words, morphic Hamming codes of length v and rank v - (m there exists a set A c F,” such that each x E FJ has a 0, and let {A,, A,, A,, A4), and {B,, B,, B,, BJ be a perfect segmentation of I/ as in (15) or (16). Let (a, + unique representation of the form x = u + a, where u E v and a E A. The pair (V, A) is then said to be a perfect Cl>, (a, + Cl);-., (a, + Cl> and (b, + Cl>, (b, + tiling of F,“. A perfect tiling is of full rank if (I’) = (A) C,>;**,(b, + Cl> be two partitions of FZy into cosets of = F;. The study of [2] presents a recursive construction of Cl, such that a, = b, = 0 and a, = b, = c2. Define a perfect tilings which produces all the perfect tilings of F,“, perfect segmentation of F; by completing provided no full-rank perfect tilings exist. Indeed, a full{Al, 4, A,, AJ and {Bl, &, B,, B4I with Ai+ = ai + Cl and Bi+3 = bi + Cl, for i = 2,3;**, Y. The rank of a per- rank perfect code together with a Hamming sphere of fect code C, constructed by applying Proposition 5.1 to radius 1 constitute a full-rank perfect tiling. Furthermore, it is shown in [2] that, full-rank perfect tilings exist if and this perfect segmentation, is given by only if there exist perfect codes of full rank. Such codes are constructed in this section. rank(C) = 2 rank (C,) + rank (I), First we need to restate the definition of the sets ti and where I = {(OlO>,(c,lO>,(Olc,>) U {(ailbi): i = 2,3,-e., v). 9 in (7) in more general terms. As before let h,, h2;.., h, Obviously, be the columns of H, the parity check matrix of the Hamming code Zn, arranged in some fixed order. Let z be m I rank(I) 5 2(m - 1) any nonzero vector in Fp. Then there is obviously a and the vectors a2, a3;.*, a, and b,, b3;.., b, can be al- unique i E {1,2;**, n}, such that z = hi. We denote this ways chosen such as to make l? have any rank in the index i by p(z). Further, the vector z induces a partition above range. Since rank(C,) = v - (m - l), the rank of of the columns h,, h2;*., hrpczj- 1,h+,(rj+ l,..., h, into Y C can be made to attain any value in the range of pairs (hi, hiI, such that hi + hi = z. We shall write j = n - m + 1 to n - 1. Furthermore, since we employed a $&> and I = +Jj>. R equiring in addition to the above perfect segmentation of order Y + 3 in the construction of also i < j makes the partition unique. More precisely, C, it follows from Lemma 5.2 that C is interlaced. there is a unique set I c { 1,2,-a*,n) \ {p(z)} of cardinal@ Now assume that the rank of C is n - 1. Then v, such that hi + h+zci, = z and i < 4=,(i), for all i E I. C cannot be equivalent to any noninterlaced code of With this notation we may define for each z E FJ’ \ (0)

ETZION

AND

VARDY:

PERFECT

BINARY

CODES:

CONSTRUCTIONS,

J&Z> = { E F,“: V i E I,xi

= x+,(~)

‘, = ~

(19)

where the summation determining x,(,) is modulo 2. By construction d(z) cg for all z. One can easily verify that &(zl) and G ’(zl) are isomorphic to ti(z2) and a(~,), respectively, for all zi, z2 E FT. Furthermore both (7) and (10) are special cases of (19), corresponding to z1 = h, and z2 = h,. Hence for all z, M(z) and s(z) perfectly cover the same subset of F,” by Corollary 3.4. We are now in a position to describe the construction of full-rank perfect codes. We shall construct these codes from the Hamming code Z$ by the “cut and paste” method. That is, some m disjoint subsets of Xn, isomorphic to the code d(z) of (19) are removed from 3. Then cosets of these subsets are pasted in their place so that the resulting code is perfect and has full rank. Let m r 4. For a positive integer k 5 m let zl, z2;.., zk be some k linearly independent vectors in Fp. Obviously, G ’(zi) n9(z,> = 0 for any z1 # z2. However, it follows from the proof of Proposition 3.5 that Iti ndz2)l = 20.5(“+‘) for all zl # z2. Thus our first task is to find k codewords cl, c2;.*, ck in G?$,such that the sets cl + ck +&‘(z,) are disjoint. dz,>, c2 +-44,--, Lemma 6.1: There exist cl, c2;.*,ck ~3, such that (ci + &( zi>> n (cj + JZ?(Z~>> = 0 for any distinct i, j E {1,2;.., k}. Proofi Define a mapping 5 from the nonzero vectors of F,” onto the vectors of weight 1 in Fl as follows:

Vz l ‘~\{O l,

5(z)= (Xl,X2,“‘, where xi =

1



i 0,

XJ i =

q(z),

i # q(z).

Using this notation, set + ((zl + z2 + Zj) + ((zl + z2 + z+J

c2 =

5(q) +

+ 5(z2

+z,

+

5(Zl

+ Z2 +

+

and AX,(,) = 1 + Ci E IXi},

+ 5(Zl

5(Zi)

x,)EF~~:~~EI,x~=x~*(~)

= {(X1,X,,“‘,

761

ENUMERATION

‘..

+‘j/2)

i=l

and asp = Ci E Ixi},

Cl = [(zl)

AND

O therwise set

the sets d(z) and B(z) as follows,

Laz>

PROPERTIES.

5(Zj/2+1

+

“’

+zj)*

(22)

Note that s( t(z)> = Ht(z)’ = z. Thus one can readily verify that s(cj) = 0 for all j, and the vectors cl, c2;**, ck are indeed in q. As zl, z2;**, zk are linearly independent, the weight of cj is just the number of summands in (20)-(22). Counting these shows that cl, c2;.‘, ck are all of even weight. NOW suppose that (Ci +d(Zi)) n (Cj +M(zj)) + 0. Then ci + x = cj + y for some x = (x1, x2,***, xn) EdZi) y,) E&(zj). The parity of x + y is and y = (yl,y2;--, given by PCx +

Y)

= Ii xi + 5 Yi = xp(zi) + Yq(rj)7 (23) i=l

i=l

where all summations are modulo 2, and the second equality follows from (19). Without loss of generality assume that i < j and let ci = (a,, a2;**, a,), Cj = a’,). It follows from (20)-(22) that (a;, a;;*-, aV(zj) = 0, a,(zi) = a;(q) = 1, %,+q = a;(,, +rj) = 0. “,(z,) = 1,

Hence we have xdri) = Yacq)’

‘VVj)

= 1 + Y&j),

X&,+rj) = Yp(ri+zi).

(24)

Substituting (24) into (23) yields p(x + y> = x~(~,) + xqp(rj) + 1. Since ~~~4o(Zj))= cp(Zi + Zj) we have asp = where the first equality follows from Xp(r,+r,)= Y’p(zi+zj)’ (19) and the second from (24). Thus p(x + y) = x~~~,) + y,(, +Z,)+ 1. Similarly, since ~=(~o(Zi)) = qtzj + zi), we havi ;p(e.+z.)= Y+) = X,W and therefore p(x + y> = 1. However: s’lnce both ci and cj are of even weight, it follows that p(x + y) = p(ci + cj) = 0, which is a contran diction. Thus (ci +dzi)) n (Cj +dZj)) = 0. Denote

J2= 6

+z,),

+ Zj/2+2

(Cj

+JVCzj>)>

(Cj

+L8(zj))

j=l 5(q)

+

5(Zl

+ z3 + ZJ

cm

+ z3 + ZJ,

92

=

;1 j=l

c4 =

((zl>

+

5(z2)

+

[(Zj)

+

+

5tz1

5(z4)

+

5tz1

+ z2 + z,>

and define C = (Zn \JJ?) U 6. Let V, respectively I”&, be the set of all vectors in FJ wjthin distance 1 from some codeword of .G?,respectively 9. By Corollary 3.4 we have + 5(z2 + z3 + zq). V,- = Vg. Since Z$ is linear, cl, c2;**, ck ~3, and 1;4(Zi) If k < 4, then in order to obtain the vectors cl and c2 we cq for i = 1,2;**, k, it follows that JZ?cZ$ and therecan complete zl, z2;**, zk with some z~+~, zk+z,“‘, z4 fore F; \ V’ is perfectly covered by +Z$\M. Thus any such that zl, z2, z3, z4 are linearly independent. Hence- x E F; is within distance 1 from some codeword of C. forth let j E {1,2;**, k) \ {1,2,4}. If j is odd, define Obviously, l&l = k2”. Hence if cl, c2;*., ck are such that cl + &(,z,), c2 + &(~~),..a, ck + +(zk) -are disjoint, then l.~.$~~;==l~~l. Thus ICI = pnl - l&l + I94 = 2”-” and C is c.9) c; = f: 5(Zi> + ((zl + z2 + -.a fZj). +

5tz1

+ z2 + z,>

i=l

+ z3 + z,>

IEEE

762

TRANSACTIONS

ON INFORMATION

THEORY,

VOL.

40, NO. 3, MAY

1994

where co = 0, ci;.., cNel are the codewords of ‘Z’, and x = (x0, Xl,“‘, XN- 1) is an arbitrary vector of F2N. Thus 1R can be identified with the space FzN whose coordinates are indexed by the codewords of %Y.Clearly IfiI = 2N = 220.5(n+1)-log(“+1)* Hence in order to see that the number of nonequivalent codes in Sz approaches 220.5’“+”as n -+ m, JZ’(Z), it follows that using (u1,u2;.*,u,_,) and (cj +. it is sufficient to observe that the number of codes equiva9(zj)) we can generate &(zj). Thus the vectors lent to a given C E R is at most 2”n! = 0(2n’ogn). The Ul, Uz,“‘, u,-,, , ((z,);.., ((zk) are in (C). To see following proposition provides a more precise enumerathat these vectors are linearly independent, assume to the tion of the nonequivalent perfect codes in a. contrary that Proposition 7.1: The number of nonequivalent perfect x = alvl + a2u2 + .** +cY,~,v,-, codes in R is at most 2@) and at least 2f(“), where + *-* +&((Zk) = 0 +& t(zl) + &5(4 Proposition 6.2: rank(C) = n - m + k. Proofi Obviously, rank (C) = rank ((C >). Since Pn \ 2l= 2”-m - k2” > 2n-m-1 more than half the codewords of Z$ are contained in C. Hence < c (C). Let Ul, V2,“‘, u,-, be a basis for 3. Since 9’(z) = t(z) +

for some al, CX~;*.,a,-,, pl, p2;*., Pk E GF(2). But then n-WI s(x) = c ais + 5 PjS( () = i pjzj = 0, which contradicts the fact that zl, z2;**, zk are linearly independent. To see that (C > is generated by 5(z,), 5(z,);-*, ttzk) note that Ul, Vz,“‘, up,, ... 2 *n-m and c(zj) generate all the vectors in (cj + n 2;z”z;,. Setting k = m in the foregoing construction produces a perfect binary code of full rank. Hence, we have the following result. Corollary 6.3: For any m 2 4, there exists a full-rank perfect code of length 2” - 1. VII. ON THE NUMBER

OF

NONEQUIVALENT PERFECT

CODES

Consider the set ti defined in (7). As shown in Section III, JZ! is a linear subcode of the Hamming code Zn of length n, provided the columns of H are arranged as in (6). For convenience let us rearrange the columns of H, such that h,, + h2i-l = ho = z for i = 1,2;**, v. After such rearrangement, the subcode & is generated by the set of v vectors of weight 3 in F,“, hereafter called triples, which all concur in the first (i.e., the leftmost) coordinate. There is an essentially unique set of coset representatives for & in Xn. These may be characterized as follows, Let ‘8 be a Hamming code of length v. Then the coset representatives of JZ?are obtained from the codewords of %?by writing 0 as 00, writing 1 as 10, and then appending 0 in the first position. With a slight abuse of notation we shall write the coset of JZZcorresponding to the codeword c E 55’as (c + &‘). Thus Zn = U c E ,(c + &). Indeed, the set 9’ defined in (7) is also a coset of & corresponding to the coset leader (110). Furthermore for any c E ‘Z the cosets (c +&‘) and (c + 95’) perfectly cover the same subset of F,” of cardinality (n + 1)2”. Hence choosing for each c E % ’either (c +&) or (c + Z&‘), and taking the union of the [%?:Icosets, we obtain a set fi of distinct perfect codes of length n. Let N = 2Y-m+ ’ denote the cardinality of %9.A code C E R may be written as N-l c

=

u i=O

g(n)

= 2°.5(n+1)-‘og(n+1) - 0.5(n + 1) + log(n + 1).

j=l

j=l

i=l

f(n) = 2°.5(n+1)-‘og(n+1) - (n + 1) - log2 (n + l),

((XilO>

+

ci +&d),

(25)

Proofi We shall restrict our attention to a subset R, of Q which consists of all the codes that contain the 0 vector. Since fl, and CR\ anoare mapped onto each other via translation with (110)vector, we have Ifi,1 = InI/2 = 2N-1. Let C E 0,. The number of codes in fin, that are isomorphic to C is given by l@l/l~l, where CI,is the set of all permutations that map C into R,, and ? is the group of all permutations that map C onto itself, that is q = Aut (C). Let cpE @ . Since all the codes in Q2, contain &‘, some subset of C is mapped under q onto M. Evidently this subset must contain v triples which all concur in some coordinate. Thus, p may be represented as cp= TUT, where r is a permutation that maps, in some fixed way, a set of v concurring triples of C onto the triples of &, and rr E Aut (M). As the set of triples of a perfect code forms a Steiner triple system, there are exactly n sets of 1, concurring triples in C. Indeed, C does not necessarily contain all the linear codes generated by these triples. Thus, the number of permutations r which produce distinct results is at most n. Now consider the image C” of C under rr. Obviously, ((~~10)+ ci +&)” = (~~10)+ r(ci) +&‘. The permutation v may be conveniently represented as rr = up, where u is a permutation on the blocks (2i,2i + l), and p is a permutation which interchanges the positions within the blocks. The action of p on ci amounts to interchanging some of the 10 positions in ci to 01. If the number of positions interchanged is even, then evidently p(ci> + ti = ci + M. If the number of positions interchanged is odd, then (~~10)+ p(ci) +A? = (1 + x,10>+ ci + &. Let up be a binary vector of length v whose nonzero entries correspond to the blocks interchanged by p. If up E $??I, then the number of positions interchanged is even for all ci E $5?‘ and , therefore C is mapped onto itself. Hence we have 191 2 1%~’I = 2”-‘. If Vp~W, then exactly half the codewords of $Y are even on the nonzero positions of up and half are odd. Hence exactly half of the xi are complemented, and the action of p on C is equivalent to adding a nonzero codeword of the simplex code 9 of length N - 1 to the characteristic vector of C in F?. Hence j@l/l?l 2 191 = 2U-m+1. This

ETZION AND VARDY: PERFECT BINARY CODES: CONSTRUCTIONS, PROPERTIES, AND ENUMERATION

shows that the number of nonequivalent codes in KI is at most 2gcn). Now consider the action of u on C. The permutation cr may be thought of as a permutation on the set {1,2;**, v}. If a(ci) @ %?for some ci E g, then the image under r of ((~~10)+ ci +@) is disjoint with all the codes in a,, for any p. Hence (T E Aut (E’). To summarize the above, the number of codes in R, that are isomorphic to a given C E fi, is given by

where the second inequality follows from the fact (cf. [61, see also [7, p. 2321) that Aut (‘@ is the general linear group GL(m - 1,2) of order nE;‘(2”* - 2’). Finally, some of the codes in KI, can be obtained from C E &, by translation rather than by permutation. Since all the codes in R, contain the 0 vector, obviously (a + C) E fin, only if a E C. Since M is linear, if a EM, then a + C = C. It follows that the number of nonequivalent perfect codes in 0, is at least 2N- l * 191. I4

I@l*lCl

22Y-m+1 -1

2

2”.

p-1)2*

22(u-m+l)

2 2f@). n

It was shown by Phelps [lo] that the number of nonequivalent perfect binary codes of length IZ is at least 2*” for some constant c < 1. Although the value of this constant c is not specified in [lo], it may be shown that the partition C,O - {OO},c,o = (111, CA = (lo}, c; = (01) asymptotically attains c = 0.5 - E for any E > 0 and sufficiently large IZ. However the rate of convergence to c = 0.5 resulting from the argument of Phelps 1101is slower than the rate predicted by Proposition 7.1.

163

ACKNOWLEDGMENT

The authors are indebted to Gerard Cohen, Simon Litsyn, Ronny Roth, and Gilles ZCmor for stimulating discussions. Alexander Vardy also wishes to thank Hagit Itzkowitz. REFERENCES

[II H. Bauer, B. Ganter, and F. Hergert, “Algebraic techniques for

nonlinear codes,” Combinatotica, vol. 3, 21-33, 1983. G. D. Cohen, S. Litsyn, A. Vardy, and G. Zemor, Tilings of binary spaces, preprint. P. Delsarte, “Four fundamental parameters of a code and their combinatorial significance,” Inform. Control, vol. 23, pp. 407-438, 1973. [41 R. Jordan, Calculus of Finite Differences. New York: Chelsea, 1960.

[51 J. H. van Lint, “Nonexistence theorems for perfect error-cor-

recting-codes,” in Computers in Algebra and Number Theory, vol. IV. SIAM-AMS Proceedings, 1971. t61 F. ‘J. MacWilliams, “Erro; correcting codes for multiple level transmission,” Bell Syst. Tech. J., vol. 40, pp. 281-308, 1961. I71 F. J. MacWilliams and N. J. A. Sloane, The neorv of Error-Carrecting Codes. New York: North-Holland, 1977. . Bl M. Mollard, “A generalized parity function and its use in the construction of perfect codes,” SIAM J. AZg. Disc. Meth., vol. 7, pp. 113-115, 1986. [91 K. T. Phelps, “A combinatorial construction of perfect codes,” SIAM J. Alg. Disc. Meth.; vol. 4, pp. 398-403, 1983. Ilo1 K. T. Phelps, “A general product construction for error-correcting codes,” SIAM J. Alg. Disc. Meth., vol. 5, pp. 224-228, 1984. lrrl F. I. Solov’eva, “On binary nongroup codes,” Methodi Diskr. Analiza, vol. 37, pp. 65-76, 1981, (inRussian). m l A. Tietavainen. “On the nonexistence of perfect codes over finite_fields,” SiAMi. Appl. Math., vol. 24, pp. 88-96, 1973. [13] J. L. Vasil’ev, “On nongroup close-packed codes,” Probl. Kibemet., vol. 8, pp. 375-378, 1962, (in Russian). [izi G. Zemor, personal communication, 1992. V. A. Zinov’ev and V. K. Leont’ev, “The nonexistence of perfect codes over Galois fields,” Probl. Control and Info. Theory, vol. 2, pp. 123-132, 1973, (in Russian).

Suggest Documents