New binary self-dual codes of lengths 80, 84 and 96 from composite matrices

In this work, we apply the idea of composite matrices arising from group rings to derive a number of different techniques for constructing self-dual codes over finite commutative Frobenius rings. By applying these techniques over different alphabets, we construct best known singly-even binary self-dual codes of lengths 80, 84 and 96 as well as doubly-even binary self-dual codes of length 96 that were not known in the literature before.


Introduction
Self-dual codes form a family of widely studied linear codes which have many interesting properties and are intimately connected with many mathematical structures such as designs, lattices, modular forms and sphere packings. In recent history, much work has particularly been invested in developing techniques to construct extremal and optimal binary self-dual codes. The most famous of these techniques is quite possibly the pure double circulant construction, which utilises a generator matrix of the form G = (In | A) where In is the n × n identity matrix and A is an n × n circulant matrix. It follows that G is a generator matrix of a self-dual [2n, n] code if and only if AA T = −In. This technique has since been generalised by assuming a generator matrix of the form G = (In | σ(v)) where σ is an isomorphism from a group ring to the ring of matrices which was introduced in [22]. The isomorphism σ is such that G is a generator matrix of a self-dual [2n, n] code if and only if v is a unitary unit in the group ring. See [15,7,1,14] for recent applications of this isomorphism in constructing self-dual codes.
In this work, we assume a generator matrix of the form G = (In | Ω(v)) where Ω(v) is a matrix that arises from group rings which we call a composite matrix. It clearly follows that (In | Ω(v)) is a generator matrix of a self-dual code if and only if Ω(v)Ω(v) T = −In. The idea of composite matrices was first introduced in [10] as a way of generalising the structure of σ(v). The primary motivation for employing this technique is obtaining codes whose structures are atypical compared with those of codes constructed by more classical techniques. The main problem we face when attempting to construct codes with such a generator matrix is choosing parameters in such a way that allows for structural complexity of Ω(v) while also allowing for a reasonable set of necessary and sufficient conditions for the satisfaction of Ω(v)Ω(v) T = −In.
The rest of the work is organised as follows. In Section 2, we give preliminary definitions on self-dual codes, Gray maps, circulant matrices and the alphabets we use. We also prove a few results concerning a simple matrix transformation, which we use in two of the composite matrix definitions. In Section 3, we define the composite matrices which we utilise in our constructions and we also prove the necessary and sufficient conditions needed by each construction to produce a self-dual code. In Section 4, we apply the constructions to obtain the new self-dual codes of length 80, 84 and 96 whose weight enumerator parameter values and automorphism group orders we detail. We also tabulate the results in this section. We finish with concluding remarks and discussion of possible expansion on this work.

Self-Dual Codes
Let R be a commutative Frobenius ring. Throughout this work, we always assume R has unity. A code C of length n over R is a subset of R n whose elements are called codewords. If C is a submodule of R n , then we say that C is linear. Let x, y ∈ R n where x = (x1, x2, . . . , xn) and y = (y1, y2, . . . , yn). The (Euclidean) dual C ⊥ of C is given by C ⊥ = {x ∈ R n : x, y = 0, ∀y ∈ C}, where , denotes the Euclidean inner product defined by xiyi.
We say that C is self-orthogonal if C ⊆ C ⊥ and self-dual if C = C ⊥ . A binary self-dual code C is said to be doubly-even (Type II), if all codewords c ∈ C have weight w(c) ≡ 0 (mod 4), otherwise C is said to be singly-even (Type I).
A self-dual code whose minimum distance meets its corresponding bound is called extremal. A self-dual code with the highest possible minimum distance for its length is said to be optimal. Extremal codes are necessarily optimal but optimal codes are not necessarily extremal. A best known self-dual code is a self-dual code with the highest known minimum distance for its length.

