Class SingleBlockSieveU
java.lang.Object
de.tilman_neumann.jml.factor.siqs.sieve.SingleBlockSieveU
- All Implemented Interfaces:
Sieve
public class SingleBlockSieveU extends java.lang.Object implements Sieve
Single block sieve implementation, essentially following [Wambach, Wettig 1995].
-
Constructor Summary
Constructors Constructor Description SingleBlockSieveU(int blockSize)Full constructor. -
Method Summary
Modifier and Type Method Description voidcleanUp()Release memory after a factorization.java.lang.StringgetName()SieveReportgetReport()voidinitializeForAParameter(int d, java.math.BigInteger daParam, SolutionArrays solutionArrays, int filteredBaseSize, int[] qArray)Set (filtered) prime base and smallest x1, x2 solutions for a new a-parameter.voidinitializeForN(SieveParams sieveParams, BaseArrays baseArrays, int mergedBaseSize)Initialize for a new N.voidsetBParameter(java.math.BigInteger b)Pass the b-parameter to the sieve.java.lang.Iterable<SmoothCandidate>sieve()Sieve for a new set of x1, x2 solutions.Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Constructor Details
-
SingleBlockSieveU
public SingleBlockSieveU(int blockSize)Full constructor.- Parameters:
blockSize- size of a sieve segment
-
-
Method Details
-
getName
public java.lang.String getName() -
initializeForN
Description copied from interface:SieveInitialize for a new N. In PSIQS, this method is called for each thread, so things that can be computed before should be computed before.- Specified by:
initializeForNin interfaceSieve- Parameters:
sieveParams- basic sieve parameters for a new NbaseArrays- the prime base, modular sqrt's, logP-values etc. before filtering out the q-parametersmergedBaseSize- size of the prime base (after eventually merging primes and powers), before filtering q-parameters
-
initializeForAParameter
public void initializeForAParameter(int d, java.math.BigInteger daParam, SolutionArrays solutionArrays, int filteredBaseSize, int[] qArray)Description copied from interface:SieveSet (filtered) prime base and smallest x1, x2 solutions for a new a-parameter.- Specified by:
initializeForAParameterin interfaceSieve- Parameters:
d- 2 if (kN == 1) (mod 8), 1 otherwisedaParam- d*a, where 'a' is the a-parameter and d=2 if kN==1 (mod 8), d=1 elsefilteredBaseSize- number of primes and powers use for sievingqArray- the q-parameters whose product is the a-parameter
-
setBParameter
public void setBParameter(java.math.BigInteger b)Description copied from interface:SievePass the b-parameter to the sieve.- Specified by:
setBParameterin interfaceSieve
-
sieve
Description copied from interface:SieveSieve for a new set of x1, x2 solutions. -
getReport
-
cleanUp
public void cleanUp()Description copied from interface:SieveRelease memory after a factorization.
-