Class MatrixSolver
java.lang.Object
de.tilman_neumann.jml.factor.base.matrixSolver.MatrixSolver
- Direct Known Subclasses:
MatrixSolverBase01,MatrixSolverBase02
public abstract class MatrixSolver
extends java.lang.Object
Base implementation for a congruence equation system (the "LinAlg phase matrix") solver.
This is mostly an interface, the true work is happening elsewhere.
-
Constructor Summary
Constructors Constructor Description MatrixSolver() -
Method Summary
Modifier and Type Method Description voidcleanUp()Release memory after a factorization.abstract java.lang.StringgetName()intgetTestedNullVectorCount()voidinitialize(java.math.BigInteger N, FactorTest factorTest)Initialize for a new N.voidprocessNullVector(java.util.Set<AQPair> aqPairs)abstract voidsolve(java.util.Collection<? extends Smooth> congruences)Main method to solve a congruence equation system.Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Constructor Details
-
MatrixSolver
public MatrixSolver()
-
-
Method Details
-
getName
public abstract java.lang.String getName() -
initialize
Initialize for a new N.- Parameters:
N-factorTest-
-
solve
public abstract void solve(java.util.Collection<? extends Smooth> congruences) throws FactorExceptionMain method to solve a congruence equation system.- Parameters:
congruences- the congruences forming the equation system- Throws:
FactorException- if a factor of N was found
-
processNullVector
- Throws:
FactorException
-
getTestedNullVectorCount
public int getTestedNullVectorCount()- Returns:
- the number of solver runs needed (so far). Is not populated (i.e. 0) if ANALYZE_SOLVER_RUNS==false.
-
cleanUp
public void cleanUp()Release memory after a factorization.
-