  
  
                                     [1X Vole [101X
  
  
  [1X Vole organises lengthy explorations: Backtrack search in permutation groups
                                  with graphs [101X
  
  
                                     0.6.0
  
  
                                 9 January 2025
  
  
                                 Mun See Chang
  
                             Christopher Jefferson
  
                                 Wilf A. Wilson
  
  
  
  Mun See Chang
      Email:    [7Xmailto:msc2@st-andrews.ac.uk[107X
      Address:  [33X[0;14YSchool  of  Computer  Science,  University  of  St Andrews, St
                Andrews, Fife, KY16 9SX, Scotland[133X
  
  
  Christopher Jefferson
      Email:    [7Xmailto:caj21@st-andrews.ac.uk[107X
      Homepage: [7Xhttps://heather.cafe[107X
      Address:  [33X[0;14YSchool  of  Computer  Science,  University  of  St Andrews, St
                Andrews, Fife, KY16 9SX, Scotland[133X
  
  
  Wilf A. Wilson
      Email:    [7Xmailto:gap@wilf-wilson.net[107X
      Homepage: [7Xhttps://wilf.me[107X
      Address:  [33X[0;14YSchool  of  Computer  Science,  University  of  St Andrews, St
                Andrews, Fife, KY16 9SX, Scotland[133X
  
  
  
  -------------------------------------------------------
  [1XAbstract[101X
  [33X[0;0Y[12XVole[112X  is  a  [12XGAP[112X  package  that  implements algorithms in finite permutation
  groups,  such  as  canonical images, stabilisers, and subgroup intersection.
  These  are  all  implemented  as  part  of  the general 'graph backtracking'
  framework.[133X
  
  
  -------------------------------------------------------
  [1XCopyright[101X
  [33X[0;0Y© 2025 by Christopher Jefferson, Mun See Chang, and Wilf A. Wilson.[133X
  
  [33X[0;0Y[5XVole[105X is licensed under the Mozilla Public License, version 2.0.[133X
  
  
  -------------------------------------------------------
  [1XAcknowledgements[101X
  [33X[0;0YThe authors would like to thank the Royal Society ([7Xhttps://royalsociety.org[107X)
  (grant  codes [12XRGF\EA\181005[112X and [12XURF\R\180015[112X) for their financial support at
  the time that [5XVole[105X was created.[133X
  
  
  -------------------------------------------------------
  
  
  [1XContents (Vole)[101X
  
  1 [33X[0;0YIntroduction to [5XVole[105X[133X
    1.1 [33X[0;0YHigh level overview of [5XVole[105X and this manual[133X
    1.2 [33X[0;0Y[5XVole[105X's relation to [5XGAP[105X and its other packages[133X
    1.3 [33X[0;0YWork in progress[133X
    1.4 [33X[0;0YPerformance[133X
  2 [33X[0;0YSetting up Vole[133X
    2.1 [33X[0;0YDependencies[133X
    2.2 [33X[0;0YInstalling [5XVole[105X[133X
    2.3 [33X[0;0YLoading [5XVole[105X[133X
    2.4 [33X[0;0YRunning [5XVole[105X's test suite[133X
    2.5 [33X[0;0YCompiling the documentation for [5XVole[105X[133X
  3 [33X[0;0YTutorial[133X
    3.1 [33X[0;0YSimple interface[133X
      3.1-1 [33X[0;0YSimple computation of canonical images[133X
    3.2 [33X[0;0YThe full Vole interface[133X
      3.2-1 [33X[0;0YThe general [5XGAP[105X approach[133X
      3.2-2 [33X[0;0YThe general [5XVole[105X approach[133X
  4 [33X[0;0YEmulating traditional interfaces with [5XVole[105X[133X
    4.1 [33X[0;0YThe concept[133X
      4.1-1 [33X[0;0YA warning[133X
    4.2 [33X[0;0YThe [10XVole[110X record[133X
      4.2-1 Vole
    4.3 [33X[0;0YThe group actions built into [5XVole[105X[133X
    4.4 [33X[0;0Y[5XVole[105X functions emulating built-in [5XGAP[105X functions[133X
      4.4-1 [33X[0;0YIntersection[133X
      4.4-2 [33X[0;0YStabiliser[133X
      4.4-3 [33X[0;0YRepresentativeAction[133X
      4.4-4 [33X[0;0YNormaliser[133X
      4.4-5 [33X[0;0YCentraliser[133X
      4.4-6 [33X[0;0YIsConjugate[133X
      4.4-7 [33X[0;0YTwoClosure[133X
    4.5 [33X[0;0Y[5XVole[105X functions emulating the [5Ximages[105X package[133X
      4.5-1 [33X[0;0YCanonicalPerm[133X
      4.5-2 [33X[0;0YCanonicalImage[133X
    4.6 [33X[0;0Y[5XVole[105X functions emulating the [5XDigraphs[105X package[133X
      4.6-1 [33X[0;0YAutomorphismGroup[133X
      4.6-2 [33X[0;0YDigraphCanonicalLabelling[133X
      4.6-3 [33X[0;0YCanonicalDigraph[133X
      4.6-4 [33X[0;0YIsIsomorphicDigraph[133X
      4.6-5 [33X[0;0YIsomorphismDigraphs[133X
  5 [33X[0;0YThe native [5XVole[105X interface[133X
    5.1 [33X[0;0YThe [10XVoleFind[110X record[133X
      5.1-1 VoleFind
    5.2 [33X[0;0YSearching for groups, cosets, and representatives with the native
    interface[133X
      5.2-1 VoleFind.Representative
      5.2-2 VoleFind.Group
      5.2-3 VoleFind.Coset
    5.3 [33X[0;0YCanonising with the native [5XVole[105X interface[133X
      5.3-1 VoleFind.Canonical
      5.3-2 VoleFind.CanonicalPerm
  6 [33X[0;0YConstraints[133X
    6.1 [33X[0;0YBounds associated with a constraint or refiner[133X
    6.2 [33X[0;0YThe concept of constraints[133X
    6.3 [33X[0;0YThe [10XConstraints[110X record[133X
      6.3-1 Constraint
    6.4 [33X[0;0YConstraints via the [10XConstraint[110X record[133X
      6.4-1 Constraint.InGroup
      6.4-2 Constraint.InCoset
      6.4-3 Constraint.InRightCoset
      6.4-4 Constraint.InLeftCoset
      6.4-5 Constraint.Transport
      6.4-6 Constraint.Stabilise
      6.4-7 Constraint.Normalise
      6.4-8 Constraint.Centralise
      6.4-9 Constraint.Conjugate
      6.4-10 Constraint.MovedPoints
      6.4-11 Constraint.LargestMovedPoint
      6.4-12 Constraint.IsEven
      6.4-13 Constraint.IsOdd
      6.4-14 Constraint.IsTrivial
      6.4-15 Constraint.None
      6.4-16 Constraint.Everything
  7 [33X[0;0YRefiners in [5XVole[105X[133X
    7.1 [33X[0;0YRefiners[133X
    7.2 [33X[0;0YThe [10XVoleRefiner[110X record[133X
      7.2-1 VoleRefiner
    7.3 [33X[0;0Y[5XVole[105X refiners via the [10XVoleRefiner[110X record[133X
      7.3-1 VoleRefiner.InSymmetricGroup
      7.3-2 VoleRefiner.SetStab
      7.3-3 VoleRefiner.TupleStab
      7.3-4 VoleRefiner.SetSetStab
      7.3-5 VoleRefiner.SetTupleStab
      7.3-6 VoleRefiner.DigraphStab
    7.4 [33X[0;0YChoosing a refiner for a given constraint[133X
      7.4-1 VoleRefiner.FromConstraint
  8 [33X[0;0YExpert use of [5XVole[105X[133X
    8.1 [33X[0;0Y[10XInfoVole[110X – getting extra information about a [5XVole[105X search[133X
      8.1-1 InfoVole
    8.2 [33X[0;0YOptions with the native [5XVole[105X interface[133X
      8.2-1 [33X[0;0YSupported options[133X
  
  
  [32X
