generators output
This commit is contained in:
@@ -8,15 +8,6 @@
|
||||
#include "weyl.h"
|
||||
#include "queue.h"
|
||||
|
||||
typedef struct {
|
||||
int size; // the size of the weyl group. We store however only the first size/2 elements
|
||||
bitvec_t *principal_pos;
|
||||
bitvec_t *principal_neg;
|
||||
int *principal_is_slim;
|
||||
void (*callback)(const bitvec_t *, int, void*);
|
||||
void *callback_data;
|
||||
} enumeration_info_t;
|
||||
|
||||
/*
|
||||
This function enumerates all balanced ideals satisfying certain constraints, given by its arguments pos, neg and next_neg
|
||||
|
||||
@@ -71,7 +62,7 @@ static long enumerate_tree(const enumeration_info_t *info, const bitvec_t *pos,
|
||||
if(next_next_neg >= info->size/2) {
|
||||
// there is no unknown left, so we found a balanced ideal
|
||||
if(info->callback)
|
||||
info->callback(&newpos, info->size, info->callback_data);
|
||||
info->callback(&newpos, info->size, info);
|
||||
return 1;
|
||||
}
|
||||
|
||||
@@ -154,7 +145,7 @@ static void generate_principal_ideals(doublequotient_t *dq, bitvec_t *pos, bitve
|
||||
returns the number of balanced ideals
|
||||
*/
|
||||
|
||||
long enumerate_balanced_thickenings(doublequotient_t *dq, void (*callback) (const bitvec_t *, int, void*), void *callback_data)
|
||||
long enumerate_balanced_thickenings(doublequotient_t *dq, enumeration_callback callback, void *callback_data)
|
||||
{
|
||||
long count = 0;
|
||||
enumeration_info_t info;
|
||||
|
||||
Reference in New Issue
Block a user