Let $G$ be a finite group, given as either a permutation group as a finite set or a subgroup of a matrix group over a finite field. There are a number of impressively implemented algorithms for finding conjugacy classes of subgroups of $G$, some are discussed in papers mentioned in this answer:
https://math.stackexchange.com/a/2775758/1038520
My question is:
Are the best algorithms for subgroup enumeration inherently probabilistic?
Looking at Cannon-Cox-Holt, there is at least one point where one step in the algorithm (discussed in section 3) calls for making random choices of elements of conjugacy classes, but I have not tried to precisely follow through to see either how this is done or whether it can be done deterministically (let alone other steps of the process).
The background motivation for my question is as follows. I use some of these enumeration algorithms in $\texttt{magma}$. However, it can (and does) happen that if you run the same code twice on the same group $G$, the output may differ. That is, the precise ordering of the subgroups (up to conjugation) may differ, and the output may even permute two (non-conjugate) subgroups $H$ and $H'$ of $G$ which are isomorphic. (For example, $G=S_6$ and $H \simeq H' \simeq S_5$). This is a little frustrating as a user (for writing code that can be replicated), but I would feel much better if I knew there was a fundamentally good reason it had to be this way. So this question is really just about making me feel better.
Note that in practice in $\texttt{magma}$ I can always $\texttt{SetSeed(1);}$ to avoid this particular issue.
IsTransitive
returnstrue
; and $H'$ the other one. – testaccount Nov 27 '23 at 02:53