Class LongNTTConvolutionStepStrategy

java.lang.Object
org.apfloat.internal.LongElementaryModMath
org.apfloat.internal.LongModMath
org.apfloat.internal.LongNTTConvolutionStepStrategy
All Implemented Interfaces:
Parallelizable, NTTConvolutionStepStrategy

public class LongNTTConvolutionStepStrategy extends LongModMath implements NTTConvolutionStepStrategy, Parallelizable
Steps of a three-NTT convolution for the long type. This class implements the details of the element-by-element multiplication and element-by-element squaring of the transformed elements.

The in-place multiplication and squaring of the data elements is done using a parallel algorithm, if the data fits in memory.

All access to this class must be externally synchronized.

Since:
1.7.0
Version:
1.9.0
Author:
Mikko Tommila