15namespace layer1_foundations {
16namespace orthogonal_geometry {
89 int f_v = (verbose_level >= 1);
94 cout <<
"blt_set_invariants::init" << endl;
108 cout <<
"blt_set_invariants::init before compute" << endl;
112 cout <<
"blt_set_invariants::init after compute" << endl;
116 cout <<
"blt_set_invariants::init done" << endl;
122 int f_v = (verbose_level >= 1);
125 cout <<
"blt_set_invariants::compute" << endl;
138 cout <<
"blt_set::report before P->plane_intersections" << endl;
146 cout <<
"blt_set::report before intersection_matrix" << endl;
154 cout <<
"blt_set::report before "
155 "extract_largest_sets" << endl;
161 cout <<
"blt_set::report before "
162 "remove_sets_of_given_size" << endl;
168 cout <<
"blt_set::report before "
169 "Sos2->compute_tdo_decomposition" << endl;
178 cout <<
"blt_set::report before "
179 "Sos3[h].compute_tdo_decomposition" << endl;
186 P->plane_intersection_invariant(G,
196 cout <<
"blt_set_invariants::compute done" << endl;
202 int f_v = (verbose_level >= 1);
206 cout <<
"blt_set_invariants::latex" << endl;
212 ost <<
"Plane intersection type is ";
221 ost <<
"^{" << a <<
"}";
228 ost <<
"\\\\" << endl;
229 ost <<
"Plane invariant is ";
233 ost <<
"\\left[" << endl;
234 ost <<
"\\begin{array}{*{" <<
nb_planes <<
"}{c}}" << endl;
242 ost <<
"\\\\" << endl;
244 ost <<
"\\end{array}" << endl;
245 ost <<
"\\right]" << endl;
249 ost <<
"too big (" <<
nb_planes <<
" planes)\\\\" << endl;
252 int f_enter_math =
FALSE;
253 int f_print_subscripts =
TRUE;
257 ost, f_enter_math, f_print_subscripts, verbose_level - 1);
258 ost <<
"\\quad" << endl;
260 ost, f_enter_math, f_print_subscripts, verbose_level - 1);
268 ost, f_enter_math, f_print_subscripts, verbose_level - 1);
272 ost, f_enter_math, f_print_subscripts, verbose_level - 1);
276 int t, fst_col, fst, len, u, a;
283 ost <<
"Column cell " << t <<
":\\\\" << endl;
288 for (u = 0; u < len; u++) {
294 for (u = 0; u < len; u++) {
297 f << a <<
" (rank = ";
298 R[h][b].print_not_scientific(f);
300 G->unrank_longinteger(R[h][b], 0 );
301 f <<
"$\\left[" << endl;
302 f <<
"\\begin{array}{*{" << 5 <<
"}{c}}" << endl;
303 for (i = 0; i < 3; i++) {
304 for (j = 0; j < 5; j++) {
313 f <<
"\\end{array}" << endl;
314 f <<
"\\right]$\\\\" << endl;
324 ost <<
"The points by ranks:\\\\" << endl;
325 ost <<
"\\begin{center}" << endl;
327 for (u = 0; u < 4; u++) {
328 ost <<
"\\begin{tabular}[t]{|c|c|}" << endl;
329 ost <<
"\\hline" << endl;
330 ost <<
"$i$ & Rank \\\\" << endl;
331 ost <<
"\\hline" << endl;
332 for (i = 0; i < tt; i++) {
339 ost <<
"\\hline" << endl;
340 ost <<
"\\end{tabular}" << endl;
342 ost <<
"\\end{center}" << endl;
344 ost <<
"The points:\\\\" << endl;
358 ost <<
"P_{" << i <<
"}=";
361 for (u = 0; u < 5; u++) {
362 for (v = 0; v < n; v++) {
363 f << Grass->M[u * n + v];
365 ost <<
"\\\\" << endl;
375 cout <<
"blt_set_invariants::latex done" << endl;
void print_classes_tex(std::ostream &ost)
void intersection_matrix(int *&intersection_type, int &highest_intersection_number, int *&intersection_matrix, int &nb_big_sets, int verbose_level)
void extract_largest_sets(set_of_sets &S, int *&Idx, int verbose_level)
void compute_tdo_decomposition(geometry::decomposition &D, int verbose_level)
void remove_sets_of_given_size(int k, set_of_sets &S, int *&Idx, int verbose_level)
a collection of functions related to sorted vectors
void int_vec_heapsort(int *v, int len)
decomposition of an incidence matrix
data_structures::partitionstack * Stack
void print_row_decomposition_tex(std::ostream &ost, int f_enter_math, int f_print_subscripts, int verbose_level)
void get_col_scheme(int verbose_level)
void get_row_scheme(int verbose_level)
void print_column_decomposition_tex(std::ostream &ost, int f_enter_math, int f_print_subscripts, int verbose_level)
void plane_intersections(grassmann *G, long int *set, int set_size, ring_theory::longinteger_object *&R, data_structures::set_of_sets &SoS, int verbose_level)
long int rank_point(int *v)
geometry::projective_space * P
geometry::grassmann * G53
geometry::decomposition * D2
void latex(std::ostream &ost, int verbose_level)
void init(blt_set_domain *D, long int *the_set, int verbose_level)
long int * the_set_in_orthogonal
void compute(int verbose_level)
data_structures::set_of_sets * Sos2
int * intersection_matrix
int highest_intersection_number
data_structures::set_of_sets * Sos3
data_structures::set_of_sets * Sos
geometry::decomposition * D3
void unrank_point(int *v, int stride, long int rk, int verbose_level)
a class to represent arbitrary precision integers
#define Lint_vec_copy(A, B, C)
#define Int_vec_print(A, B, C)
the orbiter library for the classification of combinatorial objects