Taking the problem(s) described in gap-packages/anupq/issues/32 into account, is it a good idea to delegate, in the case of p-groups G and H, from IsomorphismGroups( G, H ) to IsomorphismPGroups( G, H ), which then calls ANUPQ's functions?
Perhaps the answer is yes because other GAP methods also cannot do better if ANUPQ runs into problems.
Currently this delegation happens if ANUPQ is available and the groups have equal order larger than 2000.
Independent of that, should we perhaps introduce IsIsomorphicGroups( G, H ) for two groups G and H, returning true if G and H are isomorphic, and false otherwise?
This would be analogous to the IsIsomorphicPGroups function from the ANUPQ package, a nonconstructive test that avoids creating an isomorphism if one does not need it.
For example, if IdGroup is available for G and H then IdGroup yields a decision without creating an isomorphism, and this is often very fast.
Taking the problem(s) described in gap-packages/anupq/issues/32 into account, is it a good idea to delegate, in the case of p-groups
GandH, fromIsomorphismGroups( G, H )toIsomorphismPGroups( G, H ), which then calls ANUPQ's functions?Perhaps the answer is yes because other GAP methods also cannot do better if ANUPQ runs into problems.
Currently this delegation happens if ANUPQ is available and the groups have equal order larger than 2000.
Independent of that, should we perhaps introduce
IsIsomorphicGroups( G, H )for two groupsGandH, returningtrueifGandHare isomorphic, andfalseotherwise?This would be analogous to the
IsIsomorphicPGroupsfunction from the ANUPQ package, a nonconstructive test that avoids creating an isomorphism if one does not need it.For example, if
IdGroupis available forGandHthenIdGroupyields a decision without creating an isomorphism, and this is often very fast.