p part of a group in Sagemath

67 Views Asked by At

I am new to Sagemath, so apologies if this is trivial.

Is there any command to calculate the p-part of any group ? (finite/infinite, abelian/non-abelian). In particular, I am interested in the p-part of the class group. I found the command "sylow_subgroup" but doesn't seem to work. If I have K=CyclotomicField(3) for example and type G=K.class_group and C.sylow_subgroup(5), then I get an error.

Is there an easy way to get around this, or am I doing something wrong?

1

There are 1 best solutions below

0
On

Some groups in Sage have sylow_subgroup implemented, but not all.

sage: G = groups.permutation.Symmetric(4)
sage: G.sylow_subgroup(2)
Subgroup generated by [(3,4), (1,2), (1,3)(2,4)] of (Symmetric group of order 4! as a permutation group)

sage: K = CyclotomicField(3)
sage: G = K.class_group()
sage: G.sylow_subgroup()
...
raises an error
...

You can try converting to the gap implementation and investigate that instead:

sage: GG = gap(G)
sage: GG.s<TAB> # hitting the TAB key will show possible completions, and there is nothing promising starting with "s", so instead:
sage: GG.Sy<TAB>  # leads us to:
sage: GG.SylowSubgroup(5)
Group( <identity> of ... )

According to Sage, this group has order 1, so it's not going to have very many interesting Sylow subgroups:

sage: G.cardinality()
1