Class Sat4jUtils


  • public final class Sat4jUtils
    extends java.lang.Object
    Sat4jUtils contains a number of utilities to deal with SAT4J.
    • Method Summary

      All Methods Static Methods Concrete Methods 
      Modifier and Type Method 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()  
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Method Detail

      • getSolver

        public static org.sat4j.specs.ISolver getSolver()
      • createClause

        public static org.sat4j.specs.IVecInt createClause​(int newIndex,
                                                           int size)
      • encodeVarEqualConst

        public static org.sat4j.specs.IVec<org.sat4j.specs.IVecInt> encodeVarEqualConst​(ru.ispras.fortress.expression.Node lhs,
                                                                                        int lhsIndex,
                                                                                        java.math.BigInteger rhs)
      • encodeVarEqualConst

        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)
      • encodeVarNotEqualConst

        public static org.sat4j.specs.IVec<org.sat4j.specs.IVecInt> encodeVarNotEqualConst​(ru.ispras.fortress.expression.Node lhs,
                                                                                           int lhsIndex,
                                                                                           java.math.BigInteger rhs)
      • encodeVarNotEqualConst

        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)
      • encodeVarEqualVar

        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)
      • encodeVarEqualVar

        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)
      • encodeVarNotEqualVar

        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)
      • encodeVarNotEqualVar

        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)
      • decodeSolution

        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)