Resolving conflicts after merging with altgen
authorHamed Gorjiara <hgorjiar@uci.edu>
Tue, 23 Jan 2018 21:11:18 +0000 (13:11 -0800)
committerHamed Gorjiara <hgorjiar@uci.edu>
Tue, 23 Jan 2018 21:11:18 +0000 (13:11 -0800)
src/AST/set.cc
src/Backend/satfunctableencoder.cc
src/Test/deserializersolvetest.cc
src/csolver.cc
src/csolver.h

index e019b12a3c3f333adfbbaf7b79c0485cb09d72d3..585ae6d1068a109cadf9891d555db7548972b44c 100644 (file)
@@ -59,7 +59,7 @@ uint64_t Set::getElement(uint index) {
                return low + index;
        else
                return members->get(index);
-}
+        }
 
 uint Set::getSize() {
        if (isRange) {
index ea77e990f0f33f2290ae5a8afcb7e28c60cf1670..07cfe88bd93e5672c94a729f86e88d2111edd00a 100644 (file)
@@ -97,6 +97,7 @@ Edge SATEncoder::encodeEnumTablePredicateSATEncoder(BooleanPredicate *constraint
        if (generateNegation)
                polarity = negatePolarity(polarity);
        
+        ASSERT(numDomains != 0);
        VectorEdge *clauses = allocDefVectorEdge();
 
        uint indices[numDomains];       //setup indices
index 0f35d127b3ccde3f85a981e5e874796f59da4957..2a2910fa7de1b74f06bc4b3de85b52ec7c9f3e05 100644 (file)
@@ -1,5 +1,6 @@
 #include "csolver.h"
-
+//#include <unistd.h>
+//#include <sys/types.h>
 
 int main(int argc, char **argv) {
        if (argc < 2) {
index b74df47f37c6c22cb20c2e5391b2c0d4e09533ea..5d4f56d2e1897b6311e629835e533b54f07891b6 100644 (file)
@@ -182,6 +182,10 @@ Set *CSolver::createRangeSet(VarType type, uint64_t lowrange, uint64_t highrange
        return set;
 }
 
+bool CSolver::itemExistInSet(Set *set, uint64_t item){
+        return set->exists(item);
+}
+
 VarType CSolver::getSetVarType(Set *set) {
        return set->getType();
 }
index 523ac307194534f1c7e35a302247cef2cc8032a7..e254abbc29c8026ddc274166f4b9de23c167c89d 100644 (file)
@@ -18,12 +18,17 @@ public:
        /** This function creates a set from lowrange to highrange (inclusive). */
 
        Set *createRangeSet(VarType type, uint64_t lowrange, uint64_t highrange);
+        
+        bool itemExistInSet(Set *set, uint64_t item);
 
        VarType getSetVarType(Set *set);
 
        Element *createRangeVar(VarType type, uint64_t lowrange, uint64_t highrange);
 
-       /** This function creates a mutable set. */
+       /** This function creates a mutable set.
+         * Note: You should use addItem for adding new item to Mutable sets, and
+         * at the end, you should call finalizeMutableSet!
+         */
 
        MutableSet *createMutableSet(VarType type);