Enumeration of isometry classes of linear codes |
When investigating injective functions only we are computing the numbers bar (T)nkq, bar (S)nkq and bar (R)nkq.
When extending the range to GF(q)k we can determine Wnkq, the number of classes of linear codes, where 0-columns are allowed.
These numbers can be computed with the following routines (from
code.c
).
INT T_nkq_maxgrad(n,k,q,f) OP n,k,q,f; INT Tbar_nkq_maxgrad(n,k,q,f) OP n,k,q,f; INT S_nkq_maxgrad(n,k,q,f) OP n,k,q,f; INT Sbar_nkq_maxgrad(n,k,q,f) OP n,k,q,f; INT W_nkq_maxgrad(n,k,q,f) OP n,k,q,f;In all these cases
f
is a POLYNOMial in one indeterminate
of degree less than or equal to n
(INTEGER),
where the coefficient of xi is the number
Tikq, bar (T)ikq, Sikq, bar (S)ikq, Wikq.
Furthermore k
and q
are INTEGER objects.
In order to compute tables of numbers of indecomposable codes you can use the routines
INT all_codes(n,k,q,d,e) OP n,k,q,d,e; INT all_inj_codes(n,k,q,d,e) OP n,k,q,d,e;
n
, k
and q
are INTEGER objects indicating
the maximal value of n and the values of k and q.
d
and e
are n´k matrices of
Snkq and Rnkq for all_codes
and
bar (S)nkq and bar (R)nkq for all_inj_codes
.
For 0£i<S_M_HI(d)
and 0£j<S_M_LI(d)
the entry S_M_IJ(d,i,j)
represents
the number Si+1,j+1,q
.
Furthermore there are some routines asking for the right input and computing the desired numbers (classes of codes):
INT co_T_nkq(); INT co_Tbar_nkq(); INT co_T_nkq_erweitert();can be used for computing the numbers Tnkq, bar (T)nkq and the numbers of orbits of functions with range GF(q)k (needed for the computation of Wnkq).
INT co_S_nkq(); INT co_Sbar_nkq(); INT co_W_nkq();can be used for computing the numbers Snkq, bar (S)nkq and Wnkq.
INT co_all_codes(); INT co_all_inj_codes();are computing tables of Snkq and Rnkq (bar (S)nkq and bar (R)nkq respectively).
For some computations it could be interesting to save the numbers Tnkq or bar (T)nkq into a file. This can be done by using
INT co_T_nkq_file(); INT co_Tbar_nkq_file();The first routine writes a file called
alldat
k.q
the second a file called dat
k.q.
INT co_S_nkq_file(); INT co_Sbar_nkq_file();for the computation of Snkq or bar (S)nkq. More precisely for the computation of Snkq the files
alldat
k.q and alldat
(k-1).q are used.
When applying these routines you must take care that the
parameter for n may not exceed the parameter for n used in
co_T_nkq_file()
or co_Tbar_nkq_file()
.
In the same way these files are used for computing tables of Snkq and Rnkq (or bar (S)nkq and bar (R)nkq respectively) with
INT co_all_codes_file(); INT co_all_inj_codes_file();
The total number of all k-dimensional subspaces of GF(q)n can be computed with:
INT number_of_subspaces(n,k,q,d) OP n,k,q,d; INT co_number_of_subspaces();In the first routine
n
k
and q
are the 3 parameters
and d
is the result,
in the second form you are asked to input the right parameters.
Enumeration of isometry classes of linear codes |