  Backtrack search is a fundamental technique for computing with finite
permutation groups, which has been formulated in terms of points, ordered
partitions, and graphs. We provide a framework for discussing the most common
forms of backtrack search in a generic way. We introduce the concept of perfect
refiners to better understand and compare the pruning power available in these
different settings. We also present a new formulation of backtrack search,
which allows the use of graphs with additional vertices, and which is
implemented in the software package Vole. For each setting, we classify the
groups and cosets for which there exist perfect refiners. Moreover, we describe
perfect refiners for many naturally-occurring examples of stabilisers and
transporter sets, including applications to normaliser and subgroup conjugacy
problems for 2-closed groups.
