Menghitung orbit kelas konjugasi di GAP.

Aug 16 2020

Saya memiliki grup ekstensi $G=N{.}Q$ , $N$nonabelian. Bagaimana cara menghitung orbit$Q$ pada kelas konjugasi $N$di GAP? Misalnya, ambil G =$S_5=A_5{:}2$. Gap memasukkan "Orbit$(2,A_5)$ akan memberikan 33 orbit $C_2$ pada elemen $A_5$. Bagaimana cara menghitung orbit$C_2$ di kelas $A_5$ di GAP?

Jawaban

2 ahulpke Aug 16 2020 at 15:58

Dengan asumsi Anda memiliki grup $G$ diberikan secara konkrit dengan subkelompok normal $N$, Anda dapat melakukannya dengan menentukan fungsi Anda sendiri untuk tindakan tersebut (fungsi seperti itu selalu mengambil elemen $\omega$ dari domain dan elemen grup $g$ dan kembali $\omega^g$:

OnConjugacyClasses:=function(class,g)
  return ConjugacyClass(ActingDomain(class),Representative(class)^g);
end;

Dengan ini, Anda dapat menghitung orbit seperti biasa. Dalam contoh Anda:

gap> G:=SymmetricGroup(5);;
gap> N:=DerivedSubgroup(G);;
gap> cl:=ConjugacyClasses(N);
[ ()^G, (1,2)(3,4)^G, (1,2,3)^G, (1,2,3,4,5)^G, (1,2,3,5,4)^G ]
gap> OrbitsDomain(G,cl,OnConjugacyClasses);
[ [ ()^G ], [ (1,2)(3,4)^G ], [ (1,2,3)^G ], [ (1,2,3,4,5)^G, (1,2,3,5,4)^G ]
 ]

Jika Anda mencobanya untuk grup yang lebih besar, mungkin akan lebih cepat, untuk juga mentransfer informasi tentang pemusat perwakilan, jika diketahui:

OnConjugacyClasses:=function(class,g)
local cl;
  cl:=ConjugacyClass(ActingDomain(class),Representative(class)^g);
  if HasStabilizerOfExternalSet(class) then
    SetStabilizerOfExternalSet(cl,StabilizerOfExternalSet(class)^g);
  fi;
  return cl;
end;