14namespace layer1_foundations {
54 int f_v = (verbose_level >= 1);
59 cout <<
"heisenberg::init n=" <<
n <<
" q=" <<
F->
q << endl;
72 cout <<
"heisenberg::init done" << endl;
133 int f_v = (verbose_level >= 1);
138 cout <<
"heisenberg::group_table" << endl;
151 cout <<
"heisenberg::group_table finished" << endl;
157 int f_v = (verbose_level >= 1);
162 cout <<
"heisenberg::group_table" << endl;
176 cout <<
"heisenberg::group_table finished" << endl;
182 int f_v = (verbose_level >= 1);
188 cout <<
"heisenberg::generating_set" << endl;
190 nb_gens = (
n *
F->
e) * 2 +
F->
e;
193 for (i = 0; i <
n; i++) {
194 for (j = 0; j <
F->
e; j++) {
201 for (i = 0; i <
n; i++) {
202 for (j = 0; j <
F->
e; j++) {
210 for (j = 0; j <
F->
e; j++) {
217 if (cnt != nb_gens) {
218 cout <<
"heisenberg::generating_set cnt != nb_gens" << endl;
222 cout <<
"heisenberg::generating_set finished" << endl;
void element_negate(int *Elt1, int *Elt2, int verbose_level)
void element_add(int *Elt1, int *Elt2, int *Elt3, int verbose_level)
field_theory::finite_field * F
void generating_set(int *&gens, int &nb_gens, int verbose_level)
void init(field_theory::finite_field *F, int n, int verbose_level)
int element_negate_by_rank(int rk_a, int verbose_level)
void group_table_abv(int *&Table_abv, int verbose_level)
int element_add_by_rank(int rk_a, int rk_b, int verbose_level)
void group_table(int *&Table, int verbose_level)
long int rank_element(int *Elt)
void unrank_element(int *Elt, long int rk)
linear_algebra::linear_algebra * Linear_algebra
various functions related to geometries
void AG_element_unrank(int q, int *v, int stride, int len, long int a)
long int AG_element_rank(int q, int *v, int stride, int len)
void negate_vector(int *A, int *B, int m)
void add_vector(int *A, int *B, int *C, int m)
int dot_product(int len, int *v, int *w)
basic number theoretic functions
int i_power_j(int i, int j)
the orbiter library for the classification of combinatorial objects