Perfect trees and bit-reversal permutations

20Citations
Citations of this article
16Readers
Mendeley users who have this article in their library.

Abstract

One well known algorithm is the Fast Fourier Transform (FFT). An efficient iterative version of the FFT algorithm performs as a first step a bit-reversal permutation of the input list. The bit-reversal permutation swaps elements whose indices have binary representations that are the reverse of each other. Using an amortized approach, this operation can be made to run in linear time on a random-access machine. An intriguing question is whether a linear-time implementation is also feasible on a pointer machine, that is, in a purely functional setting. We show that the answer to this question is in the affirmative. In deriving a solution, we employ several advanced programming language concepts such as nested datatypes, associated fold and unfold operators, rank-2 types and polymorphic recursion.

Cite

CITATION STYLE

APA

Hinze, R. (2000). Perfect trees and bit-reversal permutations. Journal of Functional Programming, 10(3), 305–317. https://doi.org/10.1017/S0956796800003701

Register to see more suggestions

Mendeley helps you to discover research relevant for your work.

Already have an account?

Save time finding and organizing research with Mendeley

Sign up for free