Permutation group algorithm for abelianness testing

From Groupprops

Summary

Item Value
Problem being solved abelianness testing problem: determine whether a given group is an abelian group.
Input format Set , generating set for group of permutations on .
Output format Yes/No depending on whether is abelian

Idea and outline

The idea is to choose the algorithm based on the size of . We consider three alternate algorithmic routes we could take:

Strategy Time complexity Condition on for this to be the preferred algorithm if Time taken in terms of
black-box group algorithm for abelianness testing given a generating set directly, with the generating set . (requires group operations, each group operation takes time.
first use the Sims filter to reduce the size of the generating set to , then use black-box group algorithm for abelianness testing given a generating set on the new generating set. (to apply the Sims fiter)
to apply the test once the generating set is filtered.
first use Jerrum's filter to reduce the size of the generating set to , then use black-box group algorithm for abelianness testing given a generating set on the new generating set. to apply Jerrum's filter
to apply the test once the generating set is filtered.
not guaranteed to be better than the Sims filter for any . Although the testing is fast once we've filtered, the time taken to filter is a much more critical bottleneck.