Alphabets
In this paper, we consider the alphabets F2, F2 + uF2 and F4. Define Then F2 + uF2 is a commutative ring of order 4 and characteristic 2 such that We recall the following Gray maps from [6,12]: Note that these Gray maps preserve orthogonality in their respective alphabets. The Lee weight of a codeword is defined to be the Hamming weight of its binary image under any of the aforementioned Gray maps. A self-dual code in R n where R is equipped with a Gray map to the binary Hamming space is said to be of Type II if the Lee weights of all codewords are multiples of 4, otherwise it is said to be of Type I.
The code C is a Type I (resp. Type II) code over F2 +uF2 if and only if ϕ F 2 +uF 2 (C) is a Type I (resp. Type II) code over F2. The minimum Lee weight of C is equal to the minimum Hamming weight of ϕ F 2 +uF 2 (C).
is self-orthogonal. The code C is a Type I (resp. Type II) code over F4 if and only if ψ F 4 (C) is a Type I (resp. Type II) code over F2. The minimum Lee weight of C is equal to the minimum Hamming weight of ψ F 4 (C). The next two corollaries follow directly from Propositions 2.1 and 2.2, respectively. Corollary 2.3. Let C be a self-dual code over F2 + uF2 of length n and minimum Lee distance d. Then ϕ F 2 +uF 2 (C) is a binary self-dual [2n, n, d] code. Moreover, the Lee weight enumerator of C is equal to the Hamming weight enumerator of ϕ F 2 +uF 2 (C). If C is a Type I (resp. Type II) code, then ϕ F 2 +uF 2 (C) is a Type I (resp. Type II) code.
Corollary 2.4. Let C be a self-dual code over F4 of length n and minimum Lee distance d. Then ψ F 4 (C) is a binary self-dual [2n, n, d] code. Moreover, the Lee weight enumerator of C is equal to the Hamming weight enumerator of ψ F 4 (C). If C is a Type I (resp. Type II) code, then ψ F 4 (C) is a Type I (resp. Type II) code.

