Mod graph by invariances

This commit is contained in:
Florian Stecker
2016-11-11 17:07:45 +01:00
parent 03854910b9
commit 993ccfd457
10 changed files with 709 additions and 172 deletions

View File

@@ -25,10 +25,22 @@ typedef struct {
int is_hyperplane_reflection; // boolean value
} node_t;
// printing functions
char *alphabetize(int *word, int len, const char *alphabet, char *buffer);
void print_thickening(int rank, int order, const signed char *thickening, int level, const char *alphabet, FILE *f);
static int compare_wordlength(const void *a, const void *b, void *gr);
void prepare_graph(semisimple_type_t type, node_t *graph, edgelist_t **edgelists_pointer, int **words_pointer);
// generating the graph of the bruhat order
void prepare_graph(semisimple_type_t type, node_t *graph);
int prepare_simplified_graph(semisimple_type_t type, unsigned long left, unsigned long right, node_t *simplified_graph);
// enumerate balanced thickenings
long enumerate_balanced_thickenings(semisimple_type_t type, node_t *graph, int size, const char *alphabet, FILE *outfile);
node_t *graph_alloc(semisimple_type_t type);
void graph_free(semisimple_type_t type, node_t *graph);
// various helper functions
static int compare_wordlength(const void *a, const void *b, void *gr);
static int edgelist_contains(edgelist_t *list, int x);
static edgelist_t *edgelist_add(edgelist_t *list, int new, edgelist_t *storage, int *storage_index);
#endif