This package provides implementations of general Number Theoretic Transform and Fermat Number Transform which is a special case of NTT. The latter is computed with a FFT-like radix-2 DIT algorithm, although the goal of this package is not to outperform FFT but rather yield more accurate results solving inverse problems like deconvolution.
The package is available for Julia versions 1.0 and up.
To install it, run
using Pkg
Pkg.add("NumberTheoreticTransforms")
from the Julia REPL.
The complete manual of NumberTheoreticTransforms.jl
is available at
https://jakubwro.github.io/NumberTheoreticTransforms.jl/dev.
The package is developed at https://github.com/jakubwro/NumberTheoreticTransforms.jl. There you can submit bug reports, propose new calculation algorithms with pull requests, and make suggestions.
Amazing performance improvements for Fermat Number Transform implementation were suggested by Andrey Oskin in this thread.
The NumberTheoreticTransforms.jl
package is licensed under the MIT License. The
original author is Jakub Wronowski. Significant contributions were done by Andrey
Oskin.