FXT

FXT is a C++ library containing code for various fast orthogonal transforms (Fourier-, Hartley-, Walsh-, Haar-, Wavelet-transform) and convolution. It contains a large collection of low (bit) level routines and combinatorial algorithms (permutations, combinations, necklaces, de Bruijn sequences). Number theoretic transforms and modular arithmetics are implemented. Operations on binary polynomials and arithmetics in finite fields GF(2^n) are included. The package contains more than 150 short programs that demonstrate how to use its functionality. (Source: http://freecode.com/)