Optimal Formally Self-Dual Codes over F5 and F7 Steven T. Dougherty Department of Mathematics University of Scranton Scranton, PA 18510 USA T. Aaron Gulliver Department of Electrical and Electronic Engineering University of Canterbury Private Bag 4800 Christchurch, New Zealand and Masaaki Harada Department of Mathematical Sciences Yamagata University Yamagata 990–8560, Japan June 22, 2011 Abstract In this note, we study optimal formally self-dual codes over F5 and F7 . We determine the highest possible minimum weight for such codes up to length 24. We also construct formally self-dual codes with highest minimum weight, some of which have the highest minimum weight among all known linear codes of that length and that dimension. In particular, the first known [14,7,7] code over F7 is presented. We show that there exist formally self-dual codes which have higher minimum weights than any comparable self-dual codes.
• Keywords: Formally self-dual codes, optimal codes. • Running title: Optimal Formally Self-Dual Codes
1
1
Introduction
Recently there has been interest in formally self-dual codes. Binary and ternary formally self-dual codes have been widely investigated (cf., e.g. [6] and [2]). Some of them have higher minimum weight than any self-dual codes of that length. This is one reason for our interest in formally self-dual codes. In this note, we study optimal formally self-dual codes over F5 and F7 . We determine the highest possible minimum weight for such codes up to length 24. We also construct formally self-dual codes with highest minimum weight, some of which have the highest minimum weight among all known linear codes of that length and that dimension. We show that there exist formally self-dual codes which have higher minimum weights than any comparable self-dual codes. We begin with some definitions. A linear [n, k] code C over Fp is a k-dimensional vector subspace of Fnp , where Fp is the finite field with p elements, p a prime. An [n, k] code is called a code of length n and dimension k. The elements of C are called codewords and the weight wt(x) of a codeword x is the number of its non-zero coordinates. The minimum weight of C is defined by min{wt(x) | 0 6= x ∈ C}. An [n, k, d] code is an [n, k] code with minimum weight d. A matrix whose rows generate the code C is called a generator matrix of C. The dual code C ⊥ of C is defined as C ⊥ = {x ∈ Fnp | x · y = 0 for all y ∈ C} where x · y is the usual inner-product of x and y. P The Hamming weight enumerator WC (y) of C is defined as c∈C y wt(c) . A code C is formally self-dual if WC (y) = WC ⊥ (y). Since |C| = |C ⊥ |, n = 2k if C is formally self-dual. A self-dual code (that is C = C ⊥ ) is formally self-dual. We say that a formally self-dual code is optimal if it has the highest minimum weight among all formally self-dual codes of that length. A linear [n, k] code is called optimal if the code has highest minimum weight among all linear [n, k] codes.
2
Methods
In this section, methods are presented to determine the highest minimum weight. Theorem 1 (MacWilliams, Mallows and Sloane [8]) The Hamming weight enumerator of a formally self-dual code over Fp is an element of the ring C[x2 +(p−1)xy, x2 +(p−1)y 2 ] for a prime p. By the above theorem, one can determine the possible Hamming weight enumerators of formally self-dual codes over Fp for a given n and d. Moreover, for a code to exist, the corresponding Hamming weight enumerator must have non-negative integral coefficients. Thus, one can determine the highest possible minimum weight among all formally self-dual codes of a given length. 2
We now present a method for constructing formally self-dual codes. A pure double circulant code of length 2n has a generator matrix of the form [ I , R ] where I is the identity matrix of order n and R is an n by n circulant matrix. A code with generator matrix of the form a b ··· b c (1) , .. 0 I . R c where R0 is an n − 1 by n − 1 circulant matrix, is called a bordered double circulant code of length 2n. These two families of codes are collectively called double circulant codes. Lemma 2 Double circulant codes are formally self-dual codes. Proof. Follows immediately from the definition of double circulant codes, see e.g. [6]. 2
Proposition 3 If there exists a self-dual [2n, n, d] code over Fp where p ≥ 5 then there exists a formally self-dual [2n, n, d] code over Fp , which is not self-dual. Proof. Let C be a self-dual [2n, n, d] code over Fp where p ≥ 5. Let D be the code obtained from C by multiplying α on a coordinate where α is an element of Fp with α2 6= ±1. The codes C and D have identical Hamming weight enumerators and D⊥ can be obtained from C ⊥ by multiplying by α−1 on the coordinate. Since C is self-dual, D and D⊥ have identical Hamming weight enumerators. Since α2 6= ±1, D is not self-dual. 2 For binary and ternary codes, Proposition 3 does not work since the square of a nonzero element is 1. For codes over Fp where p ≥ 5, formally self-dual codes can be constructed from self-dual codes. Therefore, it is worthwhile to construct formally self-dual codes which have a higher minimum weight than any self-dual code of that length. Such formally self-dual codes are presented later.
3
Formally Self-Dual Codes over F5
In this section, we study formally self-dual codes over F5 . We determine the highest minimum weight among all formally self-dual codes over F5 up to length 24. The possible Hamming weight enumerators of formally self-dual codes with the highest minimum weight are given. By exhaustive search, we have found all double circulant codes of length up to 24. Table 1 gives bounds on the highest minimum weight dF (5, n) among all formally selfdual codes up to length 24. In addition, the third column provides examples of formally 3
self-dual codes which meet the lower bound on minimum weight, and the fourth and fifth columns give bounds on highest minimum weight dL (5, n) among all linear [n, n/2] codes and dS (5, n) among all self-dual codes of length n, respectively. Some of the upper bounds on dF (5, n) can be determined from the upper bounds on dL (5, n). For example, Theorem 1 allows for the existence of a formally self-dual [8, 4, 5] code, but the highest minimum weight among all linear [8, 4] codes is 4, so dF (5, 8) = 4. The entries in the fourth column are taken from [1]. The entries in the fifth column are taken from [4] and [7]. Table 1: Bounds on Highest Minimum Hamming Weight for F5 Length n 2 4 6 8 10 12 14 16 18 20 22 24
dF (5, n) 2 3 4 4 5 6 6 7 7–8 8–9 8–10 9–10
Optimal Codes D5,2 , Proposition 3 D5,4 D5,6 , Proposition 3 D5,8 , Proposition 3 D5,10 D5,12 , Proposition 3 D5,14 , Proposition 3 D5,16 , Proposition 3 D5,18 , Proposition 3, (d = 7) D5,20 , Proposition 3, (d = 8) D5,22 , Proposition 3, (d = 8) D5,24 , Proposition 3, (d = 9)
dL (5, n) 2 3 4 4 5 6 6 7 7–8 8–9 8–10 9–10
dS (5, n) 2 2 4 4 4 6 6 7 7–8 8 8–9 9–10
D5,10 shows the following: Proposition 4 There exists a formally self-dual code which has a higher minimum weight than any self-dual code of that length. We now give the possible Hamming weight enumerators W5,n for FSD codes which attain the upper bounds on minimum weight given in Table 1: W5,2
=
1 + 4y 2
W5,4
=
1 + 16y 3 + 8y 4
W5,6
=
1 + 60y 4 + 24y 5 + 40y 6
W5,8
=
1 + (−80 + 256 α)y 4 + (544 − 1024 α)y 5 + (1536 α − 480)y 6 + (640 − 1024 α)y 7 + 256 α y 8
W5,10
=
1 + (1024 α + 120)y 5 + (240 − 5120 α)y 6 + (720 + 10240 α)y 7 + (780 − 10240 α)y 8 + (960 + 5120 α)y 9 + (304 − 1024 α)y 10
4
W5,12
=
1 + (−752 + 4096 α)y 6 + (−24576 α + 7680)y 7 + (−15240 + 61440 α)y 8 + (26480 − 81920 α)y 9 + (61440 α − 12336)y 10 + (9792 − 24576 α)y 11 + 4096 α y 12
W5,14
=
1 + (−252 + 46656β + 326592α)y 6 + (4032 − 279936β − 1679616α)y 7 + (979776β − 4914 + 4898880α)y 8 + (−2612736β + 55020 − 12410496α)y 9 + (24494400α + 4898880β + 17472)y 10 + (−31352832α + 224784 − 5878656β)y 11 + (196056 + 23841216α + 4245696β)y 12 + (238896 − 1679616β − 9797760α)y 13 + (92448 + 279936β + 1679616α)y 14
W5,16
=
1 + (131072α + 1152 + 16384β)y 7 + (−800 − 114688β − 851968α)y 8 + (409600β + 16448 + 2752512α)y 9 + (2688 − 6422528α − 1032192β)y 10 + (11927552α + 79744 + 1949696β)y 11 + (−16515072α − 2637824β + 31808)y 12 + (143360 + 15597568α + 2408448β)y 13 + · · ·
W5,18
=
1 + (4932 + 589824α + 65536β)y 8 + (−524288β − 4456448α − 12648)y 9 + (91584 + 2097152β + 16515072α)y 10 + (−42467328α − 5767168β − 105408)y 11 + (502152 + 85327872α + 11927552β)y 12 + (−230832 − 132120576α − 18350080β)y 13 + (148635648α + 20185088β + 1017648)y 14 + · · ·
W5,20
=
1 + (15600 + 262144 β + 2621440 α)y 9 + (−22544384 α − 2359296 β − 40672)y 10 + (298560 + 10485760 β + 94371840 α)y 11 + (−267386880 α − 407520 − 31457280 β)y 12 + · · ·
W5,22
=
1 + (50952 + 1048576 β + 11534336 α)y 10 + (−10485760 β − 132352 − 111149056 α)y 11 + (934384 + 51380224 β + 519045120 α)y 12 + (−1614807040 α − 167772160 β − 1335840)y 13 + · · ·
W5,24
=
1 + (−56864 + 11534336α + 1048576γ + 1048576β)y 10 + (−65011712α − 6291456β − 10485760γ + 758912)y 11 + (74448896α + 9437184β − 3666880 + 55574528γ)y 12 + (15304576 − 209715200γ + 461373440α + 37748736β)y 13 + · · ·
where α, β and γ are undetermined parameters. We now present optimal double circulant codes and some double circulant codes with high minimum weight. By exhaustive search, we have found all double circulant codes of length up to 20. Table 2 lists the first rows of R for double circulant codes with the highest minimum weight for each length up to 20. For lengths n = 22 and 24, we give some double circulant codes with highest minimum weight among all known linear [n, n/2] codes. If the code meets the upper bound on d, then we also list the values of the undetermined parameters in the possible Hamming weight enumerators W5,n . A remarkable length for optimal formally self-dual codes is 10, because there exist formally self-dual codes which have a higher minimum weight than any self-dual code of length 10. The double circulant formally self-dual [10, 5, 5] codes are divided into three Hamming 5 1 , − 256 and 0 in W5,10 . D5,10 has Hamming weight weight enumerators, namely α = − 64 1 enumerator α = − 64 . Pure double circulant codes with first rows 41110 and 22110 have 5 Hamming weight enumerators α = − 256 and 0, respectively. 5
Table 2: Double Circulant Codes over F5 Codes D5,4 D5,6 D5,8 D5,10 D5,12 D5,14 D5,16 D5,18 D5,20 D5,22 D5,24
Parameters [4, 2, 3] [6, 3, 4] [8, 4, 4] [10, 5, 5] [12, 6, 6] [14, 7, 6] [16, 8, 7] [18, 9, 7] [20, 10, 8] [22, 11, 8] [24, 12, 9]
First Rows 21 211 1110 21110 421110 1211100 31211100 212111000 2343111100 32121110000 244311111010
W unique unique 15 α = 32 1 α = − 16 145 α = 512 49 581 α = − 23328 , β = 23328 1757 α = 16384 , β = − 1689 2048 (not optimal) (not optimal) (not optimal) (not optimal)
From the double circulant formally self-dual codes presented in Table 2 we have the following: Proposition 5 Let dmax (2n) be the highest minimum weight among all known linear [2n, n] codes over F5 . For n ≤ 12, there exists a formally self-dual code with dmax (2n). In particular, at least one code of optimal linear [2n, n] codes has the properties that the code is double circulant and formally self-dual for n ≤ 8.
4
Formally Self-Dual Codes over F7
As in the previous section, we determine the highest minimum weight among all formally self-dual codes over F7 up to length 24. The possible Hamming weight enumerators for formally self-dual codes with the highest minimum weight are also given, along with some double circulant codes with the desired minimum weights. Table 3 gives bounds on the highest minimum weight dF (7, n) among all formally selfdual codes up to length 24. The third column of this table provides examples of formally self-dual codes which meet the lower bound on minimum weight, and the fourth and fifth columns give bounds on the highest minimum weight dL (7, n) among all known linear [n, n/2] codes and dS (7, n) among all known self-dual codes of length n, respectively. Note that there exists a self-dual code over F7 of length n if and only if n ≡ 0 (mod 4). As with p = 5, for some lengths the upper bound on minimum weight of linear [n, n/2] codes is used to determine the highest minimum weight dF (7, n). The entries in the fourth column are taken from [1]. The entries in the fifth column are taken from [5] and [9].
6
Table 3: Bounds on Highest Minimum Hamming Weight for F7 Length n 2 4 6 8 10 12 14 16 18 20 22 24
dF (7, n) 2 3 4 5 5 6 7 7–8 8–9 9–10 9–11 10–12
Optimal Codes D7,2 D7,4 , Proposition 3 D7,6 D7,8 , Proposition 3 D7,10 D7,12 , Proposition 3 D7,14 D7,16 , Proposition 3, (d = 7) D7,18 , (d = 8) D7,20 , Proposition 3, (d = 9) D7,22 , (d = 9) D7,24 , (d = 10)
dL (7, n) 2 3 4 5 5 6 7 7–8 8–9 9–10 9–11 10–12
dS (7, n) 3 5 6 7–8 9–10 9–12
We now give the possible Hamming weight enumerators W7,n with the highest possible minimum weight given in Table 3: W7,2 = 1 + 6y 2 W7,4 = 1 + 24y 3 + 24y 4 W7,6 = 1 + 90y 4 + 108y 5 + 144y 6 W7,8 = 1 + 336y 5 + 336y 6 + 1056y 7 + 672y 8 W7,10 = 1 + (7776 α + 60)y 5 + (960 − 38880 α)y 6 + (1320 + 77760 α)y 7 + (5070 − 77760 α)y 8 + (5760 + 38880 α)y 9 + (3636 − 7776 α)y 10 W7,12 = 1 + (792 − 7776 α)y 6 + 46656 α y 7 + (−116640 α + 11880)y 8 + (11880 + 155520 α)y 9 + (39600 − 116640 α)y 10 + (34560 + 46656 α)y 11 + (18936 − 7776 α)y 12 W7,14 = 1 + (2520 + 279936 α)y 7 + (−1959552 α + 378)y 8 + (40908 + 5878656 α)y 9 + (−9797760 α + 43932)y 10 + (193032 + 9797760 α)y 11 + (218988 − 5878656 α)y 12 + (229824 + 1959552 α)y 13 + (93960 − 279936 α)y 14 W7,16 = 1 + (9792 + 1679616 α)y 8 + (−9696 − 13436928 α)y 9 + (47029248 α + 178080)y 10 + (−94058496 α + 80640)y 11 + (117573120 α + 947520)y 12 + (1044288 − 94058496 α)y 13 + (1751616 + 47029248 α)y 14 + (−13436928 α + 1268352)y 15 +
7
(494208 + 1679616 α)y 16 W7,18 = 1 + (10077696 α + 32508)y 9 + (−30024 − 90699264 α)y 10 + (362797056 α + 597456)y 11 + (276696 − 846526464 α)y 12 + (1269789696 α + 3941784)y 13 + (4661712 − 1269789696 α)y 14 + (10441872 + 846526464 α)y 15 + (−362797056 α + 10261566)y 16 + (7667136 + 90699264 α)y 17 + (2502900 − 10077696 α)y 18 W7,20 = 1 + (113232 + 60466176 α)y 10 + (−604661760 α − 124560)y 11 + (2072160 + 2720977920 α)y 12 + (830880 − 7255941120 α)y 13 + (12697896960 α + 15871680)y 14 + (−15237476352 α + 19000800)y 15 + (12697896960 α + 54709200)y 16 + (−7255941120 α + 64312920)y 17 + (2720977920 α + 69954600)y 18 + (42748560 − 604661760 α)y 19 + (12985776 + 60466176 α)y 20 W7,22 = 1 + (362797056 α + 435336)y 11 + (−908820 − 3990767616 α)y 12 + (19953838080 α + 9020880)y 13 + (−2760120 − 59861514240 α)y 14 + · · · W7,24 = 1 + (1718784 + 2176782336 α)y 12 + (−26121388032 α − 5648544)y 13 + (143667634176 α + 42834528)y 14 + (−48641472 − 478892113920 α)y 15 + · · ·
where α is an undetermined parameters. We now present optimal double circulant codes and some double circulant codes with high minimum weight. By exhaustive search, we have found all double circulant codes of length up to 16. Table 4 lists the first row of R or R0 for double circulant codes with highest minimum weight for each length up to 16. For length 18 ≤ n ≤ 24, we give in the table some double circulant codes with highest minimum weight among all known linear [n, n/2] codes. When the double circulant code is of bordered type, we list the border values (a, b, c) in addition to the first row of R0 (e.g. D7,8 ). If the code is optimal then we also list the values of the undetermined parameters in the possible Hamming weight enumerators W7,n . From the double circulant formally self-dual codes presented in Table 4 we have the following: Proposition 6 Let dmax (2n) be the highest minimum weight among all known linear [2n, n] codes over F7 . For n ≤ 12, there exist a formally self-dual code with dmax (2n). In particular, at least one code of optimal linear [2n, n] codes has the properties that the code is double circulant and formally self-dual for n ≤ 7. Remarks. The optimal [14,7,7] formally self-dual code presented in Table 4 is the first known example of a linear code with these parameters [3]. D7,24 is a formally self-dual [24, 12, 10] code, but it is not known if there exists a self-dual code with these parameters.
8
Table 4: Double Circulant Codes over F7 Codes D7,4 D7,6 D7,8 D7,10 D7,12 D7,14 D7,16 D7,18 D7,20 D7,22 D7,24
Parameters [4, 2, 3] [6, 3, 4] [8, 4, 5] [10, 5, 5] [12, 6, 6] [14, 7, 7] [16, 8, 7] [18, 9, 8] [20, 10, 9] [22, 11, 9] [24, 12, 10]
First Rows 21 211 543 and (1, 1, 1) 21110 421110 1112130 21211100 545211100 4233523110 26311110100 535443021010
W unique unique unique 5 α = 648 17 α = 432 35 α = − 11664 (not optimal) (not optimal) (not optimal) (not optimal) (not optimal)
References [1] Brouwer, A.E.: Linear code bound (server), Eindhoven University of Technology, The Netherlands, http://www.win.tue.nl/win/math/dw/voorlincod.html. [2] Dougherty, S.T., Gulliver, T.A., Harada, M.: Optimal ternary formally self-dual codes, (submitted). [3] Gulliver, T.A.: Construction of Quasi-Cyclic Codes, Ph.D. dissertation, University of Victoria (1989). [4] Gulliver, T.A., Harada, M.: Double circulant self-dual codes over GF (5), Ars Combin. (to appear). [5] Gulliver, T.A., Harada, M.: New optimal self-dual codes over GF (7), Graphs and Combin. (to appear). [6] Kennedy, G.T., Pless, V.: On designs and formally self-dual codes, Des. Codes and Cryptogr. 4, 43–55 (1994). [7] Leon, J.S., Pless, V., Sloane, N.J.A.: Self-dual codes over GF(5), J. Combin. Theory Ser. A 32, 178–194 (1982). [8] MacWilliams, F.J., Mallows, C.L., Sloane, N.J.A.: Generalizations of Gleason’s theorem on weight enumerators of self-dual codes, IEEE Trans. Inform. Theory 18, 794–805 (1972).
9
[9] Pless, V.S., Tonchev, V.D.: Self-dual codes over GF (7), IEEE Trans. Inform. Theory 33, 723–727 (1987).
10