The Hamming and Golay Number-Theoretic Transforms A. J. A. Paschoal , R. M. Campello de Souza and H. M. de Oliveira Abstract— New number-theoretic transforms are derived from II. NEW FINITE FIELD TRANSFORMS DERIVED FROM known linear block codes over finite fields. In particular, two BLOCK CODES new such transforms are built from perfect codes, namely the Hamming number-theoretic transform and the Golay number- In [4] Campello de Souza and coworkers used the fact that theoretic transform. A few properties of these new transforms for every linear transform T , its eigenvectors v satisfy are presented. [T − λ ] v = 0; (1) Keywords— Number-theoretic transforms (NTT), Finite fields, I Linear block codes, Perfect codes, Perfect transforms. where λ denotes the eigenvalue associated with v, to show that it is possible to get an associated parity-check matrix for a block code simply by row reducing the matrix [T − λI]. In this paper we go on a somewhat opposite direction, i.e., starting I. PRELIMINARIES from a linear block code, it is possible to derive a new linear transformation (associated with the generating block code) by Digital transforms are an interesting way to construct completing the parity-check matrix, adding k rows, so as to linear block codes for error correction [4], [5]. Fourier and form a square matrix He and adding it to the matrix λI, i.e., Hartley codes were defined associated with the Fourier number-theoretic transform and the Hartley number-theoretic T = He + λI: (2) transform, respectively. Recently, a new family of multilevel codes – the Pascal codes [14] - has been proposed, which Indeed, λ must be chosen so as to guarantee that det T 6= 0. are constructed from the Pascal number-theoretic transform Such transform receives the name of the linear block code [13]. Also recently, Paschoal [14] proposed a reverse way whose parity matrix was used to derive it. to conceive new digital transforms from known linear block The number of vectors on the whole space of all the N- N codes. Here we present the technique used to engender tuples over GF (p) is p (with no redundancy). The set of two new transforms over finite fields, namely the Hamming all eigenvectors of a transform of length N defined over a Number-Theoretic Transform (HamNT) and the Golay finite field always engender a subspace denoted by V, with Number-Theoretic Transform (GolNT). From now on these dimension k < N with GF (p)-valued components. transforms, based on Perfect Codes, are referred to as “Perfect Definition 1: (perfect transform). A transform T of length Transforms”. Tietav¨ ainen¨ demonstrated in 1971 that the only N over GF (p) is said to be perfect if and only if there is existing perfect block codes over GF (p) are [18] : an integer t such that the eigenvectors subspace V of T has dimension meeting the sphere-packing bound pm−1 pm−1 " t # • Hamming codes N = ; k = − m; d = 3 . X N p−1 p−1 dim = k = N − log (p − 1)i : (3) V p i • Binary Golay code (N = 23; k = 12; d = 7). i=0 arXiv:1806.09727v2 [cs.IT] 25 Sep 2018 The eigenvector subspace of T is a perfect block code [18] • Ternary Golay code (N = 11; k = 6; d = 5). when T is a perfect transform. The perfect codes are also deeply linked to the lattices in III. THE HAMMING NUMBER-THEORETIC TRANSFORM Euclidean spaces [6]. Only the E8 Gosset lattice (associated with the extended Hamming code) and the Leech lattice Λ24 In this section, we illustrate the aforementioned technique (associated with the extended binary Golay code) are perfect splitting it in two ways: sphere packings. a) Fulfilling the Hamming parity-check matrix by adding null rows or using linear combinations of its own rows. b) Cyclic rotating the parity polynomial, h(x). A. J. A. Paschoal, Pernambuco Federal Institute of Education, Sci- ence and Technology (IFPE), Caruaru-PE, Brazil. E-mail: arquime- [email protected]. R. M. Campello de Souza, Federal University of Pernambuco (UFPE), A. The Standard Hamming Number-Theoretic Transform Recife - PE, Brazil. E-mail: [email protected]. H. M. de Oliveira, Statistics department (UFPE), Recife-PE, Brazil. E-mail: Consider the binary Hamming code H(7; 4; 3), with parity- [email protected]. check matrix (reduced row echelon form) T (v0; v1; ··· ; vN−1) , vi 2 GF (p), is the sequence V = 1 1 0 1 1 0 0 T H = 1 1 1 0 0 1 0 : (V0;V1; ··· ;VN−1) ;Vk 2 GF (p), given by 1 0 1 1 0 0 1 V = T (λ) · v; (4) In this case, in order to construct the Hamming Number- HAM (λ) (λ) Theoretic Transform (HamNT) matrix, THamNT , we need where THAM is the Hamming transformation matrix over to add four rows to this parity matrix to get the matrix GF (p), parametrized by eigenvalue λ. He. Such additional rows are merely null rows. This new The only natural property is that this transformation is linear, matrix, named He, is added to λIN , where λ = 1 is the since the distributive property of multiplication relative to eigenvalue over GF (2) and IN = I7 is the identity matrix addition holds by matrices. Furthermore, all the codewords of dimension 7. Note that, in fact, the eigenvalues are of the classic Hamming code are invariant under the HamNT. unknown and we should test all the possible candidates Example 1: (nonbinary Hamming transform). Consider the eliminating all those that result in a singular transformation ternary Hamming code H(13; 10; 3) whose parity-check ma- matrix. The different eigenvalues may produce different trix is 2 3 transformation matrices. From the binary Hamming code, 0000111111111 we get the 7×7 binary HamNT whose transformation matrix is H = 4 0111000111222 5 : 1012012012012 2 0 1 0 1 1 0 0 3 1 0 1 0 0 1 0 The transform matrix of the ternary Hamming transform, with 6 1 0 0 1 0 0 1 7 (1) 6 7 eigenvalue λ = 1, is given by T = 6 0 0 0 1 0 0 0 7 : HamNT 6 0 0 0 0 1 0 0 7 2 1000111111111 3 4 0 0 0 0 0 1 0 5 6 0211000111222 7 0 0 0 0 0 0 1 6 1022012012012 7 6 7 The eigenvector matrix is given by 6 0001000000000 7 6 0000100000000 7 2 1 1 0 0 0 0 1 3 6 7 6 0000010000000 7 (1) 1 1 1 0 0 1 0 (1) 6 7 eig THAM = 4 5 = G; 6 0000001000000 7 1 0 1 0 1 0 0 THAM = 6 7 : 0 1 1 1 0 0 0 6 0000000100000 7 6 7 6 0000000010000 7 which is the generator matrix of the Hamming code H(7; 4; 3). 6 7 6 0000000001000 7 Note that 7 − log2(1 + 7) = 4 = dim V. Figure 1 shows the 6 7 6 0000000000100 7 implementation of the binary Hamming Transform 7 × 7. 4 0000000000010 5 0000000000001 This kind of construction makes it harder to find the properties of such a transform. In what follows we adopt a polynomial approach. B. The Cyclic Hamming Transform Another way to represent the Hamming transform over GF (p) introduced in the previous subsection is considering the parity-check matrix H as expressed in the form 2 h(x) 3 6 xh(x) 7 6 2 7 6 x h(x) 7 H = 6 7 ; 6 . 7 4 . 5 xn−k−1h(x) where h(x) is the parity polynomial of the cyclic Hamming code over GF (p) [12]. The k rows necessary to construct the matrix He are generated by cyclic shifting the parity polynomial, h(x). Example 2: Consider the binary Hamming cyclic code H(7; 4; 3) with parity polynomial given by h(x) = x4 + x2 + Fig. 1 x + 1. The parity-check matrix H is given by BLOCK DIAGRAM FOR THE BINARY HAMMING TRANSFORM OF LENGTH 7. 2 1 0 1 1 1 0 0 3 H = 4 0 1 0 1 1 1 0 5 : Definition 2: The Hamming Number-Theoretic Transform, 0 0 1 0 1 1 1 with length N = (pm − 1)=(p − 1), of the sequence v = The transformation matrix, in this case, is 2 3 Note that this definition paves the way for an algebraic 1 0 1 1 1 0 0 treatment of the properties of the CHamNT. 6 0 1 0 1 1 1 0 7 6 7 (1) 6 0 0 1 0 1 1 1 7 Proposition 1: The matrix THAM is a circulant matrix. (λ) 6 7 T = 6 1 0 0 1 0 1 1 7 + λI7: HAM 6 7 The procedure to generate He by means of cyclic shifts of 6 1 1 0 0 1 0 1 7 the parity polynomial, h(x), results in a circulant matrix. This 6 1 1 1 0 0 1 0 7 4 5 aspect is not modified by adding λIN to this matrix. 0 1 1 1 0 0 1 Taking λ = 1 results in the cyclic form of the binary Hamming C. Some of Properties of the Cyclic Hamming Number- transformation matrix (the inverse matrix is also circulant) Theoretic Transform 2 0 0 1 1 1 0 0 3 i) Linearity 6 0 0 0 1 1 1 0 7 ii) Time shift 6 7 6 0 0 0 0 1 1 1 7 Consider the sequence vb = (vb0; ··· ; vbN−1) where vbi = ~(1) 6 7 v : Then, v $ V, where THAM = 6 1 0 0 0 0 1 1 7 : i−m b b 6 7 6 1 1 0 0 0 0 1 7 m 6 7 Vb = x V: (5) 4 1 1 1 0 0 0 0 5 0 1 1 1 0 0 0 Demonstration: Note that we are considering, without loss of generality, a cyclic shift of m positions to m N (1) (1) the right.
Details
-
File Typepdf
-
Upload Time-
-
Content LanguagesEnglish
-
Upload UserAnonymous/Not logged-in
-
File Pages5 Page
-
File Size-