permlib  0.2.9
Library for permutation computations
Public Member Functions | List of all members
permlib::GroupIntersectionPredicate< PERM, TRANS > Class Template Reference

predicate for the subgroup that arises as the intersection of two given groups More...

#include <group_intersection_predicate.h>

Inheritance diagram for permlib::GroupIntersectionPredicate< PERM, TRANS >:
permlib::SubgroupPredicate< PERM >

Public Member Functions

 GroupIntersectionPredicate (const BSGS< PERM, TRANS > &g, const BSGS< PERM, TRANS > &h)
 constructor More...
 
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 More...
 
virtual unsigned int limit () const
 limit of recursion depth in backtrack search More...
 
- Public Member Functions inherited from permlib::SubgroupPredicate< PERM >
virtual ~SubgroupPredicate ()
 virtual destructor
 

Detailed Description

template<class PERM, class TRANS>
class permlib::GroupIntersectionPredicate< PERM, TRANS >

predicate for the subgroup that arises as the intersection of two given groups

Constructor & Destructor Documentation

◆ GroupIntersectionPredicate()

template<class PERM , class TRANS >
permlib::GroupIntersectionPredicate< PERM, TRANS >::GroupIntersectionPredicate ( const BSGS< PERM, TRANS > &  g,
const BSGS< PERM, TRANS > &  h 
)

constructor

Parameters
gfirst subgroup of the intersection
hsecond subgroup of the intersection

Member Function Documentation

◆ childRestriction()

template<class PERM , class TRANS >
bool permlib::GroupIntersectionPredicate< PERM, TRANS >::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 , class TRANS >
unsigned int permlib::GroupIntersectionPredicate< PERM, TRANS >::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 >.


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