implementation of a randomized base transposition algorithm More...
#include <random_base_transpose.h>
Protected Member Functions | |
virtual Generator< PERM > * | setupGenerator (BSGS< PERM, TRANS > &bsgs, uint i, const PERMlist &S_i, const TRANS &U_i) const |
initializes the specific Schreier Generator that is used for the BaseTranpose implementation | |
virtual Generator< PERM > * | setupGenerator (BSGS< PERM, TRANS > &bsgs, uint i, const PERMlist &S_i, const TRANS &U_i) const |
initializes the specific Schreier Generator that is used for the BaseTranpose implementation |
implementation of a randomized base transposition algorithm
Randomly constructed Schreier generators are considered for updating the BSGS. The algorithm is Las Vegas type, so the result is guaranteed to be correct, the time to completion may vary.
virtual Generator<PERM>* permlib::RandomBaseTranspose< PERM, TRANS >::setupGenerator | ( | BSGS< PERM, TRANS > & | bsgs, | |
uint | i, | |||
const PERMlist & | S_i, | |||
const TRANS & | U_i | |||
) | const [protected, virtual] |
initializes the specific Schreier Generator that is used for the BaseTranpose implementation
bsgs | the BSGS that the generator is contructed for | |
i | setup Schreier Generator for the i-th base element | |
S_i | group generators for Schreier generator | |
U_i | transversal for Schreier generator |
Implements permlib::BaseTranspose< PERM, TRANS >.
Generator< PERM > * permlib::RandomBaseTranspose< PERM, TRANS >::setupGenerator | ( | BSGS< PERM, TRANS > & | bsgs, | |
uint | i, | |||
const PERMlist & | S_i, | |||
const TRANS & | U_i | |||
) | const [inline, protected, virtual] |
initializes the specific Schreier Generator that is used for the BaseTranpose implementation
bsgs | the BSGS that the generator is contructed for | |
i | setup Schreier Generator for the i-th base element | |
S_i | group generators for Schreier generator | |
U_i | transversal for Schreier generator |
Implements permlib::BaseTranspose< PERM, TRANS >.