public abstract class Solver
extends java.lang.Object
| Constructor and Description |
|---|
Solver() |
public java.util.Set<CNFFormula> getFormulas()
public java.util.Map<CNFFormula,CNFFormula> getInternalRepresentationOfFormulas()
public void addFormula(CNFFormula formula)
public void removeFormula(CNFFormula formula)
public boolean isSatisfiable(CNFFormula formula) throws java.lang.InterruptedException
java.lang.InterruptedExceptionpublic boolean isSatisfiable(CNFFormula formula, CNFFormula formulaToChooseAtLeastOneLiteralFrom) throws java.lang.InterruptedException
formula - formulaToChooseAtLeastOneLiteralFrom - java.lang.InterruptedExceptionpublic boolean isSatisfiable()
throws java.lang.InterruptedException
java.lang.InterruptedExceptionprotected CNFFormula performResolutionUntilEmptyClauseIsFound(CNFFormula formula, CNFFormula formulaToChooseAtLeastOneLiteralFrom) throws java.lang.InterruptedException
java.lang.InterruptedExceptionpublic ResolutionTree getTree()
protected ResolutionPair getNextPair(java.util.Set<ResolutionPair> candidates)
protected java.util.List<ResolutionPair> getPossibleResolutionPairs(CNFFormula formula)
protected abstract java.util.List<ResolutionPair> getAdmissiblePairs(java.util.List<ResolutionPair> pairs)
protected java.util.List<ResolutionPair> getPossibleResolutionPairs(CNFFormula formula, Clause c2)
protected java.util.Set<Clause> getClausesWithSamePredicates(CNFFormula formula, Clause c2)
protected boolean isClauseAlreadyContainedInFormula(CNFFormula formula, Clause c) throws java.lang.InterruptedException
java.lang.InterruptedExceptionprotected java.util.List<ResolutionPair> getPossibleResolutionsPairsOfClauses(Clause c1, Clause c2)
c1 - Note that c1 MUST be the smaller clause by conventionc2 - protected ResolutionStep performResolutionStepForPair(ResolutionPair pair)
protected java.util.Map<VariableParam,LiteralParam> getUnificatorForLiterals(Literal l1, Literal l2)
l1 - l2 -