This page contains documentation for the libsemigroups implementation of the Schreier-Sims algorithm, as described in Section 4.4.2 of [34] and as implemented in the kernel module of the Digraphs package [10] for GAP in C:
https://github.com/digraphs/Digraphs/blob/main/src/schreier-sims.c
by Wilf A. Wilson.
It also contains the documentation of a backtrack search for computing the intersection of two permutations given by the Schreier-Sims algorithm by Reinis Cirpons.
Namespaces | |
| namespace | libsemigroups::schreier_sims |
| Namespace for SchreierSims helper functions. | |
Classes | |
| class | SchreierSims< N, Point, Element, Traits > |
| A deterministic version of the Schreier-Sims algorithm acting on a small number of points. More... | |
| struct | SchreierSimsTraits< N, Point, Element > |
| Traits class for use with the class template SchreierSims. More... | |
Functions | |
| template<size_t N, typename Point, typename Element, typename Traits> | |
| std::string | to_human_readable_repr (SchreierSims< N, Point, Element, Traits > const &S, size_t max_width=72) |
| Returns a human readable representation of a SchreierSims object. | |
|
nodiscard |
This function returns a human readable representation of a SchreierSims object.
| N | the largest point not fixed by the permutations in the permutation groups. |
| S | the SchreierSims object. |
| max_width | the maximum width of the returned representation (default: 72). |