Tables for binary codes Top Preliminaries: Methods, Notation

Preliminaries: Methods, Notation

Following Slepian (Some Further Theory of Group Codes, The Bell System Technical Journal, 39:1219 - 1252, 1960.) we succeeded to describe the isometry classes of linear codes over GF(q) as orbits under group actions. To be more precise the isometry class of a given linear code C of length n and dimension k (in short (n,k)-code) can be expressed as the orbit under the action of the direct product GLk(q) Mn(q) on an arbitrary generator matrix of C (i. e. an k n-matrix of rank k, the rows of which form a basis of the code C), where GLk(q) is the group of all regular k k-matrices over GF(q) and Mn(q) is the full monomial group over GF(q). The elements of Mn(q) can be described as n n-matrices which have in each row and each column exactly one entry from GF(q)*. The action of (A,M)∈ GLk(q) Mn(q) on a generator matrix Γ is given by (A,M)(Γ):=A⋅ Γ⋅ M.

Moreover the group Mn(q) can be expressed as a wreath product of the form

Mn(q)=GF(q)*Sn...

We use the following symbols for enumerating certain orbits under the group action of GLk(q) Mn(q):

All these computations were done with the computer algebra system SYMMETRICA: For instance here is a short C-program which can be used for computing the numbers Tnkq. The main problem is the computation of the cycle index of the projective linear group PGLk(q) acting on PGk-1(q) which is done with the routine

zykelind_pglkq(k,q,erg)  OP k,q,erg;
By certain substitutions into this cycle index the desired numbers can be derived, which can be used for computing the numbers Snkq.
#include "def.h"
#include "macro.h"

main()
{
OP k,q,c,d,e,f;
anfang();
k=callocobject();
q=callocobject();
c=callocobject();
d=callocobject();
e=callocobject();
f=callocobject();
printeingabe("k=?  k>=2");
scan(INTEGER,k);
printeingabe("q=?");
scan(INTEGER,q);
zykelind_pglkq(k,q,c);
numberofvariables(c,d);
polya_sub(c,d,e);
dec(k);
zykelind_pglkq(k,q,c);
numberofvariables(c,d);
polya_sub(c,d,f);
sub(e,f,d);
println(d);
freeall(k);
freeall(q);
freeall(c);
freeall(d);
freeall(e);
freeall(f);
ende();
}

harald.fripertinger "at" uni-graz.at, May 10, 2016

Tables for binary codes Top Uni-Graz Mathematik UNIGRAZ online Preliminaries: Methods, Notation Valid HTML 4.0 Transitional Valid CSS!