Merge scratch with master branch
[satune.git] / src / csolver.cc
index e72b3631de5385a23442b6f663d4f1731725198e..f1bd9b64870f4dd45ed570a2d2608d2772825f8c 100644 (file)
@@ -34,7 +34,8 @@ CSolver::CSolver() :
        boolFalse(boolTrue.negate()),
        unsat(false),
        tuner(NULL),
-       elapsedTime(0)
+       elapsedTime(0),
+       satsolverTimeout(NOTIMEOUT)
 {
        satEncoder = new SATEncoder(this);
 }
@@ -616,7 +617,6 @@ int CSolver::solve() {
        eop.doTransform();
 
        EncodingGraph eg(this);
-       eg.buildGraph();
        eg.encode();
 
        naiveEncodingDecision(this);
@@ -631,8 +631,8 @@ int CSolver::solve() {
        model_print("Elapse Encode time: %f\n", (time1 - startTime) / NANOSEC);
 
        model_print("Is problem UNSAT after encoding: %d\n", unsat);
-       int result = unsat ? IS_UNSAT : satEncoder->solve();
-       model_print("Result Computed in SAT solver:\t%s\n", result == IS_SAT ? "SAT" : " UNSAT");
+       int result = unsat ? IS_UNSAT : satEncoder->solve(satsolverTimeout);
+       model_print("Result Computed in SAT solver:\t%s\n", result == IS_SAT? "SAT" : result == IS_INDETER? "INDETERMINATE" : " UNSAT");
        time2 = getTimeNano();
        elapsedTime = time2 - startTime;
        model_print("CSOLVER solve time: %f\n", elapsedTime / NANOSEC);