public final class Sat4jUtils
extends java.lang.Object
Sat4jUtils
contains a number of utilities to deal with SAT4J.Modifier and Type | Method and Description |
---|---|
static org.sat4j.specs.IVecInt |
createClause(int newIndex,
int size) |
static java.util.Map<ru.ispras.fortress.data.Variable,ru.ispras.fortress.data.types.bitvector.BitVector> |
decodeSolution(org.sat4j.specs.IProblem problem,
java.util.Map<ru.ispras.fortress.data.Variable,java.lang.Integer> indices) |
static org.sat4j.specs.IVec<org.sat4j.specs.IVecInt> |
encodeVarEqualConst(int linkToIndex,
ru.ispras.fortress.expression.Node lhs,
int lhsIndex,
java.math.BigInteger rhs) |
static org.sat4j.specs.IVec<org.sat4j.specs.IVecInt> |
encodeVarEqualConst(ru.ispras.fortress.expression.Node lhs,
int lhsIndex,
java.math.BigInteger rhs) |
static org.sat4j.specs.IVec<org.sat4j.specs.IVecInt> |
encodeVarEqualVar(int linkToIndex,
ru.ispras.fortress.expression.Node lhs,
int lhsIndex,
ru.ispras.fortress.expression.Node rhs,
int rhsIndex,
int newIndex) |
static org.sat4j.specs.IVec<org.sat4j.specs.IVecInt> |
encodeVarEqualVar(ru.ispras.fortress.expression.Node lhs,
int lhsIndex,
ru.ispras.fortress.expression.Node rhs,
int rhsIndex) |
static org.sat4j.specs.IVec<org.sat4j.specs.IVecInt> |
encodeVarNotEqualConst(int linkToIndex,
ru.ispras.fortress.expression.Node lhs,
int lhsIndex,
java.math.BigInteger rhs) |
static org.sat4j.specs.IVec<org.sat4j.specs.IVecInt> |
encodeVarNotEqualConst(ru.ispras.fortress.expression.Node lhs,
int lhsIndex,
java.math.BigInteger rhs) |
static org.sat4j.specs.IVec<org.sat4j.specs.IVecInt> |
encodeVarNotEqualVar(int linkToIndex,
ru.ispras.fortress.expression.Node lhs,
int lhsIndex,
ru.ispras.fortress.expression.Node rhs,
int rhsIndex,
int newIndex) |
static org.sat4j.specs.IVec<org.sat4j.specs.IVecInt> |
encodeVarNotEqualVar(ru.ispras.fortress.expression.Node lhs,
int lhsIndex,
ru.ispras.fortress.expression.Node rhs,
int rhsIndex,
int newIndex) |
static org.sat4j.specs.ISolver |
getSolver() |
public static org.sat4j.specs.ISolver getSolver()
public static org.sat4j.specs.IVecInt createClause(int newIndex, int size)
public static org.sat4j.specs.IVec<org.sat4j.specs.IVecInt> encodeVarEqualConst(ru.ispras.fortress.expression.Node lhs, int lhsIndex, java.math.BigInteger rhs)
public static org.sat4j.specs.IVec<org.sat4j.specs.IVecInt> encodeVarEqualConst(int linkToIndex, ru.ispras.fortress.expression.Node lhs, int lhsIndex, java.math.BigInteger rhs)
public static org.sat4j.specs.IVec<org.sat4j.specs.IVecInt> encodeVarNotEqualConst(ru.ispras.fortress.expression.Node lhs, int lhsIndex, java.math.BigInteger rhs)
public static org.sat4j.specs.IVec<org.sat4j.specs.IVecInt> encodeVarNotEqualConst(int linkToIndex, ru.ispras.fortress.expression.Node lhs, int lhsIndex, java.math.BigInteger rhs)
public static org.sat4j.specs.IVec<org.sat4j.specs.IVecInt> encodeVarEqualVar(ru.ispras.fortress.expression.Node lhs, int lhsIndex, ru.ispras.fortress.expression.Node rhs, int rhsIndex)
public static org.sat4j.specs.IVec<org.sat4j.specs.IVecInt> encodeVarEqualVar(int linkToIndex, ru.ispras.fortress.expression.Node lhs, int lhsIndex, ru.ispras.fortress.expression.Node rhs, int rhsIndex, int newIndex)
public static org.sat4j.specs.IVec<org.sat4j.specs.IVecInt> encodeVarNotEqualVar(ru.ispras.fortress.expression.Node lhs, int lhsIndex, ru.ispras.fortress.expression.Node rhs, int rhsIndex, int newIndex)
public static org.sat4j.specs.IVec<org.sat4j.specs.IVecInt> encodeVarNotEqualVar(int linkToIndex, ru.ispras.fortress.expression.Node lhs, int lhsIndex, ru.ispras.fortress.expression.Node rhs, int rhsIndex, int newIndex)
public static java.util.Map<ru.ispras.fortress.data.Variable,ru.ispras.fortress.data.types.bitvector.BitVector> decodeSolution(org.sat4j.specs.IProblem problem, java.util.Map<ru.ispras.fortress.data.Variable,java.lang.Integer> indices)