Wraparound multiplicaton vs mullo
Niels Möller
nisse at lysator.liu.se
Thu Oct 15 15:48:51 CEST 2009
David Harvey <dmharvey at cims.nyu.edu> writes:
>> So if we need a root of unity of order 2^k, and n = 2^j, then
>>
>> w = 2^{j - k + 1} (j > k + 1)
>
> I think you mean
>
> w = 2^{2^{j - k + 1}}
>
> and similarly below?
You're right. It's difficult to get the number of exponentiations
right...
> Hmmm I'm not sure about this. There is an additional requirement. You
> need the roots of unity to be *principal* roots of unity, i.e. that
> they satisfy some orthogonality relation. This is necessary to ensure
> that the inverse FFT operation really is the inverse of the FFT.
Hmm, I have to think more about this. Is this a different issue than
w^{n/2} = -1 always being true when w is a primitive nth root in a
field, but not necessarily true in a general ring, and definitely not
true for the w = 2 (mod 2^{2^j} - 1).
I looked at how w^{n/2} != -1 affects the butterfly operations. I
haven't investigated the inverse FFT. But I would expect that doing
the forward transform in reverse order, inverting each butterfly
operation, ought to work fine. No matter if that operation turns out
to be mathematically equivalent to the forward transform or not.
Regards,
/Niels
More information about the gmp-devel
mailing list