Open Problems on Cyclic Codes∗∗
Total Page:16
File Type:pdf, Size:1020Kb
Open problems on cyclic codes∗∗ Pascale Charpin ∗ Contents 1 Introduction 3 2 Different kinds of cyclic codes. 4 2.1 Notation . 5 2.2 Definitions . 6 2.3 Primitive and non primitive cyclic codes . 17 2.4 Affine-Invariant codes . 21 2.4.1 The poset of affine-invariant codes . 22 2.4.2 Affine-invariant codes as ideals of A . 28 3 On parameters of cyclic codes. 34 3.1 Codewords and Newton identities . 35 3.2 Special locator polynomials . 47 3.3 On the minimum distance of BCH codes . 59 3.4 On the weight enumerators . 65 3.4.1 The Reed-Muller codes . 67 3.4.2 On cyclic codes with two zeros . 71 3.4.3 On irreducible cyclic codes . 83 3.5 Automorphism groups of cyclic codes . 88 3.6 Are all cyclic codes asymptotically bad ? . 90 ∗INRIA, Projet CODES, Domaine de Voluceau, Rocquencourt BP 105, 78153 Le Ches- nay Cedex, FRANCE. e-mail: [email protected] 1 4 Related problems. 90 4.1 Some problems in cryptography . 91 4.2 Cyclic codes and Goppa codes . 96 4.3 On the weight enumerator of Preparata codes . 104 5 Conclusion 117 ∗∗ \Handbook of Coding Theory", Part 1: Algebraic Coding, chapter 11, V. S. Pless, W. C. Huffman, editors, R. A. Brualdi, assistant editor. Warning. The Handbook of Coding Theory was published in 1998. Some research problems, presented as Open problems in this chapter, are solved, or partially solved, today. 2 1 Introduction We do not intend to give an exhaustive account of the research problems on cyclic codes. Many are suggested in Chapter 1 and in several other chapters. There are chapters which deal with a specific class of cyclic codes or with related problems and it would be superfluous to say it again. Above all we want to avoid a boring enumeration of the open problems; many are just mentioned and could be solved soon. Our purpose is to emphasize that this topic remains of great interest for researchers in coding theory. It is a fact that cyclic codes are crucial objects of coding theory. The involvement of Reed-Solomon codes and of BCH codes in a number of applications is well-known. On the other hand the generalized Reed-Muller codes are at the core of algebraic coding theory and they should be considered as \classical". The reader can be convinced of the importance of cyclic codes by referring to the recent publications and proceedings including as a topic Error-control Coding or, more generally, Coding Theory. However there are famous old problems which have remained open for a long time and we have chosen to focus on them. They essentially involve questions of weights and forms of codewords. Our concern is to place the problem in a large theoretical context. It can be the general behaviour of group algebras, or of polynomials over finite fields, or of the solving of algebraic systems. We want to show that general tools can be used here in an extremely rich environment. Furthermore we wish to point out any results on cyclic codes that apply in other contexts. We give an elementary presentation, choosing simple aspects and basic results. We don't want to develop a theory, or even to suggest a method precisely. It is because we have in mind that a hard research problem is generally solved by building a theory for solving it. The main recent illustra- tion of this fact in coding theory is the explanation of the duality between Preparata and Kerdock codes. We will often give results without proofs or with a sketch of a proof because of the special subject of our chapter. Generally we prefer to explain rather than to prove precisely. Following the same idea, we mainly treat binary codes, which are simpler to handle. BCH codes and GRM codes appear many times. This is because these classes impose the main filters of the general class of cyclic codes | it is usual, when we study any cyclic code, to begin by looking at their relations with BCH codes, or with GRM codes 3 when the code is primitive. For this reason, any result on BCH codes or on GRM codes could have surprising consequences. In contrast, the Quadratic Residue codes , which form a famous class with remarkable properties, appear as a specific class. The main notation and definitions are introduced in Section 2 and they will be held to afterwards. However they will be specified again as often as necessary. We don't give a series of \research problems". We think that \comments" are more suited to our purpose. They are placed at the end of the sections; short sections have no comments. Our purpose or our choices are explained at the beginning of the main sections. This chapter is not self-contained. We suppose that at least the intro- duction on cyclic codes given in Chapter 1 is known. Our main reference for the theory of finite fields is [102]. 2 Different kinds of cyclic codes. In this section we introduce cyclic codes. We present notation, basic defini- tions and fundamental tools or properties. However our main purpose is to describe the general context of our chapter. Cyclic codes are defined as group algebra codes. We distinguish cyclic codes and extended cyclic codes, primitive and non primitive cyclic codes, simple-root and repeated-root cyclic codes. We then define several group algebras, but we emphasize that the ambient space of the primitive extended codes is the fundamental algebra. That is the field algebra, say A, in which the extended cyclic codes appear as central objects. For this reason, we explain how a non primitive code can be seen as a primitive code. We also give an extensive study of the \cyclic ideals" of A, completing those of Assmus and Key (chapter XXX). On the other hand, any cyclic code satisfies a set of equations on an ex- tension field, say F. These are stated by means of several Fourier transforms. Any simple-root cyclic code is fully defined by this set of equations. Therefore, the properties related with the structure of any group algebra, especially of A, and the Fourier transforms, from such a group algebra to F, appear as general tools for considering open problems on cyclic codes. 4 2.1 Notation In accordance with Chapter 1, a cyclic code is viewed as an ideal in a poly- nomial ring over a finite field; it is characterized by its generator polynomial. In Chapter 1, the proper context for studying cyclic codes of length n over the finite field k of order q, q = pr and p a prime, is the residue class ring n Rn = k[X]=(X − 1): Coordinate positions are labelled as 0; 1; : : : ; n − 1 and the cyclicity is the invariance under the shift i 7−! i + 1. Our presentation here is not really different because it is relevant also to the one-variable approach, as opposed to that introduced by Kasami, Lin and Peterson in [85] where the cyclic codes are defined as polynomial codes | such a code corresponds to a set of polynomials in m variables. This approach, which is usual for the descrip- tion of the generalized Reed-Muller codes, was later called the m-variables approach [64]. In our approach, any cyclic code is always described by means of polynomials with one indeterminate. However we take into account the fact that the support of a cyclic code is always a cyclic group G∗, the group of the roots of Xn − 1. Cyclic codes are group algebra codes. So coordinate positions will be labelled as α0; α1; : : : ; αn−1, where α is a primitive nth root of unity. The cyclicity is the invariance under multiplication by α. Thereby the symbols of any codeword are the values of the Mattson-Solomon (MS) polynomial on each αi. The MS polynomial will play an important role: actually our definition of cyclic codes is based on this concept. Two finite fields are necessary for defining the ambient space. They are the alphabet field k and the full support field F, the splitting field of Xn − 1 0 over k. The order of F is qm , where q is the order of k. As q = pr, p is the characteristic of the ambient space; the field F will be generally identified with the field of order pm, m = rm0. By the notation G∗ we want to emphasize that the group is multiplicative and does not contain zero; G∗ is a subgroup of the multiplicative group of F. So the notation G means G∗ [ f0g. When the codes are primitive, G∗ is exactly the multiplicative group of the field F and then G = F. For clarity, if necessary, we will denote by GF (q) the finite field of order q. 5 2.2 Definitions Let us denote by M the group algebra k[fG∗; ×}], which is the group algebra of the multiplicative group G∗, over the field of order q denoted by k. An element of M is a formal sum: X x = xg(g) ; xg 2 k : g2G∗ Addition and scalar multiplication are component-wise and multiplication is given by the multiplication in G∗: ! X X λ xg(g) = λxg(g) ; λ 2 k ; g2G∗ g2G∗ X X X xg(g) + yg(g) = (xg + yg)(g) ; g2G∗ g2G∗ g2G∗ and ! X X X X xg(g) × yg(g) = xhyk (g) : g2G∗ g2G∗ g2G∗ hk=g It is clear that the following map is an automorphism between the algebras Rn and M: Xn−1 Xn−1 X i i x(X) 2 Rn; x(X) = xiX 7−! (x(X)) = xi(α ) = xg(g) i=0 i=0 g2G∗ where α is an nth root of unity.