I am using the FFT to evaluate a polynomial at certain points so that it can be represented using value representation. (representation as a number of points equal to its degree)
However to multiply two polynomials of degree d, I need to evaluate both at 2d + 1 points. However using the FFT for evaluation (multiplying by the dth roots of unity) only evaluates the polynomial at d points. Therefore how can the FFT be used for evaluation for polynomial evaluation if it only evaluates a polynomial at d points? (as opposed to 2d + 1)
You get to choose which n-th roots of -1 you evaluate at. If you need 2d-1 points (as I suspect you do) just use the (2d-1)-th roots of -1. In fact, you would normally use the 2^k-th roots of -1, where 2^k is the first power of 2 >= 2d-1, because it is much easier to get fast FFT for powers of 2. The complexity is still O(d log d) because the definition of O allows for constant factors.