Interface Sieve

    • Method Detail

      • getName

        String getName()
        Returns:
        the name of this sieve algorithm
      • initializeForN

        void initializeForN​(SieveParams sieveParams,
                            int mergedBaseSize)
        Initialize for a new N. In PSIQS, this method is called for each thread, so things that can be computed before should be computed before.
        Parameters:
        sieveParams - basic sieve parameters for a new N
        mergedBaseSize - size of prime/power base after merging, before filtering
      • initializeForAParameter

        void initializeForAParameter​(SolutionArrays primeSolutions,
                                     int filteredBaseSize)
        Set (filtered) prime base and smallest x1, x2 solutions for a new a-parameter.
        Parameters:
        primeSolutions -
        filteredBaseSize - number of primes and powers use for sieving
      • sieve

        List<Integer> sieve()
        Sieve for a new set of x1, x2 solutions.
        Returns:
        list of sieve locations x where Q(x) is smooth enough to be passed to trial division
      • getReport

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

        void cleanUp()
        Release memory after a factorization.