33#ifndef CLASSIC_INTERSECTION_SEARCH_H_
34#define CLASSIC_INTERSECTION_SEARCH_H_
36#include <permlib/search/classic/backtrack_search.h>
37#include <permlib/predicate/group_intersection_predicate.h>
43template<
class BSGSIN,
class TRANSRET>
46 typedef typename BacktrackSearch<BSGSIN,TRANSRET>::PERM PERM;
47 typedef typename BacktrackSearch<BSGSIN,TRANSRET>::TRANS TRANS;
63template<
class BSGSIN,
class TRANSRET>
68template<
class BSGSIN,
class TRANSRET>
BSGSIN * m_bsgs2
second BSGS of a group the sough elements have to member of
Definition base_search.h:93
BSGSIN m_bsgs
main BSGS to search in
Definition base_search.h:91
predicate for the subgroup that arises as the intersection of two given groups
Definition group_intersection_predicate.h:45
BacktrackSearch(const BSGSIN &bsgs, unsigned int pruningLevelDCM, bool breakAfterChildRestriction=false, bool stopAfterFirstElement=false)
constructor
Definition backtrack_search.h:90
void construct(SubgroupPredicate< PERM > *pred, bool addPredRefinement)
initializes the search
Definition backtrack_search.h:188
void construct(BSGSIN *bsgs2)
initializes search
Definition intersection_search.h:69
IntersectionSearch(const BSGSIN &bsgs, unsigned int pruningLevelDCM)
constructor
Definition intersection_search.h:64