65.165 BlockwiseDirectSumCode

BlockwiseDirectSumCode( c_1, l_1, c_2, l_2 )

BlockwiseDirectSumCode returns a subcode of the direct sum of c_1 and c_2. The fields of c_1 and c_2 should be same. l_1 and l_2 are two equally long lists with elements from the spaces where c_1 and c_2 are in, respectively, em or l_1 and l_2 are two equally long lists containing codes. The union of the codes in l_1 and l_2 must be c_1 and c_2, respectively.

In the first case, the blockwise direct sum code is defined as bds = bigcup_1 leq i leq l ( c_1 + (l_1)_i ) oplus ( c_2 + (l_2)_i ), where l is the length of l_1 and l_2, and oplus is the direct sum.

In the second case, it is defined as bds = bigcup_1 leq i leq l ( (l_1)_i oplus (l_2)_i ).

The length of the new code is n = n_1 + n_2 .

    gap> c := HammingCode( 3, GF(2) );;
    gap> d := EvenWeightSubcode( WholeSpaceCode( 6, GF(2) ) );;
    gap> BlockwiseDirectSumCode( c, [[ 0,0,0,0,0,0,0 ],[ 1,0,1,0,1,0,0 ]],
    > d, [[ 0,0,0,0,0,0 ],[ 1,0,1,0,1,0 ]] );
    a (13,1024,1..13)1..2 blockwise direct sum code

Previous Up Top Next
Index

GAP 3.4.4
April 1997