## Main libraries

- lib/github.com/diku-dk/fft/fft
Module types for Fast Fourier Transforms (FFTs), as well as transformations for automatically performing higher-dimensional FFTs. For specific FFT implementations, see e.g.

`stockham-radix-2`

.- lib/github.com/diku-dk/fft/stockham-radix-2
A simple FFT module based on work by David P.H. Jørgensen and Kasper Abildtrup Hansen. Uses a Stockham radix-2 algorithm.

## Supporting libraries

- futlib/array
Utility functions for arrays.

- futlib/functional
Simple functional combinators.

- futlib/math
Basic mathematical modules and functions.

- futlib/prelude
The default prelude that is implicitly available in all Futhark files.

- futlib/soacs
Various Second-Order Array Combinators that are operationally parallel in a way that can be exploited by the compiler.

- futlib/zip
Transforming arrays of tuples into tuples of arrays and back again. These are generally very cheap operations, as the internal compiler representation is always tuples of arrays.

- lib/github.com/diku-dk/complex/complex
Complex numbers parameterised over the representation of their real parts.