I have been reading through an algorithms book on the use of FFT for large number multiplication. An example it used to emphasize a point was:
Evaluate the following polynomial at all roots of unity of order 32 and see how many distinct values are obtained:
$x^{16} + 8x^8 + 1$
My guess would be that there are 16 distinct values (since, from what I can remember, a polynomial of degree n will have n distinct complex roots)? But I'm unsure how to actually evaluate these values. I am used to seeing things in terms of a single complex number in polar or exponential form, e.g., $e^{i\theta}$ then evaluating it at $e^{(i\theta \pi k)/n}$ for $k \in \{0..n-1\}$.
How do I evaluate the polynomial? What might be the significance of the result?
No there are only 4 values. The 32th roots of unity are $e^{\frac{2\pi i k}{32}}, k=0\dots 31$ and the values of the polynom $f(x) = x^{16} + 8x^8 + 1\,$at those roots are $$f(e^{\frac{\pi i k}{16}}) = (e^{\frac{\pi i k}{16}})^{16}+8(e^{\frac{\pi i k}{16}})^{8}+1 =e^{\pi i k}+8e^{\frac{\pi i k}{2}}+1 = (-1)^k+8i^k+1 $$ And these values are $10, 8i, -6, -8i, 10, 8i, -6, -8i, \dots\;$