Quantum Fourier Transform