8#ifndef SRC_LIB_GROUP_ACTIONS_SET_STABILIZER_SET_STABILIZER_H_
9#define SRC_LIB_GROUP_ACTIONS_SET_STABILIZER_SET_STABILIZER_H_
13namespace layer4_classification {
67 ring_theory::longinteger_object
ago;
68 ring_theory::longinteger_object
ago1;
90 long int *canonical_pts,
99 int *transporter,
int verbose_level);
101 int *transporter, groups::sims *&stab,
int verbose_level);
106 void report(std::ostream &ost);
152 ring_theory::longinteger_object
go_G;
196 long int subset_idx,
int *transporter,
int verbose_level);
237 groups::strong_generators *gens,
241 actions::action *
A, actions::action *
A2,
242 groups::strong_generators *Strong_gens,
243 int intermediate_subset_size,
244 std::string &fname_mask,
int nb, std::string &column_label,
245 std::string &fname_out,
248 std::string &fname_out,
249 int cnt,
int nb,
int row,
252 long int *canonical_pts,
256 long int *canonical_pts,
257 int *transporter_to_canonical_form,
258 groups::strong_generators *&Gens_stabilizer_original_set,
295 data_structures::tally *
T;
298 data_structures::set_of_sets *
SoS;
311 groups::strong_generators *
gens;
to compute the set-stabilizer
void print_canonical_sets()
int nb_interesting_subsets_rr
actions::action * A_on_the_set
void add_automorphism(int verbose_level)
void update_stabilizer(int verbose_level)
void report(std::ostream &ost)
ring_theory::longinteger_object K_go
void compute_canonical_set(long int *set_in, long int *set_out, int sz, int *transporter, int verbose_level)
ring_theory::longinteger_object induced_go
void make_canonical_second_set(int verbose_level)
ring_theory::longinteger_object stab_order
int backtrack_nodes_first_time
long int * Canonical_forms
void compute_automorphism_group_handle_case(int cnt2, int verbose_level)
void compute_canonical_form(int verbose_level)
actions::action * A_induced
ring_theory::longinteger_object ago
void init(substructure_stats_and_selection *SubSt, long int *canonical_pts, int verbose_level)
ring_theory::longinteger_object new_stab_order
void compute_canonical_set_and_group(long int *set_in, long int *set_out, int sz, int *transporter, groups::sims *&stab, int verbose_level)
int * Canonical_form_transporter
int * transporter_witness
void compute_canonical_form_handle_case(int cnt, int verbose_level)
void retrieve_automorphism(int verbose_level)
ring_theory::longinteger_object ago1
long int * Canonical_form_input
groups::sims * Kernel_original
long int * interesting_subsets_rr
ring_theory::longinteger_object target_go
stabilizer_orbits_and_types * Stab_orbits
int nb_times_orbit_count_does_not_match_up
void restricted_action_on_interesting_points(int verbose_level)
groups::sims * Aut_original
int backtrack_nodes_total_in_loop
void compute_automorphism_group(int verbose_level)
substructure_stats_and_selection * SubSt
void setup_stabilizer(groups::sims *Stab0, int verbose_level)
to control the behavior of the poset classification algorithm
the poset classification algorithm
a poset with a group action on it
orbits of the stabilizer of the substructure and orbit types
void find_orbit_pattern(int cnt, int *transp, int verbose_level)
long int * reduced_set2_new_labels
int * interesting_orbit_len
void find_interesting_orbits(int verbose_level)
void compute_local_labels(long int *set_in, long int *set_out, int sz, int verbose_level)
void init(compute_stabilizer *CS, int verbose_level)
int nb_interesting_points
long int * reduced_set1_new_labels
int * orbit_to_interesting_orbit
int nb_interesting_orbits
long int * interesting_points
int nb_interesting_subsets_reduced
void map_reduced_set_and_do_orbit_counting(int cnt, long int subset_idx, int *transporter, int verbose_level)
~stabilizer_orbits_and_types()
void print_minimal_orbit_pattern()
int * interesting_orbit_first
groups::schreier * Schreier
groups::sims * selected_set_stab
int minimal_orbit_pattern_idx
void compute_stabilizer_orbits_and_find_minimal_pattern(int verbose_level)
void save_interesting_subsets_reduced(int stage, int verbose_level)
void print_orbit_count(int f_both)
groups::strong_generators * selected_set_stab_gens
stabilizer_orbits_and_types()
long int * canonical_set1
long int * canonical_set2
ring_theory::longinteger_object go_G
long int * interesting_subsets_reduced
void map_subset_and_compute_local_labels(int cnt, int verbose_level)
classification of substructures
void set_stabilizer_in_any_space(actions::action *A, actions::action *A2, groups::strong_generators *Strong_gens, int intermediate_subset_size, std::string &fname_mask, int nb, std::string &column_label, std::string &fname_out, int verbose_level)
void set_stabilizer_of_set(std::string &fname_out, int cnt, int nb, int row, long int *pts, int nb_pts, long int *canonical_pts, int verbose_level)
~substructure_classifier()
void classify_substructures(std::string &fname_base_out, actions::action *A, actions::action *A2, groups::strong_generators *gens, int substructure_size, int verbose_level)
poset_classification::poset_classification * PC
poset_classification::poset_classification_control * Control
substructure_classifier()
poset_classification::poset_with_group_action * Poset
void handle_orbit(substructure_stats_and_selection *SubSt, long int *canonical_pts, int *transporter_to_canonical_form, groups::strong_generators *&Gens_stabilizer_original_set, int verbose_level)
std::string fname_base_out
analyzing the substructures of a given set
std::string fname_case_out
void init(std::string &fname_case_out, substructure_classifier *SubC, long int *Pts, int nb_pts, int verbose_level)
substructure_stats_and_selection()
long int * interesting_subsets
substructure_classifier * SubC
groups::strong_generators * gens
~substructure_stats_and_selection()
data_structures::set_of_sets * SoS
int nb_interesting_subsets
data_structures::tally * T
the orbiter library for the classification of combinatorial objects