  We consider the isomorphism problem for groups specified by their
multiplication tables. Until recently, the best published bound for the
worst-case was achieved by the n^(log_p n + O(1)) generator-enumeration
algorithm. In previous work with Fabian Wagner, we showed an n^((1 / 2) log_p n
+ O(log n / log log n)) time algorithm for testing isomorphism of p-groups by
building graphs with degree bounded by p + O(1) that represent composition
series for the groups and applying Luks' algorithm for testing isomorphism of
bounded degree graphs.
  In this work, we extend this improvement to the more general class of
solvable groups to obtain an n^((1 / 2) log_p n + O(log n / log log n)) time
algorithm. In the case of solvable groups, the composition factors can be large
which prevents previous methods from outperforming the generator-enumeration
algorithm. Using Hall's theory of Sylow bases, we define a new object that
generalizes the notion of a composition series with small factors but exists
even when the composition factors are large. By constructing graphs that
represent these objects and running Luks' algorithm, we obtain our algorithm
for solvable-group isomorphism. We also extend our algorithm to compute
canonical forms of solvable groups while retaining the same complexity.
