# Which subgroups do conjugacy_classes_subgroups() return

Starting with a group G and subgroup H (up to conjugacy), my task is to find all subgroups (up to conjugacy) that contains H.

1. Do the subgroups returned by conjugacy_classes_subgroups() satisfy the property that if K and L are two of the returned subgroups such that a conjugate of K is a subgroup of L, then K is a subgroup of L (we can construct a lattice from the subgroups returned)

2. If not, what will be the most optimal way to do this? My current algorithm checks if any conjugate of H is a subgroup of the list returned in conjugacy_classes_subgroups().

edit retag close merge delete

Sort by » oldest newest most voted 1. The method calls GAP's ConjugacyClassesSubgroups to get the conjugacy classes and then GAP's Representative to get a representative of each. This does not have the property you want. For example SymmetricGroup(4).conjugacy_classes_subgroups() includes both $K=\langle (1,3)(2,4)\rangle$ and $L=\langle (3,4), (1,2)(3,4) \rangle$ where a conjugate of $K$ is a subgroup of $L$ but $K$ is not a subgroup of $L$.

See symmetric group: get back conjugacy class from its generators if you want the actual conjugacy classes as GAP objects; you will be able to call the methods Representative() and AsList() on them, and on each subgroup you can also call IsSubgroup(H).

2. I am not a group theorist but your algorithm seems fine to me.

Edit: Maybe I don't have to tell you this but, caveat: being conjugate in a subgroup is a stronger requirement than being conjugate in the full group (because there are fewer elements to conjugate by).

more

1