I have read two opposite explanations about QFT and IQFT from 2 books for beginners of Quantum Computing. Which one is correct?
The first book said, if we input an n-qubit non-superposition state into QFT, the QFT will output an n-qubit superposition state with periodical phases. On the other hand, IQFT swaps the input and output of QFT; we can apply IQFT to find the period hidden in an input state because the amplitude of the state, which matches the period(or frequency), will be amplified.
e.g., If we input |010〉into QFT, QFT will output a uniformly distributed superposition whose phases shifted two rotations(periods), the 1st rotation is from |000〉 to |011〉, and the 2nd one is from |100〉to |111〉. And if we input the output into IQFT, it will output |010〉.
The second book told me an opposite fact, that QFT allows us to determine how many rotations the relative phase makes per register, and we can use the IQFT to prepare periodically varying register superpositions easily.
QFT allows us to determine that the frequency of repetition it contained was 2 (i.e., the relative phase makes two rotations per register)
We can use the invQFT to easily prepare periodically varying register superpositions