65.22 Domain Functions for Codes

These are some GAP functions that work on Domains in general. Their specific effect on Codes is explained here.

IsFinite( C )

IsFinite is an implementation of the GAP domain function IsFinite. It returns true for a code C.

    gap> IsFinite( RepetitionCode( 1000, GF(11) ) );
    true 

Size( C )

Size returns the size of C, the number of elements of the code. If the code is linear, the size of the code is equal to q^k, where q is the size of the base field of C and k is the dimension.

    gap> Size( RepetitionCode( 1000, GF(11) ) );
    11
    gap> Size( NordstromRobinsonCode() );
    256 

Field( C )

Field returns the base field of a code C. Each element of C consists of elements of this base field. If the base field is F, and the word length of the code is n, then the codewords are elements of F^n. If C is a cyclic code, its elements are interpreted as polynomials with coefficients over F.

    gap> C1 := ElementsCode([[0,0,0], [1,0,1], [0,1,0]], GF(4));
    a (3,3,1..3)2..3 user defined unrestricted code over GF(4)
    gap> Field( C1 );
    GF(2^2)
    gap> Field( HammingCode( 3, GF(9) ) );
    GF(3^2) 

Dimension( C )

Dimension returns the parameter k of C, the dimension of the code, or the number of information symbols in each codeword. The dimension is not defined for non-linear codes; Dimension then returns an error.

    gap> Dimension( NordstromRobinsonCode() );
    Error, dimension is only defined for linear codes
    gap> Dimension( NullCode( 5, GF(5) ) );
    0
    gap> C := BCHCode( 15, 4, GF(4) );
    a cyclic [15,7,5]4..8 BCH code, delta=5, b=1 over GF(4)
    gap> Dimension( C );
    7
    gap> Size( C ) = Size( Field( C ) ) ^ Dimension( C );
    true 

Elements( C )

Elements returns a list of the elements of C. These elements are of the codeword type (see Codewords). Note that for large codes, generating the elements may be very time- and memory-consuming. For generating a specific element or a subset of the elements, use CodewordNr (see CodewordNr).

    gap> C := ConferenceCode( 5 );
    a (5,12,2)1..4 conference code over GF(2)
    gap> Elements( C );
    [ [ 0 0 0 0 0 ], [ 1 1 0 1 0 ], [ 1 1 1 0 0 ], [ 0 1 1 0 1 ],
      [ 1 0 0 1 1 ], [ 0 0 1 1 1 ], [ 1 0 1 0 1 ], [ 0 1 0 1 1 ],
      [ 1 0 1 1 0 ], [ 0 1 1 1 0 ], [ 1 1 0 0 1 ], [ 1 1 1 1 1 ] ]
    gap> CodewordNr( C, [ 1, 2 ] );
    [ [ 0 0 0 0 0 ], [ 1 1 0 1 0 ] ] 

Previous Up Top Next
Index

GAP 3.4.4
April 1997