Beyond External Computing: Analysis of the Cycle Structure of Permutations

A parallel algorithm with super-linear speed-up for determining the structure of permutations of n elements for extremely large n is presented and analyzed. The algorithm uses sublinear space. If evaluating a randomly chosen successor oracle π costs c time, then a complete analysis can be performed in expected time c ċ (ln n - ln (P ċ N)) ċ n/P, where P is the number of available processors, and N gives the size of the secondary memory of each of the processors. A simple refinement reduces this time by a factor 1 - 1/e. The theoretical analyses are compared with experiments. At the current state of the technology values of n up to about 248 might be handled. We also describe how to perform a screening of π in much less time. If π√n/(In n.P) can be constructed, then such a screening can be performed in O(c ċ √In n ċ n/P) time.