permlib 0.2.9
Library for permutation computations
Loading...
Searching...
No Matches
permlib::partition::RefinementFamily< PERM > Class Template Referenceabstract

represents a class of $\mathcal P$-refinements for a given problem More...

#include <refinement_family.h>

Inheritance diagram for permlib::partition::RefinementFamily< PERM >:
permlib::partition::GroupRefinementFamily< PERM, TRANS > permlib::partition::MatrixAutomorphismRefinementFamily< PERM, MATRIX > permlib::partition::SetImageRefinementFamily< PERM > permlib::partition::SetStabilizeRefinementFamily< PERM >

Public Types

typedef Refinement< PERM >::RefinementPtr RefinementPtr
typedef boost::shared_ptr< PartitionPartitionPtr

Public Member Functions

virtual ~RefinementFamily ()
 virtual destructor
virtual std::pair< PartitionPtr, RefinementPtr > apply (Partition &pi) const =0
 tries to initialize a suitable Refinement<PERM> for given partition

Detailed Description

template<class PERM>
class permlib::partition::RefinementFamily< PERM >

represents a class of $\mathcal P$-refinements for a given problem

In contrast to Refinement<PERM> , this refinement is not bound a certain partition.

Member Function Documentation

◆ apply()

template<class PERM>
virtual std::pair< PartitionPtr, RefinementPtr > permlib::partition::RefinementFamily< PERM >::apply ( Partition & pi) const
pure virtual

tries to initialize a suitable Refinement<PERM> for given partition

Parameters
pipartition to initialize the refinement to
Returns
pair of the result of refinement application and refinement if a strict refinement could be found; NULL-pointers otherwise

Implemented in permlib::partition::GroupRefinementFamily< PERM, TRANS >, permlib::partition::MatrixAutomorphismRefinementFamily< PERM, MATRIX >, permlib::partition::SetImageRefinementFamily< PERM >, and permlib::partition::SetStabilizeRefinementFamily< PERM >.


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