The p-group Generation Algorithm

数ヶ月にわたってO'Brien論文を読んできたわけであるが,結論として与えられたp-群Gのimmediate descendantを求めるアルゴリズムをまとめるとつぎのようになる.


step 1) GからG^{*}を求める.
step 2) G^{*}のp-multiplicator Knucleus P_c(G^{*})を求める.
step 3) Kの部分群Mで,M P_c(G^{*})=Kとなっているものを列挙する.
step 4) 全ての\alpha \in Aut(G)から,\alpha^{*}\in Aut(G^{*})を作って,step 3 の部分群の集合への作用からorbitを求める.
step 5) それぞれのorbitからひとつづつ代表元を選ぶ.
step 6) 代表元の集合\{M\}から, \{G^{*}/M\}を作ると,それらはGの immediate descendantの全ての同型類からの(重複のない)代表元の集合になっている.


とまあ,こうなるわけであるが,実際に計算しようとするといろいろと困難な点がある.
O'Brien論文の後半は実装に関する記述であるが,かなりざっくりとしたもので,私の予備知識の不足もあり,よくわからないところが多々ある.たとえば step 1を実行するには別のnilpotent quotient algorithm というものが必要らしい.また,GからAut(G)を計算するというのは一般的にはかなりの難問である.ただし,今回の場合はAut(G)からAut(G^{*})を計算する方法はあるようなのでまだましである.いずれにせよ(うすうすは感じていたものの)そう簡単に計算機に実装することはできないようである.世の中そう甘くない...しかし,ちと悔しいので,ここはまあHolt本でも、まじめに勉強してみるか...