Special Matrices
We now recall the definitions and properties of some special matrices which we use in our work. We begin by defining a matrix transformation whose properties we utilise in some of the composite constructions we consider. The properties are easy to prove but we do so for completeness. Proposition 2.5. Let A be n × n matrix over a commutative ring R. Let ⋆ : R n×n → R n×n be the transformation such that A ⋆ is defined to be the matrix obtained after circularly shifting the columns of A to the right by one position. If Proof. Assume A is an n × n matrix over a commutative ring R where n ≥ 2. Suppose we decompose A into blocks such that where x, y ∈ R 1×(n−1) , z ∈ R and X ∈ R (n−1)×(n−1) . Then by block-wise multiplication we obtain and so AP corresponds to A after circularly shifting its columns to the right by one position. Thus, A ⋆ = AP .
The matrix P as defined in Proposition 2.5 is a permutation matrix and is therefore orthogonal, i.e. P P T = In. To see this, we have which corresponds to P after circularly shifting its columns to the right by n − 2 places and so by Proposition 2.5 we have P T = P P n−2 = P n−1 . Clearly, if we circularly shift the columns of P T = P n−1 to the right by one place we obtain In so that P T P = P n−1 P = P n = In.
It also follows that (P k ) T = P −k (mod n) for k ∈ N0. We can easily prove this by induction on k ∈ N0. The cases k = 0 and k = 1 are trivial. Assume (P k ) T = P −k (mod n) . Then we have (P k+1 ) T = (P k P ) T = P T (P k ) T = P n−1 P −k (mod n) = P n−k−1 (mod n) = P −(k+1) (mod n) which concludes our induction step.
We also have the following properties which are easy to prove.
Lemma 2.6. Let A and B be n × n matrices over a commutative ring R where n ≥ 2 and let ⋆ be the transformation defined in Proposition 2.5.
Then A is an n × n matrix called the circulant matrix generated a, denoted by A = circ(a).
If A = circ(a0, a1, . . ., an−1), then we see that A = a0In + a1I ⋆ n + a2(I ⋆ n ) ⋆ + . . . and so on. Using Proposition 2.5 and the properties of the matrix P , it follows that A = n−1 i=0 aiP i . Clearly, the sum of any two circulant matrices is also a circulant matrix. If B = circ(b) where b = (b0, b1, . . . , bn−1) ∈ R n , then AB = n−1 i=0 n−1 j=0 aibj P i+j . Since P n = In there exist c k ∈ R such that AB = n−1 k=0 c k P k so that AB is also circulant. In fact, it is true that for k ∈ [0 .. n − 1], where xi and yi respectively denote the i th row and column of A and B and [i + j]n denotes the smallest non-negative integer such that [i + j]n ≡ i + j (mod n). From this, we can see that circulant matrices commute multiplicatively. We also see that Lemma 2.7. Let A be an n × n matrix over a commutative ring R where n ≥ 2 and let ⋆ be the transformation defined in Proposition 2.5. Let B be an n × n circulant matrix over R.
(ii). Since B is circulant, then B T is circulant and so by (i), we have ( (iii). Since B is circulant, then B T is circulant and so by (i) and the fact that P is orthogonal, we have ( Let Jn be an n × n matrix over R whose (i, j) th entry is 1 if i + j = n + 1 and 0 if otherwise. Then Jn is called the n × n exchange matrix and corresponds to the row-reversed (or column-reversed) version of In. Note that [i + j]n corresponds to the (i + 1, j + 1) th entry of the matrix JnV where V = circ(n − 1, 0, 1, . . ., n − 2) for i, j ∈ [0 .. n − 1].

Group Rings and Composite Matrices
In this section, we recall the basic definition of a finite group ring and proceed to define the concept of a composite matrix.
Let G be a finite group order n and let R be a finite commutative Frobenius ring.
Then RG is called the group ring of G over R and is a ring with respect to the aforementioned definitions of addition and multiplication.
Let (g1, g2, . . . , gn) be a fixed listing of the elements of G with g1 = 1 and let The matrix σ(v) was first given in [22] wherein it was proved that σ is an isomorphism from the ring RG to R n×n . Suppose now that n > 1 is composite and let r be a fixed integer such that r | n : 1 < r < n and let m = n/r. Let {H1, H2, . . . , Hη} be a collection of η groups of order r. Let Ht be a representative of one of these groups for t ∈ [1 .. η] and let (ht:1, ht:2, . . . , ht:r) be a fixed listing of the elements of Ht with ht: . r]. Define Zy,z to be the r × r matrix whose (i, j) th entry is given by and define Z ′ t:y,z to be the r × r matrix whose (i, j) th entry is given by Define Ω(v) to be the block matrix whose (y, z) th block entry is given by Then Ω(v) is an n × n matrix composed of m 2 blocks of size r × r which we call the composite (G, H1, H2, . . . , Hη)-matrix of v ∈ RG with respect to H ′ and P ′ . If The concept of composite matrices defined in this way was first introduced in [10] as a way of generalising the structure of σ(v). See [9,8,25] for recent applications of composite matrices in constructing binary self-dual codes. and let P ′ = 1 (i.e. the 2 × 2 matrix of ones). Let v = 8 i=1 αg i gi ∈ RG and let Ω(v) be the composite (G, H1, H2)-matrix of v ∈ RG with respect to H ′ and P ′ . We have and we also find that By definition, the (i, j) th entry of Z ′ 1:1,1 is given by and similarly we find that Therefore, we obtain where A1 = circ(αg 1 , αg 2 ), A2 = circ(αg 3 , αg 4 ), B1 = circ(αg 5 , αg 6 ), B2 = circ(αg 7 , αg 8 ), C1 = circ(αg 5 , αg 8 ), C2 = circ(αg 7 , αg 6 ) and D1 = circ(αg 1 , αg 4 ), D2 = circ(αg 3 , αg 2 ).

Composite Matrix Constructions
In this section, we present our constructions which assume a generator matrix of the form (In | Ω(v)) where Ω(v) is a composite matrix. For each construction, we first define the structure of the corresponding composite matrix Ω(v) and subsequently prove the conditions that hold if and only if (In | Ω(v)) is a generator matrix of a self-dual [2n, n] code over R. We will hereafter assume that R is a finite commutative Frobenius ring of characteristic 2.

Results
In this section, we apply the theorems given in the previous section to obtain many new best known binary self-dual codes. In particular, we obtain 28 singly-even [80,40,14]  We search for these codes using MATLAB and determine their properties using Qextension [3] and Magma [2]. In MATLAB, we employ an algorithm which randomly searches for the construction parameters that satisfy the necessary and sufficient conditions stated in the corresponding theorem. For such parameters, we then build the corresponding binary generator matrices and print them to text files. We then use Q-extension to read these text files and determine the minimum distance and partial weight enumerator of each corresponding code. Furthermore, we determine the automorphism group order of each code using Magma. A database of generator matrices of the new codes is given online at [18]. The database is partitioned into text files (interpretable by Q-extension) corresponding to each code type. In these files, specific properties of the codes including the construction parameters, weight enumerator parameter values and automorphism group order are formatted as comments above the generator matrices. Partial weight enumerators of the codes are also formatted as comments below the generator matrices. Table 1 gives the quaternary notation system we use to represent elements of F2 + uF2 and F4.