Class SIQSPolyGenerator


  • public class SIQSPolyGenerator
    extends Object
    A generator for SIQS polynomials.
    Author:
    Tilman Neumann
    • Constructor Detail

      • SIQSPolyGenerator

        public SIQSPolyGenerator()
    • Method Detail

      • getName

        public String getName()
        Returns:
        the name of this polynomial generator
      • initializeForN

        public void initializeForN​(int k,
                                   BigInteger N,
                                   BigInteger kN,
                                   int d,
                                   SieveParams sieveParams,
                                   BaseArrays baseArrays,
                                   AParamGenerator aParamGenerator,
                                   Sieve sieveEngine,
                                   TDiv_QS tDivEngine)
        Initialize the polynomial generator for a new N. Inside this method we require aParamGenerator.qCount -> aParamGenerator must have been initialized before.
        Parameters:
        k - multiplier
        N -
        kN -
        d - the d-parameter of quadratic polynomials Q(x) = (d*a*x + b)^2 - kN
        sieveParams - basic sieve parameters for a new N
        baseArrays - primes, power arrays after adding powers
        aParamGenerator - generator for a-parameters
        sieveEngine -
        tDivEngine -
      • nextPolynomial

        public void nextPolynomial()
        Compute a new polynomial.
      • getReport

        public PolyReport getReport()
        Returns:
        description of the durations of the individual sub-phases
      • cleanUp

        public void cleanUp()
        Release memory after a factorization.