|
permlib
0.2.8
Library for permutation computations
|
algorithm to find the lexicographically minimal set in an orbit More...
#include <orbit_lex_min_search.h>
Classes | |
| struct | Candidate |
Public Member Functions | |
| OrbitLexMinSearch (const BSGSIN &bsgs, bool abortSearchIfSmallerFound=false) | |
| constructor | |
| dset | lexMin (const dset &element, const BSGSIN *stabilizer=NULL) |
| searches the lexicographically minimal element of an orbit | |
Static Public Member Functions | |
| static bool | isLexSmaller (const dset &a, const dset &b) |
| compares two sets given as dsets lexicographically | |
algorithm to find the lexicographically minimal set in an orbit
implements the algorithm ``Finding the Smallest Image of a Set'' by Steve Linton, 2004
| permlib::OrbitLexMinSearch< BSGSIN >::OrbitLexMinSearch | ( | const BSGSIN & | bsgs, |
| bool | abortSearchIfSmallerFound = false |
||
| ) | [inline] |
constructor
| bsgs | the group to build the orbit from |
| abortSearchIfSmallerFound | If true, the lexMin search is aborted if a lex-smaller element is found. In this case the search does not necessarily find the minimal element. |
| bool permlib::OrbitLexMinSearch< BSGSIN >::isLexSmaller | ( | const dset & | a, |
| const dset & | b | ||
| ) | [inline, static] |
compares two sets given as dsets lexicographically
This is different to a < b as dynamic_bitsets because we are interested in the the representation of the bitsets as sets.
| dset permlib::OrbitLexMinSearch< BSGSIN >::lexMin | ( | const dset & | element, |
| const BSGSIN * | stabilizer = NULL |
||
| ) | [inline] |
searches the lexicographically minimal element of an orbit
| element | one element of the orbit |
| stabilizer | setwise stabilizer of given set in the group; if present may speed up computations; parameter is currently ignored |
1.7.6.1