permlib 0.2.9
Library for permutation computations
Loading...
Searching...
No Matches
permlib::SetImagePredicate< PERM > Class Template Reference

coset-type predicate for group elements that map one set of points onto another given set of points More...

#include <set_image_predicate.h>

Inheritance diagram for permlib::SetImagePredicate< PERM >:
permlib::SubgroupPredicate< PERM >

Public Member Functions

template<class InputIterator>
 SetImagePredicate (InputIterator deltaBegin, InputIterator deltaEnd, InputIterator gammaBegin, InputIterator gammaEnd)
 constructor
virtual bool operator() (const PERM &p) const
 true iff group element fulfills predicate
virtual bool childRestriction (const PERM &h, unsigned int i, unsigned long beta_i) const
 checks if a given group element should not be followed in backtrack search
virtual unsigned int limit () const
 limit of recursion depth in backtrack search
Public Member Functions inherited from permlib::SubgroupPredicate< PERM >
virtual ~SubgroupPredicate ()
 virtual destructor

Detailed Description

template<class PERM>
class permlib::SetImagePredicate< PERM >

coset-type predicate for group elements that map one set of points onto another given set of points

holds for a $g$ such that $\Delta^g = \Gamma$ for two given sets $\Delta,\Gamma$

Constructor & Destructor Documentation

◆ SetImagePredicate()

template<class PERM>
template<class InputIterator>
permlib::SetImagePredicate< PERM >::SetImagePredicate ( InputIterator deltaBegin,
InputIterator deltaEnd,
InputIterator gammaBegin,
InputIterator gammaEnd )

constructor

Parameters
deltaBeginbegin iterator for source list of points (unsigned long) mapped to be onto target
deltaEndend iterator for source list of points (unsigned long) mapped to be onto target
gammaBeginbegin iterator for target list of points (unsigned long)
gammaEndend iterator for target list of points (unsigned long)

Member Function Documentation

◆ childRestriction()

template<class PERM>
bool permlib::SetImagePredicate< PERM >::childRestriction ( const PERM & h,
unsigned int i,
unsigned long beta_i ) const
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

Parameters
h(partial) group element, arising in the backtrack search
ibacktrack recursion level
beta_ibase element corresponding to current backtrack recursion level

Implements permlib::SubgroupPredicate< PERM >.

◆ limit()

template<class PERM>
unsigned int permlib::SetImagePredicate< PERM >::limit ( ) const
virtual

limit of recursion depth in backtrack search

only images of the #{limit()} first base points have to be considered

Implements permlib::SubgroupPredicate< PERM >.

◆ operator()()

template<class PERM>
bool permlib::SetImagePredicate< PERM >::operator() ( const PERM & ) const
virtual

true iff group element fulfills predicate

Implements permlib::SubgroupPredicate< PERM >.


The documentation for this class was generated from the following file: