I have a problem identifying a group as a primitive group by using the function PrimitiveIdentification. Here is my code.
gap> l:=List(
[ [ [ [ Z(23)^0, 0*Z(23) ], [ Z(23), Z(23)^11 ] ], [ [ Z(23)^17, Z(23)^7 ], [ Z(23)^19, Z(23)^6 ] ]
, [ [ Z(23)^11, 0*Z(23) ], [ 0*Z(23), Z(23)^11 ] ],
[ [ Z(23), 0*Z(23) ], [ 0*Z(23), Z(23) ] ], [ [ Z(23)^2, Z(23)^10 ], [ Z(23)^0, Z(23)^0 ] ],
[ [ Z(23)^18, Z(23)^10 ], [ Z(23)^0, Z(23) ] ] ] ], x->Subgroup(GL(2,23),x));
[ Group([ [ [ Z(23)^0, 0*Z(23) ], [ Z(23), Z(23)^11 ] ], [ [ Z(23)^17, Z(23)^7 ], [ Z(23)^19, Z(23)^6 ] ],
[ [ Z(23)^11, 0*Z(23) ], [ 0*Z(23), Z(23)^11 ] ], [ [ Z(23), 0*Z(23) ], [ 0*Z(23), Z(23) ] ],
[ [ Z(23)^2, Z(23)^10 ], [ Z(23)^0, Z(23)^0 ] ], [ [ Z(23)^18, Z(23)^10 ], [ Z(23)^0, Z(23) ] ] ]) ]
gap> h:=l[1];;
gap> g:=SemidirectProduct(h,GF(23)^2);
<matrix group of size 186208 with 7 generators>
gap> IsPrimitiveSolvable(g);
true
gap> PrimitiveIdentification(g);
Error, no method found! For debugging hints type ?Recovery from NoMethodFound
Error, no 1st choice method found for `PrimitiveIdentification' on 1 arguments at /opt/gap-v4.12.2/.libs/../lib/methsel2.g:249 called from
<function "HANDLE_METHOD_NOT_FOUND">( <arguments> )
called from read-eval loop at *stdin*:372
type 'quit;' to quit to outer loop
brk>
So, in general, how to identify a group as a primitive group? Any explanation, references, suggestion and examples are appreciated.
It is not clear from your description in which way you want to consider $g$ as a primitive permutation group. But whatever it is, it must be by the action on cosets of a maximal subgroup. There are 5 of those:
However, only 1 of the leads to a faithful permutation representation of your starting group:
We can identify the resulting primtive group:
This is just the same as we get from the coset action on the cosets of the group $h$ inside $g$; indeed we can also work directly from that: