abstract base class for subgroup (and coset) predicates More...
#include <subgroup_predicate.h>
Public Member Functions | |
virtual | ~SubgroupPredicate () |
virtual destructor | |
virtual bool | operator() (const PERM &) const =0 |
true iff group element fulfills predicate | |
virtual bool | childRestriction (const PERM &h, uint i, ulong beta_i) const =0 |
checks if a given group element should not be followed in backtrack search | |
virtual uint | limit () const =0 |
limit of recursion depth in backtrack search | |
virtual | ~SubgroupPredicate () |
virtual destructor | |
virtual bool | operator() (const PERM &) const =0 |
true iff group element fulfills predicate | |
virtual bool | childRestriction (const PERM &h, uint i, ulong beta_i) const =0 |
checks if a given group element should not be followed in backtrack search | |
virtual uint | limit () const =0 |
limit of recursion depth in backtrack search |
abstract base class for subgroup (and coset) predicates
virtual bool permlib::SubgroupPredicate< PERM >::childRestriction | ( | const PERM & | h, | |
uint | i, | |||
ulong | beta_i | |||
) | const [pure virtual] |
checks if a given group element should not be followed in backtrack search
If returns false then element h that arises at backtrack level i with corresponding base element beta_i will not extend to a "complete" group element that fulfills the predicate
h | (partial) group element, arising in the backtrack search | |
i | backtrack recursion level | |
beta_i | base element corresponding to current backtrack recursion level |
Implemented in permlib::GroupIntersectionPredicate< PERM, TRANS >, permlib::MatrixAutomorphismPredicate< PERM, MATRIX >, permlib::SetImagePredicate< PERM >, permlib::SetwiseStabilizerPredicate< PERM >, permlib::GroupIntersectionPredicate< PERM, TRANS >, permlib::MatrixAutomorphismPredicate< PERM, MATRIX >, permlib::SetImagePredicate< PERM >, and permlib::SetwiseStabilizerPredicate< PERM >.
virtual bool permlib::SubgroupPredicate< PERM >::childRestriction | ( | const PERM & | h, | |
uint | i, | |||
ulong | beta_i | |||
) | const [pure virtual] |
checks if a given group element should not be followed in backtrack search
If returns false then element h that arises at backtrack level i with corresponding base element beta_i will not extend to a "complete" group element that fulfills the predicate
h | (partial) group element, arising in the backtrack search | |
i | backtrack recursion level | |
beta_i | base element corresponding to current backtrack recursion level |
Implemented in permlib::GroupIntersectionPredicate< PERM, TRANS >, permlib::MatrixAutomorphismPredicate< PERM, MATRIX >, permlib::SetImagePredicate< PERM >, permlib::SetwiseStabilizerPredicate< PERM >, permlib::GroupIntersectionPredicate< PERM, TRANS >, permlib::MatrixAutomorphismPredicate< PERM, MATRIX >, permlib::SetImagePredicate< PERM >, and permlib::SetwiseStabilizerPredicate< PERM >.
virtual uint permlib::SubgroupPredicate< PERM >::limit | ( | ) | const [pure virtual] |
limit of recursion depth in backtrack search
only images of the #{limit()} first base points have to be considered
Implemented in permlib::GroupIntersectionPredicate< PERM, TRANS >, permlib::MatrixAutomorphismPredicate< PERM, MATRIX >, permlib::SetImagePredicate< PERM >, permlib::SetwiseStabilizerPredicate< PERM >, permlib::GroupIntersectionPredicate< PERM, TRANS >, permlib::MatrixAutomorphismPredicate< PERM, MATRIX >, permlib::SetImagePredicate< PERM >, and permlib::SetwiseStabilizerPredicate< PERM >.
virtual uint permlib::SubgroupPredicate< PERM >::limit | ( | ) | const [pure virtual] |
limit of recursion depth in backtrack search
only images of the #{limit()} first base points have to be considered
Implemented in permlib::GroupIntersectionPredicate< PERM, TRANS >, permlib::MatrixAutomorphismPredicate< PERM, MATRIX >, permlib::SetImagePredicate< PERM >, permlib::SetwiseStabilizerPredicate< PERM >, permlib::GroupIntersectionPredicate< PERM, TRANS >, permlib::MatrixAutomorphismPredicate< PERM, MATRIX >, permlib::SetImagePredicate< PERM >, and permlib::SetwiseStabilizerPredicate< PERM >.