gap> adaptbasis:=ShallowCopy(Basis(U));;
gap> for v in basisG do
> if not v in Subspace(KG, adaptbasis) then Add(adaptbasis, v); fi;
> od;
gap> adaptbasis:=Basis(KG, adaptbasis);;
gap> m1:=[];;
gap> m2:=[];;
gap> for i in [1..Length(adaptbasis)] do
> m1[i]:=Coefficients(adaptbasis, (1,2)^emb*adaptbasis[i]);
> m2[i]:=Coefficients(adaptbasis, (1,2,3,4)^emb*adaptbasis[i]);
> od;
gap> m1:=TransposedMat(m1);;
gap> mat2:=TransposedMat(m2);;
gap> mat1:=m1;;
gap> m2:=TransposedMat(m2);;
gap> mm1:=m1{[21..24]}{[21..24]};;
gap> mm2:=m2{[21..24]}{[21..24]};;
gap> Display(mm1);
[ [  0,  1,  0,  0 ],
  [  1,  0,  0,  0 ],
  [  0,  0,  0,  1 ],
  [  0,  0,  1,  0 ] ]
gap> Display(mm2);
[ [   0,   0,  -1,   0 ],
  [  -1,   0,   0,   1 ],
  [  -1,   0,   0,   0 ],
  [   0,   1,  -1,   0 ] ]
gap> Order(Group(mm1,mm2));
6
gap> Display(mm2^2);
[ [  1,  0,  0,  0 ],
  [  0,  1,  0,  0 ],
  [  0,  0,  1,  0 ],
  [  0,  0,  0,  1 ] ]
gap> Order(mm1*mm2);
3
gap> Order(Group((1,2),(1,2,3,4)));
24
gap> li:=List(Basis(U), x->x*( ()^emb+(1,2,3)^emb+(1,3,2)^emb));;
gap> Dimension(Subspace(KG,li));
8
gap> bV:=Basis(Subspace(KG,li));;
gap> x1:=[];;x2:=[];;
gap> for i in [1..Length(bV)] do
> x1[i]:=Coefficients(bV, (1,2)^emb*bV[i]);
> x2[i]:=Coefficients(bV, (1,2,3,4)^emb*bV[i]);
> od;
gap> x1:=TransposedMat(x1);;
gap> x2:=TransposedMat(x2);;
gap> Order(Group(x1,x2));
24
gap> Display(x1);
[ [      0,      3,      1,      0,      0,      0,      0,      0 ],
  [      3,      0,      0,      1,      0,      0,      0,      0 ],
  [     -8,      0,      0,     -3,      0,      0,      0,      0 ],
  [      0,     -8,     -3,      0,      0,      0,      0,      0 ],
  [      0,      0,      0,      0,      0,    1/5,      1,      0 ],
  [      0,      0,      0,      0,    1/5,      0,      0,      1 ],
  [      0,      0,      0,      0,  24/25,      0,      0,   -1/5 ],
  [      0,      0,      0,      0,      0,  24/25,   -1/5,      0 ] ]
gap> Display(x1^2);
[ [  1,  0,  0,  0,  0,  0,  0,  0 ],
  [  0,  1,  0,  0,  0,  0,  0,  0 ],
  [  0,  0,  1,  0,  0,  0,  0,  0 ],
  [  0,  0,  0,  1,  0,  0,  0,  0 ],
  [  0,  0,  0,  0,  1,  0,  0,  0 ],
  [  0,  0,  0,  0,  0,  1,  0,  0 ],
  [  0,  0,  0,  0,  0,  0,  1,  0 ],
  [  0,  0,  0,  0,  0,  0,  0,  1 ] ]
gap> Display(x2^4);
[ [  1,  0,  0,  0,  0,  0,  0,  0 ],
  [  0,  1,  0,  0,  0,  0,  0,  0 ],
  [  0,  0,  1,  0,  0,  0,  0,  0 ],
  [  0,  0,  0,  1,  0,  0,  0,  0 ],
  [  0,  0,  0,  0,  1,  0,  0,  0 ],
  [  0,  0,  0,  0,  0,  1,  0,  0 ],
  [  0,  0,  0,  0,  0,  0,  1,  0 ],
  [  0,  0,  0,  0,  0,  0,  0,  1 ] ]
gap> li:=List(Basis(U), x->x*( ()^emb+(1,2,3,4)^emb+(1,3)(2,4)^emb+(1,4,3,2)^emb));;
gap> Dimension(Subspace(KG,li));
4
gap> bV:=Basis(Subspace(KG,li));;
gap> x1:=[];;x2:=[];;
gap> U:=Subspace(KG,li);;
gap> quit;
