5.1.3. pruner_base.hpp¶
Full path: graph_canon/aut/pruner_base.hpp
-
template<typename
Iter
>
classaut_range
¶ An adaptor for pairs of iterators to be exposed as a range.
-
template<typename
Derived
>
classaut_pruner_base
¶ A base class for implementing visitors for automorphism pruning.
- Template Parameters
Derived – The subclass of this class (that is, the CRTP pattern).
For
a
canon_state
objectstate
,a
tree_node
objectt
,a permutation
aut
representing an automorphism, andthe object
derived = static_cast<Derived&>(*this)
the following expressions must be valid:
- Expression:
derived.add_automorphism(state, t, aut)
Semantics: store the new automorphismaut
- Expression:
derived.need_update(state, t)
Returns: a boolean telling whether the node needs updating.Notes: is only called on non-pruned, non-leaf nodes. - Expression:
derived.update(state, t)
Returns: a possibly empty range of automorphism generators (e.g., anaut_range
) added to the stabilizer oft
after updating it.