33 #ifndef REDUNDANT_BASE_POINT_INSERTION_STRATEGY_H_ 34 #define REDUNDANT_BASE_POINT_INSERTION_STRATEGY_H_ 38 template <
class PERM,
class TRANS>
42 template <
class PERM,
class TRANS>
60 virtual int findInsertionPoint(dom_int beta, std::list<typename PERM::ptr> &S_i)
const = 0;
67 template <
class PERM,
class TRANS>
76 for (
unsigned int i=0; i<B.size(); ++i) {
81 while (pos > 0 && U[pos-1].size() == 1)
88 template <
class PERM,
class TRANS>
97 typename std::vector<dom_int>::const_iterator bIt = B.begin();
99 for (
unsigned int i=0; i<B.size(); ++i) {
109 std::copy_if(S.begin(), S.end(), std::back_inserter(S_i), stab_i);
112 if (stab_beta(beta)) {
123 #endif // -- REDUNDANT_BASE_POINT_INSERTION_STRATEGY_H_ predicate matching points that are stabilized by given permutations
Definition: stabilizes_point_predicate.h:42
insertion position after first non-trivial transversal
Definition: redundant_base_point_insertion_strategy.h:68
TrivialRedundantBasePointInsertionStrategy(const BSGS< PERM, TRANS > &bsgs)
constructor
Definition: redundant_base_point_insertion_strategy.h:71
virtual int findInsertionPoint(dom_int beta, std::list< typename PERM::ptr > &S_i) const
finds possible insertion point for base point
Definition: redundant_base_point_insertion_strategy.h:94
predicate matching a permutation if it stabilizes a given list of points pointwise ...
Definition: pointwise_stabilizer_predicate.h:42
insertion position at first position i such that stabilizes beta
Definition: redundant_base_point_insertion_strategy.h:89
const BSGS< PERM, TRANS > & m_bsgs
BSGS to work on.
Definition: redundant_base_point_insertion_strategy.h:63
strategy for redundant base point insertion
Definition: redundant_base_point_insertion_strategy.h:43
FirstRedundantBasePointInsertionStrategy(const BSGS< PERM, TRANS > &bsgs)
constructor
Definition: redundant_base_point_insertion_strategy.h:92
RedundantBasePointInsertionStrategy(const BSGS< PERM, TRANS > &bsgs)
constructor
Definition: redundant_base_point_insertion_strategy.h:49
Represents a base and strong generating set (BSGS)
Definition: bsgs.h:58
virtual int findInsertionPoint(dom_int beta, std::list< typename PERM::ptr > &S_i) const
finds possible insertion point for base point
Definition: redundant_base_point_insertion_strategy.h:73
virtual int findInsertionPoint(dom_int beta, std::list< typename PERM::ptr > &S_i) const =0
finds possible insertion point for base point
Definition: abstract_bsgs.h:49