1gap> m2 := [ 0 * Z(2), Z(2)^0 ];
2[ 0*Z(2), Z(2)^0 ]
3gap> m4 := [ 0 * Z(4), Z(4)^0 ];
4[ 0*Z(2), Z(2)^0 ]
5gap> m8 := [ 0 * Z(8), Z(8)^0 ];
6[ 0*Z(2), Z(2)^0 ]
7gap> m16 := [ 0 * Z(16), Z(16)^0 ];
8[ 0*Z(2), Z(2)^0 ]
9gap> m2 = m4;
10true
11gap> m2 = m8;
12true
13gap> m2 = m16;
14true
15
16#
17gap> c := CVEC_NewCVecClass(2, 1, 2);
18<cvec-class field=GF(2,1) len=2 wordlen=1>
19gap> CVec(m2, c);
20<cvec over GF(2,1) of length 2>
21gap> CVec(m4, c);
22<cvec over GF(2,1) of length 2>
23gap> CVec(m8, c);
24<cvec over GF(2,1) of length 2>
25gap> CVec(m16, c);
26<cvec over GF(2,1) of length 2>
27
28#
29gap> c := CVEC_NewCVecClass(2, 2, 2);
30<cvec-class field=GF(2,2) len=2 wordlen=2>
31gap> CVec(m2, c);
32<cvec over GF(2,2) of length 2>
33gap> CVec(m4, c);
34<cvec over GF(2,2) of length 2>
35gap> CVec(m8, c);
36<cvec over GF(2,2) of length 2>
37gap> CVec(m16, c);
38<cvec over GF(2,2) of length 2>
39
40#
41gap> c := CVEC_NewCVecClass(2, 3, 2);
42<cvec-class field=GF(2,3) len=2 wordlen=3>
43gap> CVec(m2, c);
44<cvec over GF(2,3) of length 2>
45gap> CVec(m4, c);
46<cvec over GF(2,3) of length 2>
47gap> CVec(m8, c);
48<cvec over GF(2,3) of length 2>
49gap> CVec(m16, c);
50<cvec over GF(2,3) of length 2>
51
52#
53gap> c := CVEC_NewCVecClass(2, 4, 2);
54<cvec-class field=GF(2,4) len=2 wordlen=4>
55gap> CVec(m2, c);
56<cvec over GF(2,4) of length 2>
57gap> CVec(m4, c);
58<cvec over GF(2,4) of length 2>
59gap> CVec(m8, c);
60<cvec over GF(2,4) of length 2>
61gap> CVec(m16, c);
62<cvec over GF(2,4) of length 2>
63
64#
65# The following test is motivated by issue #5
66#
67gap> mat := [[0,1],[3,1]]*Z(5)^0;;
68gap> basis := Basis(AsVectorSpace(GF(5),GF(5^2)));;
69gap> omega := Z(5^2);;
70gap> mat2 := List(BasisVectors(basis), t -> Coefficients(basis, t*omega));;
71gap> mat = mat2;
72true
73gap> cmat := NewMatrix(IsCMatRep,GF(5),Length(mat[1]),mat);
74<cmat 2x2 over GF(5,1)>
75gap> cmat2 := NewMatrix(IsCMatRep,GF(5),Length(mat2[1]),mat2);
76<cmat 2x2 over GF(5,1)>
77gap> cmat = cmat2;
78true
79