Hello, I've been quiet because real life needed my attention. Obviously, the Schoenhage-Strassen and Barrett algorithms are not going to make it into JDK8. I hope that is not a problem for anyone. We shouldn't use the word "problem" anyway but rather think of it as an opportunity :-) for more refinement and testing.
Improvements I have planned are: * Compact storage of DFT vectors. At the moment, they are stored as numbers modulo 2^2^(n+1) when (2^2^n)+1 would suffice. This will save memory and may speed up the DFT and IDFT steps. * Use Bailey's algorithm recursively if it improves cache locality and doesn't add too much complexity to the code. * Maybe add a multiplyParallel() method, now that dft() and idft() use Bailey's algorithm which should make them easy to parallelize. * See if dft() and idft() can be made faster on 64-bit CPUs by using long[][] arrays instead of int[][]. As always, comments are welcome. Merry Chris... I mean, Holidays and a happy new year to everyone! Tim