|
Public Member Functions |
| Permutation (int l=0) |
| Permutation (int size, const int *p) |
| Permutation (const vector< int > &p) |
int | operator[] (int ind) const |
int & | operator[] (int ind) |
bool | operator== (const Permutation &p) const |
bool | operator!= (const Permutation &p) const |
bool | operator< (const Permutation &p) const |
Permutation | operator * (const Permutation &p) const |
Permutation & | operator *= (const Permutation &p) |
Permutation | operator- () const |
Permutation | inverse () const |
Permutation & | left_mult_by_cycle (const vector< int > &cycle) |
void | change (int i, int j) |
const vector< int > & | getVector () const |
Permutation | power (int p) const |
int | size () const |
int | difference (const Permutation &p) const |
Permutation | computeConjugacyClassRepresentative (Permutation &conj) const |
Permutation | computeConjugator (const Permutation &p) const |
Permutation | meet (const Permutation &p) const |
Permutation | meet2 (const Permutation &p) const |
Permutation | join2 (const Permutation &p) const |
bool | isTrivial () const |
vector< int > | geodesic () const |
vector< int > | getWordPresentation () const |
Permutation | tinyFlip (int sh) const |
Static Public Member Functions |
static Permutation | CYCLE (int N, const vector< int > &cycle) |
static void | lr_multiply_by_cycles (Permutation &P, Permutation &I, const vector< int > &M1, const vector< int > &M2) |
static Permutation | random (int l) |
static bool | mixable (const Permutation &p1, const Permutation &p2) |
Private Member Functions |
void | _sub_meet (const Permutation &p, const Permutation &ip1, const Permutation &ip2, Permutation &cur, int *left_indeces_a, int *left_indeces_b, int *right_indeces_a, int *right_indeces_b, int beg, int end) const |
void | prepare_pairs (int N, Permutation &P, vector< pair< int, int > > &pairs) const |
Private Attributes |
vector< int > | theValue |
Friends |
class | BraidGroup |
ostream & | operator<< (ostream &os, const Permutation &p) |
Classes |
struct | triple |